我的问题关于集成学习。我是机器学习领域的初学者,想知道是否有办法打印出下方Voting Classifier对象中每个机器学习算法的所有指标(如准确性)。我的意思是我用粗体写的输出:
– 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_scorey_pred = model.named_estimators_.lr.predict(x)lr_accuracy=accuracy_score(y_true, y_pred)
此外,model.transform(X)返回每个分类器对所有X的“每标签概率”或“预测标签”,使计算每个分类器的任何指标变得容易。