深度学习-梯度下降算法-自用笔记1

深度学习自用笔记1

深度学习-梯度下降算法-自用笔记

刚刚进入深度学习,了解到梯度下降算法,发现梯度下降算法会遇到局部最优点和鞍点

梯度下降算法

最终是要找到一个合适的权重W*来让损失函数cost(w)最小。但真正的梯度下降曲线不可能是这样简单的一维曲线的损失函数的最低点,而是多维的空间面的损失函数的最低点。
深度学习-梯度下降算法-自用笔记1_第1张图片
一般学习率取得都很小,保证他是缓慢收敛到最低点,而不会跳过最低点,如图所示
深度学习-梯度下降算法-自用笔记1_第2张图片

梯度下降算法可能会遇到局部最优点和鞍点

非凸函数会产生局部最优点,会导致神经网络无法找到全局最优点,但实际上在神经网络中并没有很多的局部最优点,但是它存在一种特殊的点叫做鞍点。
深度学习-梯度下降算法-自用笔记1_第3张图片
如图鞍点就是梯度g=0的值,这样的点被称为鞍点,因为遇到这样的点权重w无法更新。
深度学习-梯度下降算法-自用笔记1_第4张图片
多维空间的鞍点如图,从w1看可能处于最低点,从w2看可能存在最高点,无论从哪个wx(x=1、2…n)看他的梯度g=0。

梯度下降算法的代码实现

数据集x_data、y_data,先给权重一个初始值w=1.0
第一步前向计算函数
第二步损失函数函数
第三步梯度下降函数
深度学习-梯度下降算法-自用笔记1_第5张图片

第四步更新迭代100代
深度学习-梯度下降算法-自用笔记1_第6张图片
随机梯度下降算法可以解决鞍点问题,代码如下
深度学习-梯度下降算法-自用笔记1_第7张图片

你可能感兴趣的:(深度学习,深度学习,python)