我目前正在处理的项目使用sklearn svm.SVC类,其中代码中的某一点实例化以下内容:
self.classifier = OneVsRestClassifier(SVC(kernel = 'linear', probability = True))
在拟合分类器之后,我尝试检查分类器的support_vector_或support_属性。但是,我收到以下错误:
'SVC' object has no attribute 'support_vectors_'
我尝试将内核更改为'poly'或'rbf',但这并不能解决错误。为什么会这样?任何线性SVM都不应该为此属性提供某些内容(即至少为“无”)吗?如果有帮助,我使用sklearn版本0.15.1。
谢谢!
答案 0 :(得分:1)
假设您通过尝试评估
获得了错误消息self.classifier.estimator.support_vectors_
观察OneVsRestClassifier
克隆您的估算器的次数与类别一样多,并且适合您的数据。它们可以在ovr的estimators_
变量中找到。尝试
self.classifier.estimators_[0].support_vectors_
这将为您提供第一个OVR问题的支持向量。