机器学习笔记03_加速梯度下降算法——特征放缩(feature scaling)

使用特征放缩的原因

图(1)

如图所示,当有的特征取值范围的数值很大,有的特征取值范围数值很小

那么为了去匹配真实数据,就要给数值大的特征点乘一个数值比较小的权重

同理,也要给数值小的特征点乘一个数值比较大的权重

使用这样的安排的原因:

图(2)

如果不按照上述方法安排权重大小,那么取值范围小的特征将会被忽略

接着上面的说

我们做出这样的安排之后,对于代价函数的等高线图(图1的右边那个图),就会变得又高又瘦

此时,尽管我的 w1 只是进行了微小的变动,梯度下降的步幅也会变得很大

这样会导致我们在寻找局部最小点的时候,会在最优解的周围来回浮动,导致梯度下降算法运行过慢

因此,我们引入了特征放缩(feature scaling)的方法来加速梯度下降算法

特征放缩的具体方法

最大值法

把所有特征都除以它自身取值范围的最大值,就可以把特征的取值范围限制在0、1之间

均值归一化(Mean normalization)

μ1 :在训练样本中特征 X1 的均值

μ2:在训练样本中特征 X2 的均值

最终放缩之后的特征取值通常在-1 到 1 之间,会把特征取值变得有正有负

Z-score 标准化 / 归一化(Z-score normalization)

这个方法采用了正态分布的思想

μ1 :在训练样本中特征 X1 的均值

μ2:在训练样本中特征 X2 的均值

σ1:在训练样本中特征 X1 的标准差

σ2:在训练样本中特征 X2 的标准差

最终同样把特征放缩到了一个取值较小的区间内

注意

如果某个特征取值本身就较小,那么不进行特征放缩也完全OK,对梯度下降运算也没什么影响

如图所示

本篇笔记图示来源:吴恩达《机器学习》系列课程

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值