阈值和混淆矩阵

假设您有一个用于检测垃圾邮件的逻辑回归模型, 预测 0 到 1 之间的值,表示 电子邮件是垃圾邮件。预测结果为 0.50 表示电子邮件被 则预测值为 0.75 即表示有 75% 的可能性是该电子邮件是垃圾邮件, 依此类推。

您想在电子邮件应用中部署此模型, 单独的邮件文件夹中但为此,您需要将模型的原始 数值输出(例如,0.75)归入以下两类之一:“垃圾内容”或“非 垃圾内容。”

要进行此类转换,您需要选择一个阈值概率, 分类阈值。 然后分配概率高于阈值的样本 正类别、 要测试的类(此处为 spam)。具有较低权重的 概率分配给负类别 替代类(此处为 not spam)。

点击此处详细了解分类阈值

您可能想知道:如果预测得分等于 分类阈值(例如 0.5 分,其中 分类阈值也为 0.5)?针对此支持请求的处理 取决于为分类选择的特定实现, 模型。例如,Keras 如果得分和阈值, 相同,但其他工具/框架可以处理这种情况 。

例如,假设模型将一封电子邮件的评分为 0.99,预测 该邮件有 99% 概率是垃圾邮件, 0.51,即预测其为垃圾内容的可能性为 51%。如果您将 分类阈值设为 0.5,则模型会将这两封电子邮件分类为 垃圾内容。如果您将阈值设为 0.95,则只有评分为 0.99 的电子邮件会 被归类为垃圾内容

虽然 0.5 看起来似乎是一个直观的阈值,但如果 一种错误分类的费用高于另一种,或者 类别不平衡。只有 0.01% 的电子邮件是垃圾邮件或错误举报的电子邮件 不如让垃圾邮件进入收件箱 为模型认为有至少 50% 的可能性属于垃圾邮件的内容添加标签 垃圾内容会产生不良后果

混淆矩阵

概率得分不是真实的,或者 标准答案。 二元分类器的每个输出都有四种可能的结果。 对于垃圾邮件分类器示例,如果您将标准答案列为列, 将模型的预测结果显示为行,下表称为 混淆矩阵是 结果:

实际正值 实际负值
预测为正例 真正例 (TP):垃圾邮件 正确分类为垃圾邮件的电子邮件。这些是垃圾邮件 自动发送到垃圾邮件文件夹。 误报 (FP):非垃圾邮件被错误分类为 垃圾内容。这些是 最终被放入垃圾邮件文件夹中。
预测为负例 错误 negative (FN):被错误分类为非垃圾邮件的垃圾邮件。这些是垃圾内容 电子邮件 被垃圾邮件过滤器拦截并进入收件箱。 真负例 (TN):A 被正确分类为非垃圾邮件的电子邮件。 这些是系统正常发送的电子邮件 收件箱

请注意,每行中的总数表示了所有预测的正例 (TP + FP), 所有预测负例 (FN + TN),无论有效性如何。每个 列给出了所有实数 (TP + FN) 和所有实负例 (FP + TN),而不考虑模型分类。

当实际正类别的总数不接近实际正类别的总数时 则数据集为 不平衡。实例 数据集不均衡的特征可能是有数千张云彩照片, 而您感兴趣的稀有云类型(如卷云) 。