one-hot和multi-hot编码

1、one-hot

One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。

One-Hot编码是分类变量作为二进制向量的表示。这首先要求将分类值映射到整数值。然后,每个整数值被表示为二进制向量,除了整数的索引之外,它都是零值,它被标记为1。

听概念的话显得比较复杂,我们来看一个例子。

假设我们有一群学生,他们可以通过四个特征来形容,分别是:

  • 性别:[“男”,“女”]
  • 年级:[“初一”,“初二”,“初三”]
  • 学校:[“一中”,“二中”,“三中”,“四中”]

举个例子,用上述四个特征来描述小明同学,即“男生,初一,来自二中”,如果特征类别是有序的话,我们能够用表示顺序的数组表示

即“男生,初一,来自一中” ==> [0,0,1]

但是这样的特征处理并不能直接放入机器学习算法中,因为类别之间是无序的。

这时候就可以用独热编码的形式来表示了,我们用采用N位状态寄存器来对N个状态进行编码,拿上面的例子来说,就是:

one-hot和multi-hot编码_第1张图片

因此,当我们再来描述小明的时候,就可以采用 [1 0 1 0 0 0 1

你可能感兴趣的:(推荐算法,算法,机器学习)