【深度学习基础知识 - 22】sigmoid、tanh、relu激活函数

sigmod、tanh、relu都是深度学习任务中常见的激活函数,主要作用是让模型获得非线性表达能力,这篇文章简单对它们做一个介绍。

sigmoid

  • sigmoid激活函数的取值分布在0到1之间,在深度学习再度被人们关注的初期是最常被采用的激活函数,但是由于网络层数的加深,采用sigmoid激活函数常常会导致梯度消失。另外,它的均值是0.5,并不是以0为中心的,因此也不便于计算。
  • 但是如果在输出层想将输出规范到0到1之间,那么就可以直接采用sigmoid激活函数。相应的,想得到其他输出只需要在乘以缩放系数并加上偏置即可。

tanh

  • tanh激活函数取值在-1到1,它的均值为0,弥补了sigmoid均值非0的缺点,但是和sigmoid激活函数一样可能在深层网络中导致梯度消失。

relu

  • relu主要是为了解决梯度消失和梯度爆炸问题产生的,它是一个分段函数,当小于0的时候梯度恒为0,大于0的时候梯度恒为1,因此不会出现产生梯度消失或梯度爆炸问题。并且由于将负数全部置零了也会因为降低了乘加器的调用从而加快模型推理的速度,只是受益并不大。

博主会持续更新一些深度学习相关的基础知识以及工作中遇到的问题和感悟,喜欢请关注、点赞、收藏,感谢大家。

你可能感兴趣的:(深度学习,深度学习,机器学习,人工智能,神经网络)