机器学习中的归一化是准备数据进行分析和建模的关键步骤。它有助于将不同的功能带入共同的量表,这对于依靠数据点之间距离的算法尤为重要。如果没有归一化,某些特征可能会主导学习过程,从而导致偏差的结果和模型性能差。在本文中,我们将探讨标准化的各个方面,包括其类型,用例和实施指南。
什么是机器学习的归一化?
归一化是一种用于机器学习的技术,可将数据集特征转换为均匀的量表。当特征范围很大时,此过程至关重要。通过使数据归一化,我们使机器学习模型能够从输入数据中有效,有效地学习,最终提高预测质量。
标准化的类型
归一化涉及几种方法,每种方法都根据数据集的特征提供不同的目的。
最小最大缩放
Min-Max缩放是最常见的归一化方法之一,将特征重新缩放到特定范围,通常 [0, 1]。
- 公式:
( text {归一化value} = frac { text {值} – text {min}} { text {max} – text {min}}} )
- 益处:
– 该技术可确保所有功能都对机器学习算法中使用的距离计算有同等贡献。
标准化缩放
另一方面,标准化通过将平均值核心为零并将方差扩展到一个来调整数据。
- 过程: 减去每个观察值的平均值,结果除以标准偏差。
- 结果: 此过程将特征转换为标准正态分布,其中平均值为0,标准偏差为1。
归一化和标准化之间的比较
了解归一化和标准化之间的差异是决定要采用哪种方法的关键。
归一化与标准化
- 正常化: 通常将数据带入定义的范围,例如 [0, 1],这对于基于距离的模型特别有益。
- 标准化: 涉及调整数据以具有零的平均值和一个标准偏差,对假设线性关系的算法(例如线性回归)有用。
标准化用例
在功能规模可以显着影响机器学习模型的性能的情况下,归一化尤其重要。
从归一化中受益的算法
许多算法,例如K-Neartimen Neighbor(KNN),都需要标准化,因为它们对输入特征的规模敏感。
- 示例:
例如,如果我们使用年龄(0-80)和收入(0-80,000)之类的功能,则标准化有助于模型以同样重要性对待这两个功能,从而导致更准确的预测。
应用指南
知道何时应用标准化或标准化可以优化模型有效性。
何时使用归一化
当数据集的分布未知或非高斯时,建议进行归一化。对于基于距离的算法,例如KNN或神经网络,它尤其重要。
何时使用标准化
标准化非常适合预期遵循高斯分布或采用假设线性性的模型(例如逻辑回归或线性判别分析(LDA))时的数据集。
示例方案
为了说明特征缩放的影响,请考虑具有年龄(0-80岁)和收入(0-80,000美元)之类功能的数据集。没有标准化:
- 收入功能 可能会主导量表,使预测的年龄掩盖,从而导致结果偏差。
- 通过标准化功能,这两个方面都可以平等地贡献,从而提高模型预测的准确性。
归一化的目的
归一化的主要目的是通过确保所有功能在类似尺度上运行,以应对模型学习的挑战。这有助于在优化过程中(例如梯度下降)中更快地收敛。结果,机器学习模型变得更加高效,更容易解释,从而促进了各种数据集的性能。