您的位置:首页 > 其它

梯度下降和反向传播

2017-08-11 21:59 656 查看
本文主要摘自《神经网络和深度学习》一书

梯度下降

对于一个很简单的代价函数:

C(w,b)=12∑x||y(x)−a||2

我们把C称作二次代价函数或者均方误差或者MSE

我们想要找到一系列能让代价尽可能小的权重和偏置。采用梯度下降算法达到这个目的。



若求导是负的则可以使得球体向下滚落

△C≈∂C∂v1△v1+∂C∂v2△v2

定义▽C来表示梯度向量,

▽C=(∂C∂v1,∂C∂v2)T

所以△C可以写作:

△C≈▽C●△v

只要满足△v=−n▽C,则



△C就是 负的,所以



我们就用它来更新规则,持续减小C。

v就是系数 w和b。

总结,梯度下降就是不断的计算梯度▽C,然后更新系数v,保证求导一直是负的,小球沿着山谷滚落。

这里对每个训练输入x单独计算梯度值▽Cx,然后求平均值,这样很慢。随其梯度下降通过随机选取小批量数据训练,比较好。

反向传播

反向传播是用来计算上述中梯度的快速算法。



反向传播的整个过程:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: