Cost Function and Backpropagation

Cost Function

L:代表神经网络的层数
Sl:第l层的神经元个数
K:输出神经元的个数
吴恩达-机器学习(5)
神经网络的代价函数
吴恩达-机器学习(5)

Backpropagation Algorithm

使用梯度下降,最重要的就是要计算偏导
吴恩达-机器学习(5)
δj(l)表示第l层第j个节点的误差
吴恩达-机器学习(5)
反向传播的步骤
吴恩达-机器学习(5)
吴恩达-机器学习(5)

Backpropagation in Practice

Unrolling parameters

将矩阵转换成向量的形式
吴恩达-机器学习(5)

Gradient Checking

检测梯度下降的正确性
近似梯度的计算
吴恩达-机器学习(5)
算法的过程
吴恩达-机器学习(5)

Random Initialization

参数初始化本能像以往一样全设为0,因为根据正向传播,如果参数全为0,那么al全是一样的,反向传播更新的参数也是一样的
吴恩达-机器学习(5)
随机初始化
吴恩达-机器学习(5)

Putting it Together

训练神经网络的第一步就是选择网络的结构,输入单元的个数等于特征的树立数量,输出单元的个数等于分类的数量,每层的隐藏单元数量越多越好,当计算成本会相应的增加,每层隐藏层一般拥有相同数量的隐藏单元,但通常只是用一个隐藏层。
吴恩达-机器学习(5)
训练神经网络的步骤:
1. 随机初始化权值
2. 进行正向传播计算每个x(i)hθ(x(i))
3. 计算代价函数j(θ)
4. 进行反向传播算法计算偏导数
5. 使用梯度检查来确认你的反向传播工作。然后禁用梯度检查。
6. 使用梯度下降或内置的优化函数,以最大限度地减少成本函数。

相关文章: