多类分类问题中的超参数调整:哪个评分指标?

数据挖掘 机器学习 分类 评估 超参数调整
2021-09-19 08:07:54

我正在使用不平衡的多类数据集。我尝试使用随机搜索和贝叶斯搜索来调整 a和 aDecisionTreeClassifier的参数。RandomForestClassifierGradientBoostingClassifier

目前,我只accuracy用于评分,这并不真正适用于评估我的模型性能(我没有这样做)。是不是也不适合参数调优?

例如,我发现recall_microrecall_weighted产生与accuracy. 这对于其他指标应该是相同的,例如f1_micro.

所以我的问题是:评分是否与调优相关?我看到这recall_macro会导致较低的结果,因为它没有考虑每个类的样本数量。那么我应该使用哪个指标?

3个回答

您应该使用相同的指标来评估和调整分类器。如果您要使用准确度评估最终分类器,那么您必须使用准确度来调整超参数。如果您认为应该使用宏观平均 F1 作为分类器的最终评估,也可以使用它来调整它们。

另一方面,对于多类问题,我还没有听到任何不使用准确性的令人信服的论点,但这只是我。

如果您的数据集不平衡,那么您可以计算 kappa 分数。

一个简单的解决方案是在每个类前面设置重要性权重,与该类的训练集相对频率成反比,例如1Freq或者e-Freq. 正确公式的选择取决于您对频率较低的课程的重视程度,
例如e-Freq更重视频率较低的课程1Freq