目录
第二章 神经网络
课时9 梯度下降通俗解释
引入:当得到一个目标函数之后,如何进行求解?线性回归可以看作一个特例,可以直接求解得到。而其他目标函数不一定能求解得到。
由上softmax得到一个目标函数(损失函数)如何进行求解得到最好的W参数呢?
向着损失函数(loss function)减小的方向去做,每一次优化一点点。沿着切线方向,向下,走一小步,再算梯度。
算一个函数的梯度,梯度是向上的,要向下就要算梯度的反方向-----梯度下降。
课时10 参数更新的方法
以一个回归方程为例
偏导数:分别对θo和θ1进行求偏导。
将上面的目标函数换成普遍形式:,注意J(θ)是 复合函数,i是第i个样本,j是第j列
算出偏导后,要改变参数θ,就要沿着梯度的反方向在原来基础上走一小步,得到新的θ
如果m=100w,也就是说要算100w个样本的损失值,那么更新一次参数Θ,要算100w次,太慢了。,这种将所有样本拿去算梯度下降的方法叫做:批量梯度下降,它能算出所有样本平均的一个梯度下降,最优解容易得到,但速度太慢了。
**随机梯度下降:**不算所有样本的梯度,只算随机的一个样本的。迭代速度快,但是不一定朝着收敛的方向
**小批量梯度下降:**mini-batch,batch选的大,就是希望当前结果越精确,64,128,256;α就是学习率
课时12 反向传播
先再进一步了解神经网络的前向传播:会有多个层,每一层对上一层结果再改变其属性(通过添加新的参数W)
链式法则:梯度是一步一步传的
课时13 神经网络整体框架
这节课前半部分介绍了如何具体计算链式法则,求导(暂时忽略)
课时14 神经网络结构细节
略
神经网络的强大之处在于,用更多的参数来拟合复杂的数据
课时15 神经元个数对结果的影响
神经元越多,拟合得越好,精确度越高,过拟合风险越大
本课时展示了斯坦福大学的神经网络可视化展示,可忽略
课时16 正则化与激活函数
惩罚力度越大,过拟合风险越小
神经网络经过XW之后都要有个非线性的变换,就需要激活函数,现在最常用的是ReLu
不用sigmoid是因为其存在梯度消失的现象。
课时18 神经网络过拟合解决方法
数据预处理:不同的预处理结果会使得模型效果发生很大差异
第一步,中心化,每个样本值减去均值就能得到
第二步,除以标准差
参数初始化很重要!!:通常使用随即策略
过拟合解决方法之一:Drop-out(七伤拳)
每次训练更新参数W时,随机杀死一部分神经元,下轮训练时,再随机选取一部分神经元杀死,也就是说每次训练,只有一部分神经元会被训练