Gradient Descent

在这里插入图片描述
在整个maching learning的第三个步骤要找一个最好的function。在第二步是定义了一个 Loss function L,这个L是一个function的fuction
求完偏微分之后得到的向量就是Gradient(黄色部分)
在这里插入图片描述
随机找一个起始点0,它的等高线的法线方向就是gradient,是一个vector,之后把这个gradient乘上deep learning再取负号得到它更新的移动方向,1,以此类推。先算gradient再决定要走的方向。
在这里插入图片描述
在这里插入图片描述
eg可以把learning rate设置成一个依赖于次数t的function,这样再经历t次之后,分母t+1越大,得到的learning rate就会越小
自动调learning rate的方法
通常learning rate随着参数的变化,越来越小。最好的状态是不同参数给不同的learning rate
在这里插入图片描述
通过均方根实现对不同参数设置不同learning rate。wt这一点的微分是gt
在这里插入图片描述
σt是过去所有微分的root mean square(其计算方法为将平方误差求平均值,然后取平方根)
在这里插入图片描述
所以使用adagrad 更新参数的时候公式就长这样
斜率gt(微分gt)越大算出来的参数更新的就越快。
在这里插入图片描述
在这里插入图片描述
adagrad在分母里又具备了gt,这样的话gt越大,参数更新就越小,与之前的有冲突。但是adagrad在分母中包含这个微分,就是为了造成反差的效果。把过去所有的gradient的平方相加再相除,来看过去的gradient的反差有多大。
在这里插入图片描图
只有一个参数的时候才成立。以二次函数图像为例,最低点到随机点x0之间,最好的一步就是x0+2ab,简化同分得到绿色箭头右侧公式。下面的图像是对二次函数求微分得到的图像。所以在某一点的微分越大,距离原点越远。
在这里插入图片描述
w1的error surface(曲面误差)图像如蓝色所示,在这条图像上,如果比较a和b,那就是刚才那样的规律,斜率越大距离远点越远。w2的图像为绿色部分,值比较cd两点也是同理。但如果是跨参数比较,ac两点这个规律就不适用。
在这里插入图片描述
最好的一步这个公式里还有一个分母2a,这个2a就是对二次函数进行二次微分的来的。所以如果是跨参数来比较的话就需要一次微分和二次微分一起看。虽然c的斜率比a大,但是它的二次微分也比a大。谷比蓝色图像的谷要尖。
Stochastic Gradient Descent
在这里插入图片描述
和Gradient Descent不一样的是它只需要随机取一个点xn,只计算这个点的loss就可以而不是计算所有训练数据的损失。看一个example就更新一个参数。
在这里插入图片描述
Gradient一下把所有的example全部看完后更新参数,所以它是比较稳定。Stochastic Gradient Descent是看到一个example就更新一次参数。
Feature Scaling
在这里插入图片描述
不同的特征有相同的范围。比如x1远比x2小,所以把x2缩小使x1x2有相同的范围。
在这里插入图片描述
左边:w2比w1对y的影响要大,所以w2方向上会有尖锐的谷,w1方向上就会比较平滑
右边:w1,w2对y的影响差不多所以会得到接近圆形的loss图像
右边计算gradient更新参数要比左边方便
在这里插入图片描述
算出来微分为0的时候不一定就是loss最小的时候,也有可能在高原但是微分值为0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值