在机器学习的算法训练中,有很多数据的特征值不止一个,特征值中有些属性的数字过大,从而对计算结果的影响太大,但是实际情况是每个属性都同等重要,这时候就要处理这种不同取值范围的特征值,通常采用数值归一化,将取值范围处理为0-1或者-1-1之间。
将任意取值范围的特征值转化为0–1区间内的值,公式如下:
newValue=(oldValue-min)/(max-min)
其中oldValue为原始数据
min、max分别是原始数据里最小、最大值
例如:有一组数据如下
400
134000
20000
32000
归一化的过程是:
400归一化之后的值newValue=(400-400)/(134000-400)
134000归一化之后的值newValue=(134000-400)/(134000-400)
20000归一化之后的值newValue=(20000-400)/(134000-400)
32000归一化之后的值newValue=(32000-400)/(134000-400)
上python代码:
def autoNorm(dataSet):
min_value=dataSet.min(0)

在机器学习算法训练中,为了处理不同取值范围的特征值,通常需要进行数值归一化,将其转化为0-1区间内的值。文章介绍了如何进行归一化处理,并给出了一组数据的示例及对应的Python实现代码,展示了如何对数据集中的某一列数值进行归一化操作。
最低0.47元/天 解锁文章
498

被折叠的 条评论
为什么被折叠?



