首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >lambda函数

lambda函数

作者头像
dogfei
发布于 2020-07-31 03:44:44
发布于 2020-07-31 03:44:44
1.1K0
举报
文章被收录于专栏:devops探索devops探索

介绍

lambda函数就是我们常说的匿名函数,就是不用定义函数名,lambda更像是一个表达式,限制了程序的嵌套,是一个为编写简单的函数而设计的。

实例

1、简单运算

1)、求几个数的和

1 2 3 4

>>> f = lambda x,y,z : x+y+z >>> f(1,2,3) 6

2)、对列表进行排序

1 2 3

>>> num = [1,24,46,35,1,4,7] >>> sorted(num,key=lambda x : x ) [1, 1, 4, 7, 24, 35, 46]

3)、求几个值的平方

1 2

>>> list(map(lambda x : x*x,range(1,10))) [1, 4, 9, 16, 25, 36, 49, 64, 81]

map函数的用法:

1 2

map(function,sequence) 把sequence中的值当做参数逐个传给function,这里的map(lambda x : x*x,range(1,10))就是将1到9这九个参数传递给lambda这个函数。

4)、找出一组数中的偶数

1 2

>>> list(filter(lambda x : x % 2 == 0,range(1,21))) [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

fileter()函数用法:

1 2 3 4 5 6 7 8 9 10 11

filter(function,sequence) 对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple返回。 这里的fileter(lambda x : x % 2 == 0,range(1,21)),执行过程如下: 1 % 2 != 0 False 2 % 2 = 0 True 3 $ 2 != 0 False ... ... ... 20 % 2 = 0 True 执行结果为True的会返回

5)、求1~100之和

1 2 3

>>> from functools import reduce >>> reduce(lambda x,y : x + y,range(1,101)) 5050

reduce()函数用法:

1 2 3 4 5 6 7 8

reduce(function,sequence) reduce中的函数每次只能接收两个参数,先是把sequence中第一个值和第二个值传递给function,然后再把function的结果和sequence的第三个值作为参数再传递给function,过程如下: 1 + 2 = 3 3 + 3 = 6 6 + 4 = 10 ... ... ...

2、闭包

闭包:一个定义在函数内部的函数,闭包使得变量即使脱离了该函数的作用域范围也依然能被访问到。

也就是说,我们定义了一个函数,该函数中包含了一个lambda函数,例如:

1 2 3 4 5 6

>>> def f(x): ... return lambda y : y + x ... >>> g = f(1) >>> g(9) 10

3、默认参数

1 2 3 4 5 6 7

>>> x = (lambda a='fee',b='fie',c='foe' : a + b + c) >>> x('wee') 'weefiefoe' >>> x('fei') 'feifiefoe' >>> x('hello','world','python') 'helloworldpython'

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
深度学习:梯度下降算法改进
深度学习难以在大数据领域发挥最大效果的一个原因是,在巨大的数据集基础上进行训练速度很慢。而优化算法能够帮助我们快速训练模型,提高计算效率。接下来我么就去看有哪些方法能够解决我们刚才遇到的问题或者类似的问题
Lansonli
2021/10/09
4610
DeepLearning.ai学习笔记(二)改善深层神经网络:超参数调试、正则化以及优化--Week2优化算法
1. Mini-batch梯度下降法 介绍 假设我们的数据量非常多,达到了500万以上,那么此时如果按照传统的梯度下降算法,那么训练模型所花费的时间将非常巨大,所以我们对数据做如下处理: 如图所示,我
marsggbo
2018/01/23
7690
DeepLearning.ai学习笔记(二)改善深层神经网络:超参数调试、正则化以及优化--Week2优化算法
神经网络的优化算法_梯度下降优化算法
最近回顾神经网络的知识,简单做一些整理,归档一下神经网络优化算法的知识。关于神经网络的优化,吴恩达的深度学习课程讲解得非常通俗易懂,有需要的可以去学习一下,本人只是对课程知识点做一个总结。吴恩达的深度学习课程放在了网易云课堂上,链接如下(免费): https://mooc.study.163.com/smartSpec/detail/1001319001.htm
全栈程序员站长
2022/09/16
8650
深度学习笔记4-模型优化算法
「这里记录的是吴恩达Andrew Ng在深度学习课程中提到过的优化算法,以及其他受推荐的优化算法。以及日常感谢Andrew Ng的视频」
caoqi95
2019/03/27
6670
深度学习笔记4-模型优化算法
深度学习基础入门篇[三]:优化策略梯度下降算法:SGD、MBGD、Momentum、Adam、AdamW
如果我们定义了一个机器学习模型,比如一个三层的神经网络,那么就需要使得这个模型能够尽可能拟合所提供的训练数据。但是我们如何评价模型对于数据的拟合是否足够呢?那就需要使用相应的指标来评价它的拟合程度,所使用到的函数就称为损失函数(Loss Function),当损失函数值下降,我们就认为模型在拟合的路上又前进了一步。最终模型对训练数据集拟合的最好的情况是在损失函数值最小的时候,在指定数据集上时,为损失函数的平均值最小的时候。
汀丶人工智能
2023/04/06
2.7K0
深度学习基础入门篇[三]:优化策略梯度下降算法:SGD、MBGD、Momentum、Adam、AdamW
深度学习——优化器算法Optimizer详解(BGD、SGD、MBGD、Momentum、NAG、Adagrad、Adadelta、RMSprop、Adam)
在机器学习、深度学习中使用的优化算法除了常见的梯度下降,还有 Adadelta,Adagrad,RMSProp 等几种优化器,都是什么呢,又该怎么选择呢? 在 Sebastian Ruder 的这篇论文中给出了常用优化器的比较,今天来学习一下: https://arxiv.org/pdf/1609.04747.pdf 本文将梳理: 每个算法的梯度更新规则和缺点 为了应对这个不足而提出的下一个算法 超参数的一般设定值 几种算法的效果比较 选择哪种算法 ---- 0.梯度下降法深入理解 以下为个人总结,如有错误
10JQKA
2018/05/09
8.4K0
深度学习——优化器算法Optimizer详解(BGD、SGD、MBGD、Momentum、NAG、Adagrad、Adadelta、RMSprop、Adam)
[DeeplearningAI 笔记]第二章 2.6-2.9Momentum/RMSprop/Adam 与学习率衰减
也小,而 b 在纵轴上波动很大,所以斜率在 b 方向上特别大.所以这些微分中,db 较大,dw 较小.这样 W 除数是一个较小的数,总体来说,W 的变化很大.而 b 的除数是一个较大的数,这样 b 的更新就会被减缓.纵向的变化相对平缓.
演化计算与人工智能
2020/08/14
6050
[DeeplearningAI 笔记]第二章 2.6-2.9Momentum/RMSprop/Adam 与学习率衰减
深度学习教程 | 神经网络优化算法
本系列为吴恩达老师《深度学习专项课程(Deep Learning Specialization)》学习与总结整理所得,对应的课程视频可以在这里查看。
ShowMeAI
2022/04/14
7600
深度学习教程 | 神经网络优化算法
吴恩达《优化深度神经网络》精炼笔记(2)-- 优化算法
上节课我们主要介绍了如何建立一个实用的深度学习神经网络。包括Train/Dev/Test sets的比例选择,Bias和Variance的概念和区别:Bias对应欠拟合,Variance对应过拟合。接着,我们介绍了防止过拟合的两种方法:L2 regularization和Dropout。然后,介绍了如何进行规范化输入,以加快梯度下降速度和精度。然后,我们介绍了梯度消失和梯度爆炸的概念和危害,并提出了如何使用梯度初始化来降低这种风险。最后,我们介绍了梯度检查,来验证梯度下降算法是否正确。
红色石头
2022/01/12
4150
吴恩达《优化深度神经网络》精炼笔记(2)-- 优化算法
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
碰到平缓区域,梯度值较小,参数优化变慢 碰到 “鞍点” ,梯度为 0,参数无法优化 碰到局部最小值 对于这些问题, 出现了一些对梯度下降算法的优化方法.
小言从不摸鱼
2024/10/14
2270
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
优化算法之Gradient descent with momentum
人生逆境时,切记忍耐;人生顺境时,切记收敛;人生得意时,切记看谈;人生失意时,切记随缘;心情不好时,当需涵养;心情愉悦时,当需沉潜。
触摸壹缕阳光
2020/02/26
9700
优化算法之Gradient descent with momentum
Adam优化算法
Adam refer to Adaptive Moment estimation.
Steve Wang
2019/05/26
1.1K0
深度学习算法优化背景知识---指数加权平均
背景:在深度学习优化算法,如:Momentum、RMSprop、Adam中都涉及到指数加权平均这个概念。为了系统的理解上面提到的三种深度学习优化算法,先着重理解一下指数加权平均(exponentially weighted averages) 定义 指数移动平均(EMA)也称为指数加权移动平均(EWMA),是一种求平均数的方法,应用指数级降低的加权因子。 每个较旧数据的权重都呈指数下降,从未达到零。 m个数据的数据集\({[\theta_1,\theta_2,...,\theta_m]}\) ; 平均
用户1631856
2018/07/09
8170
Coursera吴恩达《优化深度神经网络》课程笔记(2)-- 优化算法
上节课我们主要介绍了如何建立一个实用的深度学习神经网络。包括Train/Dev/Test sets的比例选择,Bias和Variance的概念和区别:Bias对应欠拟合,Variance对应过拟合。接
红色石头
2017/12/28
1.2K0
Coursera吴恩达《优化深度神经网络》课程笔记(2)-- 优化算法
神经网络中的优化方法
在传统的梯度下降优化算法中,如果碰到平缓区域,梯度值较小,参数优化变慢 ,遇到鞍点(是指在某些方向上梯度为零而在其他方向上梯度非零的点。),梯度为 0,参数无法优化,碰到局部最小值。实践中使用的小批量梯度下降法(mini-batch SGD)因其梯度估计的噪声性质,有时能够使模型脱离这些点。
@小森
2024/05/06
1680
神经网络中的优化方法
深度学习中的优化算法总结
    深度学习中的优化问题通常指的是:寻找神经网络上的一组参数θ,它能显著地降低代价函数J(θ)。针对此类问题,研究人员提出了多种优化算法,Sebastian Ruder 在《An overview of gradient descent optimizationalgorithms》(链接:https://arxiv.org/pdf/1609.04747.pdf )这篇论文中列出了常用优化算法的比较。主要优化算法有:GD、SGD、Momentum、Adagrad、Adadelta、RMSProp、Adam。
用户1432189
2019/08/20
1.1K0
深度学习中的优化算法总结
02.改善深层神经网络:超参数调试、正则化以及优化 W2.优化算法
前面我们学过向量化可以较快的处理整个训练集的数据,如果样本非常的大,在进行下一次梯度下降之前,你必须完成前一次的梯度下降。如果我们能先处理一部分数据,算法速度会更快。
Michael阿明
2021/02/19
2740
优化算法之指数移动加权平均
从没有白费的努力,也没有碰巧的成功。只要认真对待生活,终有一天,你的每一份努力,都将绚烂成花。
触摸壹缕阳光
2020/02/17
2.6K0
优化算法之指数移动加权平均
Dropout、梯度消失/爆炸、Adam优化算法,神经网络优化算法看这一篇就够了
对于机器学习模型在训练数据集和测试数据集上的表现。如果你改变过实验中的模型结构或者超参数,你也许发现了:当模型在训练数据集上更准确时,它在测试数据集上却不⼀定更准确。这是为什么呢?
AI科技大本营
2019/09/03
9540
Dropout、梯度消失/爆炸、Adam优化算法,神经网络优化算法看这一篇就够了
一文概览神经网络优化算法
机器学习的优化(目标),简单来说是:搜索模型的一组参数 w,它能显著地降低代价函数 J(w),该代价函数通常包括整个训练集上的性能评估(经验风险)和额外的正则化(结构风险)。与传统优化不同,它不是简单地根据数据的求解最优解,在大多数机器学习问题中,我们关注的是测试集(未知数据)上性能度量P的优化。
算法进阶
2022/06/02
1.3K0
一文概览神经网络优化算法
推荐阅读
相关推荐
深度学习:梯度下降算法改进
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档