在 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)
Run Code Online (Sandbox Code Playgroud) 我正在使用数据的多类分类创建模型,它具有6个功能.我使用LabelEncoder使用下面的代码预处理数据.
#Encodes the data for each column.
def pre_process_data(self):
self.encode_column('feedback_rating')
self.encode_column('location')
self.encode_column('condition_id')
self.encode_column('auction_length')
self.encode_column('model')
self.encode_column('gb')
#Gets the column using the column name, transforms the column data and resets
#the column
def encode_column(self, name):
le = preprocessing.LabelEncoder()
current_column = np.array(self.X_df[name]).tolist()
self.X_df[name] = le.fit_transform(current_column)
Run Code Online (Sandbox Code Playgroud)
当我想预测一个新实例时,我需要转换新实例的数据,以使这些特征与模型中的特征匹配相同的编码.有没有一种简单的方法来实现这一目标?
此外,如果我想保留模型并检索它,那么是否有一种简单的方法来保存编码格式,以便使用它来转换检索到的模型上的新实例?