第九章 前向神经网络

第二节 深度神经网络中的激活函数

问题1:常用激活函数及导数

  • 多层神经网络相当于一层,因此每层后面添加一个激活函数
  • sigmod、tanh、ReLu的原函数和导函数(其中,tanh(x)=2*sigmod(2x)-1)

问题2:为什么sigmod和tanh导致梯度消失?

  • 它俩的导数在变量x极大或者极小时趋于0,

问题3:ReLu系列激活函数相对sigmod和tanh的优点,局限及改进

优点:

  • Relu不需要计算指数,只要一个阈值
  • Relu的非饱和性解决梯度消失,有较宽的激活边界
  • ReLu的单侧抑制提供了网络的稀疏表达能力 (不懂)
    局限:
  • ReLu在训练中导致神经元死亡,导致负梯度在经过该ReLu单元时被置为0 (为什么是梯度?反向传播计算梯度时?梯度一直为0?)
  • 学习率设置过大也会导致一定比例神经元死亡
  • ReLu变种 leaky ReLu,小于0时,f(x)= a * x
  • 参数化的ReLu,PReLu,将参数a同网络中参数一起优化
  • LReLu,a满足某个分布,从中随机采样,一定程度上起到正则化作用。

第三节 多层感知机的反向传播算法

问题1:多层感知机的平方误差和交叉熵损失函数

  • 损失函数,代价函数,目标函数的区别:损失函数时一个样本的损失,代价函数是整体的损失,是损失函数的平均,目标函数,是最终要优化的函数=cost function+正则化项
  • 损失函数(Loss Function )是定义在单个样本上的,算的是一个样本的误差。
  • 代价函数(Cost Function )是定义在整个训练集上的,是所有样本误差的平均,也就是损失函数的平均。
  • 目标函数(Object Function)定义为:最终需要优化的函数。等于经验风险+结构风险(也就是Cost Function + 正则化项)。参考
  • 需要记住背写平方误差、交叉熵损失和多分类的损失函数。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章