我有许多类和相应的特征向量,当我运行predict_proba()时,我会得到以下信息:
classes = ['one','two','three','one','three']
feature = [[0,1,1,0],[0,1,0,1],[1,1,0,0],[0,0,0,0],[0,1,1,1]]
from sklearn.naive_bayes import BernoulliNB
clf = BernoulliNB()
clf.fit(feature,classes)
clf.predict_proba([0,1,1,0])
>> array([[ 0.48247836, 0.40709111, 0.11043053]])
我想得到对应于什么类(Class)的概率。在此页面上说,它们是按算术顺序排序的,我不确定这是什么意思:http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html#sklearn.svm.SVC.predict_proba
这是否意味着我已经通过训练示例将相应的索引分配给类(class)的第一次遇到,还是有这样的命令?
clf.getClasses() = ['one','two','three']?
最佳答案
只需使用分类器的.classes_
属性即可恢复映射。在您的示例中给出:
>>> clf.classes_
array(['one', 'three', 'two'],
dtype='|S5')
还要感谢您在问题中添加了一个简约的复制脚本,只需复制并粘贴到IPython shell中,它就使回答变得非常容易:)
关于python - 如何在clf.predict_proba()中找到相应的类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16858652/