OneHotEncoding
独热编码用于离散标签数值化
设有数据集A,其中有5类物品,编号为0,1,2,3,4
当我们对数据集A构建分类模型时,不能直接使用0,1,2,3,4作为分类标签带入计算,因为其数值大小有差异,这引入了误差
编码
将0,1,2,3,4这样的数值标签转换为如下所示,即可解决上述问题
\[\begin{split}0 : 1 0000 \\
1 : 0 1000 \\
2 : 0 0100 \\
3 : 0 0010 \\
4 : 0 0001\end{split}\]
这就是独热编码,编码总长度为类别数,先将类别映射为整数值,整数值对应的编码索引位置为1,其余为0
示例
数据集A,有5类物品,[小狗,小猫,小鸭,小鸡,小马],将其类别标签对应为从0开始的连续数值[0,1,2,3,4,5],其独热编码为:
类别标签 |
数字类别 |
编码 |
|---|---|---|
小狗 |
0 |
10000 |
小猫 |
1 |
01000 |
小鸭 |
2 |
00100 |
小鸡 |
3 |
00010 |
小马 |
4 |
00001 |