如何解决如何衡量随机森林分类器的准确性?
# Import Random Forest
from sklearn.ensemble import RandomForestClassifier
# Create a Gaussian Classifier
clf_two=RandomForestClassifier(n_estimators=3)
# Train the model using the training sets
clf_two.fit(emb_train,ytrain.ravel())
y_pred_two=clf_two.predict(emb_test)
我想知道我的分类器的准确性并尝试这样做:
# Import scikit-learn metrics module for accuracy calculation
from sklearn import metrics
# Model Accuracy
print("Accuracy:",metrics.accuracy_score(ytrain,y_pred_two))
问题在于 y_pred_two
是大小为 (5989,)
的行向量,而 ytrain
是大小为 (16128,1)
的列向量。所以两者之间存在大小不匹配,我收到此错误:
ValueError: Found input variables with inconsistent numbers of samples: [16128,5989]
如果 y_pred_two
和 ytrain
的大小不同或者我做错了什么,是否仍然可以测量准确度?但这就是训练和测试数据给我的方式。
非常感谢您的快速帮助!
解决方法
在我看来,问题只是您试图评估通过在具有训练数据集目标标签的测试样本上运行模型而获得的预测值的准确性。
您只需要加载或生成测试集标签(ytest)并运行:
print("Accuracy:",metrics.accuracy_score(ytest,y_pred_two))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。