Python 如何组合不同指标的结果并从中得出分数?
下面的数据框显示了我的6个模型使用不同指标的性能。 我想从所有指标的结果中生成一个分数,然后检测最佳模型。 我不能使用平均值,因为度量值不在同一方向。(例如,AUC越高越好,但另一方面,MAE、MSE和RMSE越低越好) 如果我将所有这些值相乘,然后将它们乘以1/AUC,并使用该值作为分数,这合理吗Python 如何组合不同指标的结果并从中得出分数?,python,metrics,auc,Python,Metrics,Auc,下面的数据框显示了我的6个模型使用不同指标的性能。 我想从所有指标的结果中生成一个分数,然后检测最佳模型。 我不能使用平均值,因为度量值不在同一方向。(例如,AUC越高越好,但另一方面,MAE、MSE和RMSE越低越好) 如果我将所有这些值相乘,然后将它们乘以1/AUC,并使用该值作为分数,这合理吗 有什么想法吗?这取决于你的目标函数和你试图解决的问题 通常,“最佳”模型比使用某些度量的其他模型性能更好,但在其他度量中性能不如。例如,在您的示例中,RMSE的增加提供了更好的AUC,但MAE更差。
有什么想法吗?这取决于你的目标函数和你试图解决的问题 通常,“最佳”模型比使用某些度量的其他模型性能更好,但在其他度量中性能不如。例如,在您的示例中,RMSE的增加提供了更好的AUC,但MAE更差。请查看scikit文档,以获取可能使用的错误度量的广泛列表:。您将需要决定是否所有人都获得相同的权重
您可能希望考虑BUGHOP,在这里,您将所有模型的加权组合结合起来,而不是选择1个模型来减少处理样本数据时的泛化误差。p>
也考虑生成跟随你训练数据集的随机分布的样本数据。您可能会发现样本外数据为每个模型生成的错误度量与样本内结果大不相同,这些样本外测试的蒙特卡罗模拟将使您更清楚地了解应关注哪些模型和错误度量
Model RMSE MAE MSE AUC Score
0 a 0.29 0.187 0.084 0.65 ?
1 b 0.29 0.187 0.084 0.649 ?
2 c 0.299 0.17 0.09 0.64 ?
3 d 0.308 0.149 0.095 0.663 ?
4 e 0.314 0.143 0.099 0.675 ?
5 f 0.319 0.146 0.102 0.682 ?