在scikit-learn网站上的OneVsRestClassifier文档中提到如下内容:
“由于每个类别仅由一个分类器表示,因此可以通过检查其对应的分类器来获取关于该类别的知识。”
但文档中并未解释如何做到这一点,我在页面上的任何方法中也看不到如何实现这一点。我希望能够打印出模型对每个类别的准确率,以便了解它在预测每个类别时的表现。
我目前的代码如下,但我实在不知道接下来该怎么做,因为文档中似乎没有任何解释如何做到这一点。任何帮助都将不胜感激。
def predict_one_vs_rest(self): clf = OneVsRestClassifier(LinearSVC(random_state=0)) clf.fit(self.X, self.y) result = clf.classes_ estimators = clf.estimators_ print(result) print("") print(estimators)
回答:
您不需要将LinearSVC包装在OneVsRestClassifier中。正如文档明确指出的,LinearSVC已经支持多类分类。要检查类别的准确性,您可以使用混淆矩阵或分类报告,例如。