深度学习中的激活函数

激活函数(activation function)的反函数为连接函数。
深度学习中的激活函数_第1张图片深度学习中的激活函数_第2张图片

ReLU

  • 修正线性单元(Rectified Linear Unit, ReLU)
  • a = max(0, z) 简单而粗暴,大于0的留下,否则一律为0
  • ReLU函数会使得部分神经元不会产生激活,造成网络结构的稀疏性,缓解过拟合的问题
  • 优点:由上图可以看出,Relu得到的SGD的收敛速度较快
  • 缺点:训练的时候很容易‘die’了,对于小于0的值,这个神经元的梯度永远都会是0,在实际操错中,如果learning rate很大,很可能网络中较多的神经元都’dead’了,即使是较小的learning rate,这种情况也很有可能发生。

因为神经网络是不断反复计算,实际上变成了它在尝试不断试探如何用一个大多数为0的矩阵来尝试表达数据特征,结果因为稀疏特性的存在,反而这种方法变得运算得又快效果又好了

ReLU:其输出不关于原点对称;反向传播时,输入神经元小于0时,会有梯度消失问题;当x=0时,该点梯度不存在(未定义);ReLu失活(dead RELU)原因:权重初始化不当、初始学习率设置的非常大

深度学习中的激活函数_第3张图片

How does the ReLu solve the vanishing gradient problem?

  • 为了解决以上的问题,提出了leakyReLU激活函数:
  • 数学表达式:y = max(0, x) + leak*min(0,x) (leak是一个很小的常数,这样保留了一些负轴的值,使得负轴的信息不会全部丢失)
  • leakyRelu的图像
    深度学习中的激活函数_第4张图片
    深度学习中的激活函数_第5张图片

Tanh()

  • 双曲正切函数 hyperbolic tangent
  • 取值范围[-1,1]
  • Tanh激活函数存在的问题:梯度消失、计算耗时,但是其输出是中心对称的
    深度学习中的激活函数_第6张图片

你可能感兴趣的:(#,TensorFlow,2.6.1,深度学习,人工智能,计算机视觉)