激活函数

深度学习基础理论-CNN篇

激活函数

激活函数(activation function)层又称非线性映射层,顾名思义,激活函数的引入为的是增加整个网络的表达能力(即非线性)。否则,若干线性操作层的堆叠仍然只能起到线性映射的作用,无法形成复杂的函数。在实际使用中,有多达十几种激活函数可供选择。本节以Sigmoid型激活函数和ReLU函数为例,介绍涉及激活函数的若干基本概念和问题。

直观上,激活函数模拟了生物神经元特性:接受一组输入信号并产生输出。在神经科学中,生物神经元通常有一个阈值,当神经元所获得的输入信号累积效果超过了该阈值,神经元就被激活而处于兴奋状态;否则处于抑制状态。在人工神经网络中,因Sigmoid型函数可以模拟这一生物过程,从而在神经网络发展历史进程中曾处于相当重要的地位。Sigmoid型函数也称Logistic函数:

其函数形状下图(a)所示。很明显能看出,经过Sigmoid型函数作用后,输出响应的值域被压缩到[0,1] 之间,而0对应了生物神经元的“抑制状态”,1则恰好对应了“兴奋状态”。不过再深入的观察还能发现在Sigmoid函数两端,对于大于5(或小于−5)的值无论多大(或多小)都会压缩到1(或0)。如此便带来一个严重问题,即梯度的“饱和效应”。对照Sigmoid型函数的梯度图如下图(b)所示,大于5(或小于−5)部分的梯度接近0,这会导致在误差反向传播过程中导数处于该区域的误差将很难甚至根本无法传递至前层,进而导致整个网络无法训练(导数为0将无法更新网络参数)。此外,在参数初始化的时候还需特别注意,要避免初始化参数直接将输出值域带入这一区域:一种可能的情形是当初始化参数过大时,将直接引发梯度饱和效应而无法训练。

图 Sigmoid型函数及其函数梯度

为了避免梯度饱和效应的发生,Nair和Hinton于2010年将修正线性单(Rectified Linear Unit,简称ReLU)引入神经网络。ReLU函数是目前深度卷积神经网络中最为常用的激活函数之一。另外,根据ReLU函数改进的其他激活函数也展示出更好的性能。

图 ReLU函数及其函数梯度

ReLU函数实际上是一个分段函数,其定义为:

由上图可见,ReLU函数的梯度在x ≥ 0 时为1,反之为0。对x ≥ 0 部分完全消除了Sigmoid型函数的梯度饱和效应。同时,在实验中还发现相比Sigmoid型函数,ReLU函数有助于随机梯度下降方法收敛,收敛速度约快6倍左右。正是由于ReLU函数的这些优质特性,ReLU函数已成为目前卷积神经网络及其他深度学习模型(如递归神经网络RNN等)激活函数的首选之一。

end

原文发布于微信公众号 - PaddlePaddle(PaddleOpenSource)

原文发表时间:2018-04-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【斯坦福CS229】一文横扫机器学习要点:监督学习、无监督学习、深度学习

给定一组与输出{y(1),...,y(m)}相关联的数据点{x(1),...,x(m)},我们希望构建一个能够根据x值预测y值的分类器。

731
来自专栏SIGAI学习与实践平台

理解AdaBoost算法

与随机森林一样,Boosting算法也是一种集成学习算法,随机森林和集成学习在SIGAI之前的公众号文章“随机森林概述”中已经介绍。Boosting的分类器由多...

3620
来自专栏计算机视觉战队

线性分类原来是这么一回事,skr~

SVM是最常用的两个分类器之一,而另一个就是Softmax分类器,它的损失函数与SVM的损失函数不同。

1193
来自专栏小小挖掘机

整理一份机器学习资料!

本系列主要根据吴恩达老师的课程、李航老师的统计学习方法以及自己平时的学习资料整理!在本文章中,有些地方写的十分简略,不过详细的介绍我都附上了相应的博客链接,大家...

1702
来自专栏机器学习原理

机器学习(11)——非线性SVM

前言: 上一篇介绍了线性SVM还有一些尾巴没有处理,就是异常值的问题。 软间隔 线性可分SVM中要求数据必须是线性可分的,才可以找到分类的超平面,但是有的时候...

3955
来自专栏AI科技大本营的专栏

深度 | 机器学习中的模型评价、模型选择及算法选择

作者:Sebastian Raschka 翻译:reason_W 编辑:周翔 简介 正确使用模型评估、模型选择和算法选择技术无论是对机器学习学术研究还是工业场景...

6084
来自专栏Duncan's Blog

StatisticLearning

1.泛化误差/期望损失(风险函数):是理论模型f(X)关于联合分布P(X,Y)的平均意义下的损失.

1152
来自专栏专知

深度学习和普通机器学习之间有何区别?

【导读】文章标题是个很有趣的问题,深度学习作为机器学习的子集,它和普通机器学习之间到底有什么区别呢?作者使用了一种很普通的方式来回答这个问题。 本质上,深度学习...

3875
来自专栏iOSDevLog

人工智能-深度学习

1612
来自专栏SIGAI学习与实践平台

深度卷积神经网络演化历史及结构改进脉络-40页长文全面解读

从1989年LeCun提出第一个真正意义上的卷积神经网络到今天为止,它已经走过了29个年头。自2012年AlexNet网络出现之后,最近6年以来,卷积神经网络得...

1391

扫码关注云+社区

领取腾讯云代金券