微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否有可能对不同的分类模型获得相同的测试精度?

如何解决是否有可能对不同的分类模型获得相同的测试精度?

我使用以下逻辑运行了许多带有认选项的基本分类模型:

# setup the basic models with all arguments as default
et_clf = ExtraTreesClassifier()
svc_clf = SVC()
knn_clf = KNeighborsClassifier()
log_clf = LogisticRegression()
dt_clf = DecisionTreeClassifier()
rnd_clf = RandomForestClassifier()

# import accuracy_score
from sklearn.metrics import accuracy_score

# use a for-loop to compute the test set accuracy for each classifier
for clf in (et_clf,svc_clf,knn_clf,log_clf,dt_clf,rnd_clf ):
    clf.fit(X_train,y_train)
    y_pred = clf.predict(X_test)
    print(clf.__class__.__name__,accuracy_score(y_test,y_pred))

ExtraTreesClassifier、SVC、KNeighborsClassifier 和 LogisticRegression 的测试准确率完全相同:

ExtraTreesClassifier 0.8517915309446255
SVC 0.8517915309446255
KNeighborsClassifier 0.8517915309446255
LogisticRegression 0.8517915309446255
DecisionTreeClassifier 0.46416938110749184
RandomForestClassifier 0.8078175895765473

这甚至可能吗?

解决方法

是的,有可能,这取决于您的数据集大小。要检查模型给出的准确率是否正确,请在数据集中添加不平衡数据并再次运行所有模型。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。