one_hot(独热码)官方示例的个人理解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了one_hot(独热码)官方示例的个人理解相关的知识,希望对你有一定的参考价值。
官方给的例子
from sklearn import preprocessing enc = preprocessing.OneHotEncoder() enc.fit([[0, 0, 3], [1, 1, 0], [0, 2, 1], [1, 0, 2]]) enc.transform([[0, 1, 3]]).toarray() >>> array([[ 1., 0., 0., 1., 0., 0., 0., 0., 1.]])
这里给出了四组原始的特征表达方式
[0, 0, 3],
[1, 1, 0],
[0, 2, 1],
[1, 0, 2]
每个数组的每个位置对应不同类型的特征,显然给出的原始数据中有三大类特征(因为每个数组的长度都为3),例如[0,0,3]的一号特征的值是0,二号特征的值是0,三号的特征的值是3.
编码的过程:
第一步:
把三大类特征分别编码:1号特征(观察只有两种值),所以编码为[10, 01] // 由大到小排列 [1::10, 0:: 01]
2号特征[100,010,001]
3号特征[1000,0100,0010,0001]
第二步:
根据编码好的特征,将给出的[0, 1, 3]转换成one_hot编码 [0,1, 0,1,0, 0,0,0,1] //将特征分别用上面编好码的特征表示
恩,就是这样
以上是关于one_hot(独热码)官方示例的个人理解的主要内容,如果未能解决你的问题,请参考以下文章