【吴恩达机器学习】第10章 神经网络参数的反向传播算法

代价函数

像大部分机器学习一样,从代价函数开始讲起。

重点讲解,神经网络在分类问题中的应用。

神经网络层数
LL来表示神经网络结果的总层数。

每层单元数
sls_l表示第ll层的单元数,但不包括偏置。

Binary classification
一个输出单元

Multi-class classification
k分类,含有k个输出单元

Cost function

  • Logistic regression:
    在这里插入图片描述
  • Neural network
    不再只有一个输出单元,而是K个。
    在这里插入图片描述

    Θ(l)\Theta^{(l)}表示第ll层T对应的参数,最后一层没有参数。

反向传播算法

在这里插入图片描述
需要优化的参数
Θijl\Theta^{l}_{ij}

如何计算参数的偏导
在这里插入图片描述
每个单元的激活误差
在这里插入图片描述
第4层的激活误差
在这里插入图片描述
其它层的激活误差
在这里插入图片描述
参数的偏导
在这里插入图片描述
Backpropagation algorithm
在这里插入图片描述

理解反向传播

中间偏导
如果cost函数为:g(z)=yloghΘ(z)+(1y)log(1hΘ(z))g(z)= y\log h_\Theta(z) + (1 - y) \log( 1 - h_\Theta(z))
则对zz求导后:
zg(z)=yhΘ(z)\frac \partial z {g(z)} = y - h_\Theta(z)
在这里插入图片描述

梯度检测

将计算的导师值与DVecDVec比较
在这里插入图片描述

随机初始化

对称权重问题
当两个参数初始化为0时,之后用梯度下降法,它们的更新保持一致。
在这里插入图片描述
随机初始化思想
初始化时,对参数进行随机化。

组合到一起

输入特征的维数
输出特征的维数

隐藏层数量
默认一层

每一层的隐藏层单元相同,效果会更好。
一般单元数也与输出层单元数相同,或者大几倍。

训练一个神经网络的过程
在这里插入图片描述
在这里插入图片描述

posted @ 2019-09-28 11:17  bitbitbyte  阅读(179)  评论(0编辑  收藏  举报