为什么标准化输出包含负值而最小-最大输出不包含?
标准化将数据中心化在均值 () 处,因此低于均值的结果变为负值。最小-最大归一化平移和缩放数据,使最小值变为 0,最大值变为 1,将所有值保持在 [0, 1] 内的非负状态。
适用条件
- 标准化使用 。
- 最小-最大使用 。
理解与推导
- 对于标准化,如果 ,从 中减去 会产生负结果。
- 对于最小-最大,减去 确保分子非负,除以正范围使结果保持在 [0, 1]。
- 观察到 Out[11](标准化)有像 -0.56 这样的负值,而 Out[8](最小-最大)有像 0.19 和 1.0 这样的值。
例子
视频显示 Out[11] 有像 -0.5622498 这样的负值用于标准化,而 Out[8] 有 0 到 1 之间的值用于最小-最大缩放。
容易误解的地方
- 认为标准化也应该产生 0 到 1 之间的值。
- 认为负标准化值表示计算错误。
观看对应讲解
YouTube标准化与归一化—特征缩放
7:58 – 8:59原站看这一段 ↗
相关概念
继续追问
相关问题
理解原因↗
基于树的模型不需要特征缩放,因为它们根据特征条件(阈值)而不是绝对量级来分割数据。特征值的单调重缩放不会改变分支结构或分裂的顺序。
适用条件:模型是决策树或树的集成(随机森林、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原站看这一段 ↗
答案依据视频资料生成并经过独立核验。若有疑问,请核对原视频或联系原作者。