怎么对特征做标准化使得数值都是正数?

  统计/机器学习 数据预处理    浏览次数:3631        分享
0

平常我们对数值特征做标准化都是:(数值 - 均值)/标准差

这样标准化处理后的特征有正值也会有负值。

有没有一种标准化的方法能够让处理后的数值都是正数,或者非负数?


 

chang   2019-02-25 10:18



   3个回答 
5

题主可以看下在数据预处理阶段,特征的标准化有哪些方法?

“最大最小值标准化”可以在训练集上保证处理后的数值为非负。

“范数标准化”可以在训练集上保证处理后的数值为[-1, 1],再加1,就可以保证非负。

当然还有非线性的标准化,比如百分位标准化,最后得到是[0, 100]范围的数。

不过这几个方法都不能确保在测试集上的处理结果也是非负的。如果你的模型或者方程必须要输入值为非负的,那么你需要在测试集上多做一点处理,比如说所有负数都取0等等。

SofaSofa数据科学社区DS面试题库 DS面经

wxw_pku   2019-02-26 08:12

谢谢提供的链接 - chang   2019-02-28 23:28
3

min-max scaling

SofaSofa数据科学社区DS面试题库 DS面经

rudi   2019-02-25 11:07

2

归一化:(当前值-最小值)/(最大值-最小值)

SofaSofa数据科学社区DS面试题库 DS面经

CE_PAUL   2019-02-25 13:55



  相关主题

在训练前数据处理的时候,怎么剔除异常值?   2回答

数据白化是什么意思?   1回答

二值化和Onehot表示的特征哪一个较好?   1回答

在数据预处理阶段,特征的标准化有哪些方法?   1回答

z-score标准化不适用于处理什么样的数据?   1回答

dummy variable是n个还是n-1个   3回答

什么时候需要对y或者特征进行对数变换?   1回答

机器学习中的维度灾难怎么防止和克服?   0回答

机器学习中的过采样和欠采样是什么意思?   2回答

怎么求一个数组的移动平均数   1回答

python 读json 错误 ValueError: Unexpected character found when decoding array value (2)   0回答

怎么把dataframe的一列转成整数类型   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!