keras:如何将预测映射到标签?

时间:2019-11-02 13:55:11

标签: keras scikit-learn

我已经训练了一个keras模型。在训练之前,我使用了skelarn的LabelBinarizer将每个图像的标签映射到概率向量。总共有120个labesl,因此每个概率向量具有120个值。

现在,当我使用模型进行预测时,我将获得概率向量。

如何将此向量映射到标签?我想我需要使用LabelBinarizer,因为它封装了标签的知识。但是我不确定该怎么做?

1 个答案:

答案 0 :(得分:1)

假设我们有6个数据点和3个唯一的类(您的情况下有120个唯一的类)

"2510"

z4看起来像这样

14

7将了解哪些标签标记为l1,l2或l3。从上方我们看到,它将from sklearn import preprocessing lb = preprocessing.LabelBinarizer() Y = ["l1", "l2", "l3", "l3", "l2", "l2", "l1"] Y_bin = lb.fit_transform(Y) # label binarizer will convert it to a 0/1's print(Y_bin) 标记为Y_bin,将array([[1, 0, 0], [0, 1, 0], [0, 0, 1], [0, 0, 1], [0, 1, 0], [0, 1, 0], [1, 0, 0]]) 标记为LabelBinarizer,将l1标记为[1,0,0]。这将反映在l2的{​​{1}}属性中,该属性应为-[0,1,0]

l3

所以现在说您的2分输出是-

[0,0,1]

对于第一个点,模型选择了第一个标签,对于第二个点,模型选择了标签3

可以使用以下代码选择这些标签-

.classes_

这将给标签-

LabelBinarizer