大神手把手教你:(Python)序列数据的One Hot编码

  • 时间:
  • 浏览:0
  • 来源:大发彩神下载—大发彩神APP

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0],

所有事先的输入的映射必须从char值创建为整数值。许多 使用该映射对输入字符串进行编码。大伙儿可不必须看一遍输入'h'中的第有一兩个字母被编码为7。许多 将整数编码转换为one hot编码。一次完成有一兩个整数编码的字符。创建0个值的列表,以便字母表的长度可不必须表示任何预期的字符的长度。

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

 [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0],

 hello world

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1],

在这些 情形下,大伙儿想让网络更具表现力,为每个事先的标签值提供概率式数字。这有益于进行问题图片图片网络建模。当输出变量使用one-hot编码时,它可不必须提供比单个标签更准确的一组预测。

 [7, 4, 11, 11, 14, 26, 22, 14, 17, 11, 3]

4.One-Hot Encode with Keras.

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

编码为0红色标签将用二进制向量[1,0]表示,其中第0个索引被标记为值1。许多 ,编码为1绿色标签将用有一兩个二进制向量[01],其中第有一兩个索引被标记为1

让大伙儿用有一兩个小例子来说明一下到底这些 是One-Hot编码。假设大伙儿有有一兩个含有'red''green'值的标签序列。大伙儿可不必须将'red'的整数值分配为0'green'的整数值为1。要是大伙儿总爱将这些 数字分配给这些 标签,这称为整数编码。一致性是重要的,很多大伙儿可不必须稍后反转编码,并从整数值获取标签。

 [[0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

3.One-Hot Encode with scikit-learn.

运行示例首先打印标签序列。事先是标签的整数编码,最后是one hot编码。训练数据含有所有事先示例的集合,许多 大伙儿可不必须依靠整数和one hot编码变换来创建标签到编码的全版映射。

默认情形下,OneHotEncoder类将返回更高效的稀疏编码,这事先不适用于许多应用守护任务管理器。类事使用Keras深度1学习库。在这些 情形下,大伙儿通过设置sparse = False这些 参数来禁用稀疏返回类型。

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

最后,大伙儿反转第有一兩个字母的编码并打印结果。大伙儿通过使用NumPy argmax()函数定位具有最大值的二进制向量中的索引,许多 使用字符值的反向查找表中的整数进行整数。

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],

  h

 [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]

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