为什么需要Encoding?
绝大多数模型不支持类别型变量的输入,
什么是One-Hot Encoding?
One-Hot编码即独热编码,又称一位有效编码,其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候,其中只有一位有效。这样做的好处主要有:
1.解决了分类器不好处理属性数据的问题;
2.在一定程度上也起到了扩充特征的作用(有利有弊)。
举个?:
有如下三个特征属性:
性别:[“male”,“female”]
地区:[“Europe”,“US”,“Asia”]
浏览器:[“Firefox”,“Chrome”,“Safari”,“Internet Explorer”]
对于某一个样本,如[“male”,“US”,“Internet Explorer”],我们需要将这个分类值的特征数字化,最直接的方法,我们可以采用序列化的方式:[0,1,3]。但是这样的特征处理并不能直接放入机器学习算法中(针对于某些模型来说)。
对于上述的问题,性别的属性是二维的,所以编码是两位对应
male 和 female 分别是 [1,0] , [0,1]
地区为三位 分别是 [1,0,0] , [0,1,0] , [0,0,1]
浏览器为 [1,0,0,0] ,[0,1,0,0] , [0,0,1,0] , [0,0,0,1]
那么样本对应就是 [ 1,0 , 0,1,0 , 0,0,0,1]
什么是Label Encoding?
label enc