python - 是否有一种方法可以显示 VotingClassifier 对象内的每个模型的准确度分数?
问题描述
我的问题是关于集成学习。我是 ML 领域的初学者,想知道是否有一种方法可以为下面看到的 Voting Classifier 对象中的每个 ML 算法打印所有指标(例如准确性)。我的意思是我用粗体写的输出:
- lr_model 精度 => 0.70
- lgb_model 精度 => 0.72
- xgb_model 精度 => 0.71
lr_model=LogisticRegression()
lgb_model=lgb.LGBMClassifier()
xgb_model=xgb.XGBClassifier()
model=VotingClassifier(estimators=[("lr",lr_model), ("lgbm",lgb_model),
("xgb",xgb_model)],voting='soft')
model.fit(X,y)
解决方案
您可以通过 访问模型的拟合子估计器model.named_estimators_.{name}
。例如:
from sklearn.metrics import accuracy_score
y_pred = model.named_estimators_.lr.predict(x)
lr_accuracy=accuracy_score(y_true, y_pred)
此外,model.transform(X)返回所有 X 的每个分类器的“每个标签的概率”或“预测标签”,从而可以轻松计算每个分类器的任何指标。
推荐阅读
- apache-poi - Apache POI - 重新排序行
- python - Web抓取请求停止工作,在python中显示“响应[401]”?
- python-3.x - 如何将 Pyglet 与 Twisted/Asyncio 集成?
- java - 如何在 Java 中加密和解密 sqlite3 数据库?
- hive - presto + hive.metastore.uri + presto worker 如何连接到 hive Metastore
- python - 有没有办法从输入中取出数字?
- perl - 可以在更深层次的绑定哈希分配上调用 STORE 吗?
- python - 比较字符串的最佳方法是什么?
- ssl - 在 azure VM 中的 Nginx 服务器上安装 SSL
- c# - 比较两个表之间的属性