吴恩达机器学习笔记week9——神经网络具体实现 Neutral network Learning
- 9-1.代价函数 Cost function
- 9-2.反向传播算法 Backpropagation algorithm——用于优化代价函数optimize the cost function
- 9-3.理解反向传播 Backpropagation intuition
- 9-4.使用注意:展开参数 Implementation note:Unrolling parameters——矩阵转向量
- 9-5.梯度检测 Gradient checking——检测错误的方法
- 9-6.随机初始化 Random initialization
- 9-7.组合到一起 Putting it together——实现神经网络的具体步骤
- 9-8.无人驾驶 Autonomous driving example
9-1.代价函数 Cost function
术语和符号含义:
a^(1)表示输入层 = X
a^(L)表示输出层 = h_theta(X)
a^(i)表示第i层的activation激励值
定义代价函数:
K表示最后输出向量大小,即K=1表示有1个输出,K=n表示有n个输出
代价函数只要最后输出结果与真实值对比就好,无需中间隐藏层
但是后面正则项要对过程中每一个theta值进行处理
9-2.反向传播算法 Backpropagation algorithm——用于优化代价函数optimize the cost function
最小化代价函数,求偏导数
- 仅有一个训练样本
- m个训练样本
9-3.理解反向传播 Backpropagation intuition
注意delta的含义
- 前向传播 vs 反向传播
9-4.使用注意:展开参数 Implementation note:Unrolling parameters——矩阵转向量
Octave操作指南
9-5.梯度检测 Gradient checking——检测错误的方法
- when theta is real number,approximation to derivative
- when theta is vector parameter,approximation to derivative
9-6.随机初始化 Random initialization
对称权重问题symmetry weights:在神经网络中参数theta是不能都初始化为0的,反之,图中相同颜色产生的权重,误差都是一样的,即只算出一种特征,这是高度冗余的。
解决方法:
9-7.组合到一起 Putting it together——实现神经网络的具体步骤
- pick a network architecture
- trainning a neutral network