尝试获取分类器的准确度分数时出错

数据挖掘 Python 熊猫 朱庇特
2022-03-04 02:22:06

我正在尝试获得分类器的准确度分数,但我不断收到此错误

类型错误:预测()缺少 1 个必需的位置参数:'X'

任何人都可以帮忙吗?

from sklearn.metrics import accuracy_score

classifiers = [SVC, sgd, naive_bayes]

# for each classifier get the accuracy score
scores = [accuracy_score(clf.predict(test_X), test_y) for clf in classifiers]
    
index = np.argmax(scores)

print(scores)

print(classifiers[index])
print(scores[index])

2个回答

我没有看到您的整个示例,但这通常发生在您尚未初始化分类器时。

更重要的是,要进行测试,您首先必须训练您的分类器(例如clf().fit(X_train, y_train))。

nocibambi 是正确的...捎带他的简单实现将如下所示。我在工作时没有运行它,但希望它为您指明正确的方向。

# example classifier
svclassifier = SVC(kernel='linear')

# fit
svclassifier.fit(X_train, y_train)

# predict
y_pred = svclassifier.predict(X_test)

# score
print(confusion_matrix(y_test, y_pred))
print(classification_report(y_test, y_pred))