模型评估指标
二、捕捉少数类的艺术
(1)精确度
精确度Precision: 又叫查准率,表示在所有预测结果为1的样例中,实际为1的样例数所占的比重。精确度衡量了”将样本量较多的类判错后所需付出成本“。
(2)召回率
召回率Recall: 又称为敏感度(sensitivity)、真正率、查全率等,表示在所有真实值为1的样本中,被我们预测正确的样本所占的比例。召回率越高,代表我们捕捉到了越多样本量较少的类。
注意: 召回率和精确度的分子是相同的(都是11),只是分母不同。二者是此消彼长的,他们之间的平衡代表了希望模型尽量捕捉到样本量较少的类,同时尽量不要误伤样本量较多的类。那么,究竟要偏向于哪一方呢?这取决于我们的业务需求,也就是我们需要判断究竟是误伤多数类的代价更高,还是无法捕捉少数类的代价更高?
(3)F1 score
为了同时兼顾精确度和召回率,我们引入了调和平均数这个综合性指标,又称为F1 score。F1 score越高,说明此时的精确度和召回率都比较高,该指标也分布在[0,1]之间,当然也是越接近1越好。
(4)sklearn中的混淆矩阵
sklearn当中提供了大量的类来帮助我们了解和使用混淆矩阵。
类 |
含义 |
sklearn.metrics.confusion_matrix |
混淆矩阵 |
sklearn.metrics.accuracy_score |
准确率accuracy |
sklearn.metrics.precision_score |
精确度precision |
sklearn.metrics.recall_score |
召回率recall |
sklearn.metrics.precision_recall_curve |
精确度-召回率平衡曲线 |
sklearn.metrics.f1_score |
F1 measure |