Gradient Descent (二)

Gradient Descent (一)

Gradient Descent (二)


我们做Gradient Descent 需要注意什么呢?

  • Tuning your learning rates

η的大小控制不好,会造成很多问题:

如果η太小,我们w的移动速度太慢,而且会对数据量有一定要求

而如果太大了呢,w会一直在未走到最低点之前震荡,而无法走到最低点

甚至是这样:

我们可以把参数的update和Loss值做一个曲线:

 

那有什么办法可以自动调节learning rate呢?

    最基本的思路:learning rate随着参数的update越来越小。

                             因为通常在开始的时候,我们设置的参数往往距离最低点比较远,随着update,距离最低点会越来越

                             近,也就更加“谨慎”一些

用一个简单的式子可以表达成这样:

也就是说,每个点都有一个不同的learning rate。

对求learning rate的方法中,一个比较简单的就是Adagrad

什么是Adagrad呢?

即learning rate等于它除以之前所有微分值的均方根

在我们之前的Gradient descent中,

而在Adagrad中:,其中   

 

然后约分一下:

但是,如果仔细观察这个式子,就会发现一些问题,在我们最开始的式子中,我们可以理解的:当斜率g越大时,w走一步跨的步子越大,但在我们刚刚得出的式子中,分子和分母中都存在g,是不是互相矛盾呢?

一种解释是说Adagrad强调的是本次数据相对于其他数据的反差

 

  • Stochastic Gradient Descent

在原来的Gradient Descent中,我们是计算完所有的数据loss之后,update一次参数

而在Stochastic Gradient Descent中,我们计算每个数据的loss,每个都update一次参数

 

  • Feature Scaling

, 如果x2比x1大很多,那就把x2的值缩小,让x1和x2对y的影响程度相似

y

那具体怎么做呢?

 

 

至于Gradient Descent的数学理论基础,可以看一下泰勒公式......这个我们以后有空再说

 

PS:学习笔记,仅用于个人学习。图片来自李老师的ppt 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值