深度学习之梯度下降算法

对于代价函数: J ( w , b ) = 1 m ∑ i = 1 m L ( y i ^ , y ( i ) ) = 1 m ∑ i = 1 m ( − y ( i ) l o g ( y ( i ) ^ ) − ( 1 − y ( i ) ) l o g ( 1 − y ( i ) ^ ) ) J(w,b)=\frac{1}{m}\sum_{i=1}^m{L(\widehat{y^i},y^{(i)})}=\frac{1}{m}\sum_{i=1}^m{(-y^{(i)}log(\widehat{y^{(i)}})-(1-y^{(i)})log(1-\widehat{y^{(i)}}))} J(w,b)=m1i=1mL(yi ,y(i))=m1i=1m(y(i)log(y(i) )(1y(i))log(1y(i) ))
函数图如下:
在这里插入图片描述
为什么要用到梯度下降算法?
代价函数的目的:求 J ( w , b ) J(w,b) J(w,b)的最小值, J ( w , b ) J(w,b) J(w,b)越小,则说明预测值与真实值越接近,越接近就说明参数 w w w b b b越合适。那么该怎么让函数 J ( w , b ) J(w,b) J(w,b)找到最小值呢?观察函数图可以看出,函数 J ( w , b ) J(w,b) J(w,b)存在且仅存在最小值(因为 J ( w , b ) J(w,b) J(w,b)是凸函数),就是下图所示的最低点:
在这里插入图片描述
在最低点处, J ( w , b ) J(w,b) J(w,b)导数接近为0,而在其它点处 J ( w , b ) J(w,b) J(w,b)导数大于0或小于0。所以找到最低点的办法就是找 J ( w , b ) J(w,b) J(w,b)梯度(导数)接近为0的点,而在深度学习过程中 w w w b b b是随机选取的, J ( w , b ) J(w,b) J(w,b)绝对在最小点之上,找到 J ( w , b ) J(w,b) J(w,b)最小值就要根据梯度下降算法来找。
梯度下降算法
(1)用小红点来初始化参数 w w w b b b
在这里插入图片描述
(2)朝最陡的下坡方向走一步,不断地迭代,我们朝最陡的下坡方向走一步,如图,走到了如图中第二个小红点处;
在这里插入图片描述
(3)我们可能停在这里也有可能继续朝最陡的下坡方向再走一步,如图,经过两次迭代走到第三个小红点处;
在这里插入图片描述
(4)直到走到全局最优解或者接近全局最优解的地方。
在这里插入图片描述
通过以上的四个步骤我们可以找到全局最优解,也就是代价函数 J ( w , b ) J(w,b) J(w,b)(成本函数)这个凸函数的最小值点。
梯度下降法的细节化说明(仅有一个参数)
假定代价函数(成本函数) J ( w ) J(w) J(w)只有一个参数 w w w,即用一维曲线代替多维曲线,这样可以更好画出图像。
在这里插入图片描述
迭代就是不断重复如图的公式: w = w − a d J ( w ) d w w=w-a\frac{dJ(w)}{dw} w=wadwdJ(w) a a a表示学习率(learning rate),用来控制步长(step),即向下走一步的长度 d J ( w ) d w \frac{dJ(w)}{dw} dwdJ(w)就是函数 J ( w ) J(w) J(w) w w w求导。假设我们以如图点为初始化点,该点处的斜率的符号是正的,即 d J ( w ) d w > 0 \frac{dJ(w)}{dw}>0 dwdJ(w)>0,所以接下来会向左走一步。整个梯度下降法的迭代过程就是不断地向左走,直至逼近最小值点。
在这里插入图片描述
假设我们以如图点为初始化点,该点处的斜率的符号是负的,即 d J ( w ) d w < 0 \frac{dJ(w)}{dw}<0 dwdJ(w)<0,所以接下来会向右走一步。整个梯度下降法的迭代过程就是不断地向右走,即朝着最小值点方向走。
在这里插入图片描述
梯度下降法的细节化说明(两个参数)
逻辑回归的代价函数(成本函数) J ( w , b ) J(w,b) J(w,b)是含有两个参数的。
w = w − a d J ( w , b ) d w w=w-a\frac{dJ(w,b)}{dw} w=wadwdJ(w,b) b = b − a d J ( w , b ) d b b=b-a\frac{dJ(w,b)}{db} b=badbdJ(w,b)
对于单个样本实例的梯度下降算法中参数更新一次公式为:
w ( 1 ) = w ( 1 ) − a d w ( 1 ) w^{(1)}=w^{(1)}-adw^{(1)} w(1)=w(1)adw(1) b = b − d b b=b-db b=bdb
根本没有正确的选择,我们只不过是要努力奋斗把当初的选择变得正确。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值