《百面机器学习》第一章 学习笔记

第一章 特征工程

第一节 特征归一化

方法:

  1. min-max normalization:
    《百面机器学习》第一章 学习笔记
  2. z-score normalization

为什么要对数值类型的特征做归一化?

作用:加速收敛过程,快速通过梯度下降寻找最优解。

原理:举例预测房价的线性回归模型,有两个特征房间数(rooms)和面积(squares)。
Price = theta2 * Rooms + theta1 * Squares
Rooms的取值范围可能为【1,10】,squares的取值范围可能为【1,1000】,那么我们最后求出的函数可能为:
Price = 600 * Rooms + 60 * Squares
在学习速率相同的情况下,theta2需要更多的迭代次数(如果用梯度下降法)收敛。
《百面机器学习》第一章 学习笔记
但如果使用归一化,rooms和squares的取值都在【0,1】之间,那么最终的表达式可能为:
Price = 0.6 * Rooms + 0.55 * Squares
《百面机器学习》第一章 学习笔记
可以看出归一化后,收敛的过程更加平缓,更容易找到最优解。
Reference:https://www.zhihu.com/question/20455227