【发布时间】:2019-02-12 09:33:03
【问题描述】:
我使用 SVM 的 Linear svc 来训练和测试数据。我能够在我的数据集上获得 SVM 的准确性。但是,除了准确性之外,我还需要精确度和召回率。谁能建议我如何计算精度和召回率。
我的代码:
from sklearn.preprocessing import MultiLabelBinarizer
from sklearn.model_selection import train_test_split
from sklearn.svm import LinearSVC
with open("/Users/abc/Desktop/reviews.txt") as f:
reviews = f.read().split("\n")
with open("/Users/abc/Desktop/labels.txt") as f:
labels = f.read().split("\n")
reviews_tokens = [review.split() for review in reviews]
onehot_enc = MultiLabelBinarizer()
onehot_enc.fit(reviews_tokens)
X_train, X_test, y_train, y_test = train_test_split(reviews_tokens, labels, test_size=0.20, random_state=None)
lsvm = LinearSVC()
lsvm.fit(onehot_enc.transform(X_train), y_train)
score = lsvm.score(onehot_enc.transform(X_test), y_test)
print("Score of SVM:" , score)
【问题讨论】:
-
你检查过这个链接吗:scikit-learn.org/stable/modules/generated/…?
标签: python scikit-learn