SKLearn:为什么分类标签的不同编码器的分类结果会有所不同?

时间:2019-05-03 22:11:28

标签: python scikit-learn label encoder

我有一个多类分类问题,需要使用python的sklearn包解决。原始的类标签是像

这样的字符串
['sports', 'games', 'foods', 'music', ...]

所以我尝试了两种不同的方式来编码分类字符串标签: 1.使用preprocessing.LabelEncoder()    转换为“ int”:[1, 2, 3, 4] 2.通过使用preprocessing.LabelBinarizer()    转换为“二值化数组”:

pd.array[[1,0,0,0], 
         [0,1,0,0], 
         [0,0,1,0],
         [0,0,0,1]]

我认为二进制标签应该更好,因为分类标签不包含订单信息。但是,这两种标签的预测结果是不同的。此外,int标签的precision_score远高于二值化标签。

谁能告诉我这种情况的原因?非常感谢。目前,我尝试了RandomForest分类器,是因为使用了这种分类器算法?

0 个答案:

没有答案