1. 什么是独热编码
独热编码,又称一位有效编码。采用N位状态寄存器来对N个状态进行编码,直观来说就是有多少个状态就有多少比特,除了有效的比特为1外,其他都为0.
2. 独热编码过程
(1)将分类值映射到整数值
(2)类型值有n个就会有一个长度为n的数列,单个特征只有一位有效,处于状态1,其他都是0。有效位从第0 位开始
比如性别特征为男,女。
男,有效位为第0位,女,有效位为第一位,则
男:10
女:01
3. 一些示例
对于代码里输入的数据:
0,0,3
1,1,0
0,2,1
1,0,2
可以看到,有三列,假设一列为一种特征。则有三种特征,对于第一列也就是第一种特征,值为0,1,0,1有两种值,为0,1。第二种特征,有三种值为0,1,2。第三种特征,有四种值,为0,1,2,3。
因此对于[0,1,3]的编码:第一个特征为1,0,第二个特征为0,1,0,第三个特征为0,0,0,1
综上:其独热编码为[1,0,0,1,0,0,0,0,1]
4. 优缺点
(1)优点
将离散数据整数化,其值也可以看做欧式空间中某点的坐标
(2)缺点
不考虑词与词之间的顺序
假设词与词相互独立
得到的特征是离散稀疏的,向量过于稀疏,会造成维度灾难