课时九 神经网络的学习
这一课时主要是对神经网络进行学习,包括代价函数,反向传播算法等知识点。
1、代价函数
和其他机器学习算法一样,神经网络在预测时也会有误差,所以自然也有代价函数,代价函数形式:
这个代价函数形式比较复杂,和逻辑回归的代价函数形式差不多,但是二者的正则项不一样,神经网络的正则项是排除每一层的Θ0之后,每一层Θ矩阵的和。(具体的含义我也没搞懂,总之是记住了这是神经网络的代价函数形式,以后在实际应用中再慢慢理解吧)
2、反向传播算法
反向传播算法的思想是先计算输出层的误差,然后再反向求出各层的误差,直到倒数第二层。
3、梯度检验
4、综合起来
神经网络的使用步骤
选择网络结构:决定有多少层以及每一层的神经单元数。第一层的单元数是我们训练集的特征数,最后一层的单元数是我们训练集的结果的类的种类数。
如果隐藏层数大于1,确保每个隐藏层的单元数相同,通常情况下隐藏层的单元数越多越好。
训练神经网络:
1.参数的随机初始化
2.利用正向传播算法计算所有的
3.编写计算代价函数的代码
4.利用反向传播算法计算所有偏导数
5.利用数值检验方法来检验这些偏导数
6.使用优化算法来最小化代价函数
以上就是本节课时的内容,神经网络算法这节对我来说比较难,尤其是反向传播算法这里,所以还需要多看几遍课程,或是从其他资料继续学习,以上笔记内容来自“机器学习初学者”网站提供的吴恩达老师的2014机器学习课程笔记http://www.ai-start.com/