0

我们知道,在数据挖掘中,我们经常需要 one-hot encoding 来对分类特征进行编码,因此,一个分类特征将被编码为几个“0/1”特征。

有一个特殊情况让我感到困惑:现在我的数据集中有一个分类特征和一个数字特征。我将分类特征编码为 300 个新的“0/1”特征,然后使用 MinMaxScaler 对数字特征进行归一化,所以我所有的特征值在0到1的范围内。但可疑的现象是分类特征与数值特征的比例似乎从1:1变为300:1。

我的编码方法正确吗?这让我对one-hot编码产生了怀疑,我认为这可能会导致特征不平衡的问题。

谁能告诉我真相?任何词将不胜感激!谢谢!!!

4

1 回答 1

1

由于每条记录只有一个类别,因此其中只有一个为 1。

实际上,通过这种预处理,分类特征的权重将仅为标准化特征权重的 2 倍左右。(2 次,如果您考虑两个不同类别的距离和对象)。

但本质上你是对的:one-hot 编码并不是特别聪明。让程序在它们不支持的数据上运行是一种丑陋的黑客行为。当使用诸如 k-means 之类的算法时,情况会变得更糟,假设我们可以取平均值并且需要最小化这些变量的平方误差......结果的统计值将受到限制。

于 2018-12-03T08:25:14.040 回答