我有一个包含6个类的数据集,这些类可以映射到4个热编码列,这样每个类都对应于一个热编码的不同组合:
类 | >one-hot1one-hot2 | <1th>one-hot3<2th>one-hot4||||
---|---|---|---|---|---|
0 | class1 | <1>0 | <1>0|||
1 | 类2 | <1>0 | 0 | ||
2 | class3 | <1>10 | |||
3 | class4 | 0 | 0 | <1>0||
类5 | 0 | 1 | 0 | ||
5 | class6 | 1 | 1 | 0 | <1>
要严格回答您的问题:您可以简单地连接预测的布尔值并解码完整的一个热向量。然后,您可以根据真实类来评估预测的类。
然而,这不太可能很好地工作,除非你有一些专业知识证明类应该以这种方式划分(例如,如果类之间有一些层次排序(。
一般来说,类标签不必是一个热编码的,而不是分类特征。标签的分类性质可以安全地表示为数值,通常使用LabelEncoder。简言之:这是因为模型没有也不能使用标签的数字顺序,而在用数字表示的分类特征的情况下,它会错误地依赖于顺序。