微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Recall值与precision-recall曲线的关系

如何解决Recall值与precision-recall曲线的关系

我迷失在查全率和查全率曲线下面积之间的关系中。我正在使用二元分类器对不平衡的数据集进行分类。我通过认的sklearn python包记录了recall值和precision-recall曲线值下的面积。就我而言,第 1 类是稀有类,第 0 类是另一个类。

我训练了两个模型。第二个模型我使用过采样方法来平衡训练数据集。两个模型中从未接触过测试数据集。以下是测试数据集的记录值。

  1. 使用不平衡数据集进行训练。

    召回率:0.629,精确召回率:0.8828

  2. 使用平衡数据集进行训练

    召回率:0.8426,精确召回率:0.884

我的问题是:

  1. 为什么召回值提高了,而precision-recall曲线没有变化?

  2. 我可以说如果我选择一个合适的阈值,第一个模型和第二个模型一样好?我应该关注哪个评估矩阵?

  3. 我可以肯定地说这个模型可以容忍不平衡的数据集,因为精度曲线下的区域变化不大吗?

解决方法

为什么recall值提高了,但precision-recall曲线没有变化?

尝试在同一图中绘制两个训练片段的精度-召回率曲线。那么你一定会明白为什么会发生这种情况。并澄清一下,对于 TP 的情况,[1 或 0] 类是什么?。如果它是 1 那么它是有道理的,因为类平衡通常也会增加 FP 值,我们调用平衡来增加分布中稀有类的召回值。

我可以说,如果我选择一个合适的阈值,第一个模型和第二个模型一样好吗?

这是我们进行混淆矩阵分析的原因之一。特别是在二元分类的情况下,它计算与边界[1和0]相关的损失,与实际的类分离值无关。因此,您可以用类分离值检查recall和recall-precision AUC值。

我应该关注哪个评估矩阵?

这取决于您的案例领域;考虑所需的灵敏度和特异性值,选择最佳模型。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。