机会永远留给有准备的人,不积跬步,无以至千里,厚积而薄发,与大家共勉!加油!


博主最近在学习吴恩达的机器学习课程,将一些日常学习本人认为重要的地方在此记录,与大家分享,如有错误,请大家不吝赐教! github:https://github.com/ScathonLin

在梯度下降算法运用中,如果能保证不同特征的取值在相同或者相近的范围内,比如都处于0-1之间,那么梯度下降算法将会能很很快的收敛。

例如,一个含有两个特征的训练样本集,其中

特征缩放(feature scaling)

特征缩放(feature scaling)number of bedrooms(1-5)

此时,X1 是远远大于X2的,所以此时特征缩放(feature scaling)对应的轮廓图将很瘦很高,如下图所示:

特征缩放(feature scaling)

这样造成的结果很可能就是,梯度在下降过程中走了很多的“弯路”,来回震荡,收敛速度很慢,解决办法就是:特征缩放

  • 特征缩放方法

对于上述例子,我们可以将特征值进行如下转换,即可将两个特征值范围尽可能靠近,甚至相同:

特征缩放(feature scaling)

这样,特征缩放(feature scaling) 并且 特征缩放(feature scaling),这样的话,最终特征缩放(feature scaling)的轮廓图像就很“圆”,

特征缩放(feature scaling)

这样,梯度下降算法就会很快的收敛。

  • 一般解决方案:均值归一化

假设一个训练集有m个样本,n个属性,特征缩放(feature scaling) 其中 特征缩放(feature scaling)代表第i个样本的第j个属性的值,特征缩放(feature scaling)代表所有样本第j个属性的值的平均值,特征缩放(feature scaling)代表所有样本第j个属性的最大值。下图是教程视频中的解释。

特征缩放(feature scaling)

注意,不要用特征缩放(feature scaling)因为特征缩放(feature scaling)

也可以将上面的特征缩放(feature scaling)用这个式子来替换,其实就是将分母变成了max-min,特征缩放(feature scaling)

 

相关文章:

  • 2021-05-21
  • 2021-04-24
  • 2021-11-01
  • 2021-06-25
  • 2021-09-30
猜你喜欢
  • 2021-10-06
  • 2021-04-27
  • 2021-06-27
  • 2021-07-13
  • 2021-11-22
  • 2021-04-19
  • 2021-09-25
相关资源
相似解决方案