深度学习:激活函数

25 篇文章 7 订阅
9 篇文章 0 订阅

原文地址

分类目录——TensorFlow

分类目录——Pytorch

激活函数是推动深度学习发展的一个关键节点。

深度学习框架,尤其是基于人工神经网络的框架可以追溯到1980年福岛邦彦提出的新认知机[11],而人工神经网络的历史更为久远。1989年,扬·勒丘恩(Yann LeCun)等人开始将1974年提出的标准反向传播算法[12]应用于深度神经网络,这一网络被用于手写邮政编码识别。尽管算法可以成功执行,但计算代价非常巨大,神经网路的训练时间达到了3天,因而无法投入实际使用[13]。许多因素导致了这一缓慢的训练过程,其中一种是由于尔根·施密德胡伯的学生赛普·霍克赖特于1991年提出的梯度消失问题[14][15]

引自 维基百科_深度学习

早期的网络都是直的,通过加权求和的方式进行层层运算。

1580873633422

这种网络也被成为多层感知机,后来它被证明不能解决非线性问题,这也成为当时制约深度学习发展的一个原因。

激活函数的出现改变了这种情况,激活函数的作用就是把直(线性)的掰成弯的(非线性)。

深度函数就是一个非线性函数,只不过它的输入不是原始的 x ,而是加权计算(直的过程)之后的结果,过程可以用下式表示

1580874296061

其中 f() 是一个非线性函数。

  • 常用的激活函数

1580874420615

  • 激活函数的选择

你甚至可以创造自己的激励函数来处理自己的问题, 不过要确保的是这些激励函数必须是可以微分的, 因为在 backpropagation 误差反向传递的时候, 只有这些可微分的激励函数才能把误差传递回去.

想要恰当使用这些激励函数, 还是有窍门的. 比如当你的神经网络层只有两三层, 不是很多的时候, 对于隐藏层, 使用任意的激励函数, 随便掰弯是可以的, 不会有特别大的影响. 不过, 当你使用特别多层的神经网络, 在掰弯的时候, 玩玩不得随意选择利器. 因为这会涉及到梯度爆炸, 梯度消失的问题.

在卷积神经网络 Convolutional neural networks 的卷积层中, 推荐的激励函数是 relu. 在循环神经网络中 recurrent neural networks, 推荐的是 tanh 或者是 relu .

引自 什么是激励函数 (Activation Function)

参考文献

什么是激励函数 (Activation Function)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BBJG_001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值