何时应在机器学习中使用特征缩放?
对于依赖欧几里得距离或基于梯度的优化的算法,应使用特征缩放,例如 KNN、K-means、线性回归、逻辑回归和神经网络。对于基于树的模型,如决策树、随机森林和 XGBoost,通常不需要缩放。
适用条件
- 模型使用对特征尺度敏感的度量或迭代优化。
- 模型不是基于树或树的集成。
理解与推导
- 识别算法类型。
- 如果使用欧几里得距离(例如 KNN、K-means)或梯度下降(例如 ANN、CNN、线性/逻辑回归),则应用缩放。
- 如果是基于树的(例如决策树、随机森林、XGBoost),通常不需要缩放,因为分裂取决于特征条件,而不是绝对量级。
例子
演讲者列出 KNN、K-means、线性回归、逻辑回归、ANN 和 CNN 需要缩放,同时指出决策树、随机森林和 XGBoost 不需要。
容易误解的地方
- 不必要地对基于树的模型应用缩放。
- 跳过基于距离或基于梯度的模型的缩放,导致收敛不良或有偏的距离计算。
观看对应讲解
YouTube标准化与归一化—特征缩放
9:16 – 10:51原站看这一段 ↗
相关概念
继续追问
相关问题
理解原因↗
基于树的模型不需要特征缩放,因为它们根据特征条件(阈值)而不是绝对量级来分割数据。特征值的单调重缩放不会改变分支结构或分裂的顺序。
适用条件:模型是决策树或树的集成(随机森林、XGBoost 等)。;分裂逻辑基于将特征值与阈值进行比较。
YouTube标准化与归一化—特征缩放
10:03 – 10:35原站看这一段 ↗
理解原因↗
需要特征缩放是因为原始特征通常在单位和量级上有所不同,使它们不可比较。缩放将它们带到共同的尺度上,这对于许多机器学习算法正常工作是必要的。
适用条件:数据集包含具有不同单位或范围的多个特征。;模型对特征量级敏感(例如,基于距离或梯度的模型)。
YouTube标准化与归一化—特征缩放
6:00 – 6:35原站看这一段 ↗
掌握方法↗
从 `sklearn.preprocessing` 导入 `MinMaxScaler`,实例化它,并在选定的 DataFrame 列上调用 `fit_transform`。这将缩放器拟合到数据(学习最小/最大值)并将值转换到 [0, 1] 范围。
适用条件:输入数据是数值型的。;已安装 Scikit-learn 库。
YouTube标准化与归一化—特征缩放
6:35 – 7:08原站看这一段 ↗
认识概念↗
标准化将特征值 转换为 ,针对转换后特征的均值为 0 和标准差为 1。
适用条件:逐数值特征应用。;使用特征均值 和标准差 。;假设 。
YouTube标准化与归一化—特征缩放
7:10 – 7:58原站看这一段 ↗
掌握方法↗
从 `sklearn.preprocessing` 导入 `StandardScaler`,实例化它,并在选定的 DataFrame 列上调用 `fit_transform`。这将数据转换为均值为 0 和标准差为 1。
适用条件:输入数据是数值型的。;已安装 Scikit-learn 库。
YouTube标准化与归一化—特征缩放
7:58 – 8:59原站看这一段 ↗
答案依据视频资料生成并经过独立核验。若有疑问,请核对原视频或联系原作者。