假设您有一个用于检测垃圾邮件的逻辑回归模型, 预测 0 到 1 之间的值,表示 电子邮件是垃圾邮件。预测结果为 0.50 表示电子邮件被 则预测值为 0.75 即表示有 75% 的可能性是该电子邮件是垃圾邮件, 依此类推。
您想在电子邮件应用中部署此模型,
单独的邮件文件夹中但为此,您需要将模型的原始
数值输出(例如,0.75
)归入以下两类之一:“垃圾内容”或“非
垃圾内容。”
要进行此类转换,您需要选择一个阈值概率,
分类阈值。
然后分配概率高于阈值的样本
正类别、
要测试的类(此处为 spam
)。具有较低权重的
概率分配给负类别,
替代类(此处为 not spam
)。
点击此处详细了解分类阈值
您可能想知道:如果预测得分等于 分类阈值(例如 0.5 分,其中 分类阈值也为 0.5)?针对此支持请求的处理 取决于为分类选择的特定实现, 模型。例如,Keras 如果得分和阈值, 相同,但其他工具/框架可以处理这种情况 。
例如,假设模型将一封电子邮件评分为 0.99,预测 该邮件有 99% 概率是垃圾邮件, 0.51,即预测其为垃圾内容的可能性为 51%。如果您将 则模型会将这两封电子邮件分类为 垃圾内容。如果您将阈值设为 0.95,则只有评分为 0.99 的电子邮件会 被归类为垃圾内容
虽然 0.5 看起来似乎是一个直观的阈值,但如果 一种错误分类的费用高于另一种,或者 类别不平衡。只有 0.01% 的电子邮件是垃圾邮件或错误举报的电子邮件 不如让垃圾邮件进入收件箱 为模型认为有至少 50% 的可能性属于垃圾邮件的内容添加标签 垃圾内容会产生不良后果
混淆矩阵
概率得分不是真实的,或者 标准答案。 二元分类器的每个输出都有四种可能的结果。 对于垃圾邮件分类器示例,如果您将标准答案布置为列 将模型的预测结果显示为行,下表称为 混淆矩阵是 结果:
实际正值 | 实际负值 | |
---|---|---|
预测为正例 | 真正例 (TP):垃圾邮件 正确分类为垃圾邮件的电子邮件。这些是垃圾邮件 自动发送到垃圾邮件文件夹。 | 误报 (FP):非垃圾邮件被错误分类为 垃圾内容。这些是 最终被放入垃圾邮件文件夹中。 |
预测为负例 | 错误 negative (FN):被错误分类为非垃圾邮件的垃圾邮件。这些是垃圾内容 电子邮件 被垃圾邮件过滤器拦截并进入收件箱。 | 真负例 (TN):A 被正确分类为非垃圾邮件的电子邮件。 这些是系统正常发送的电子邮件 收件箱 |
请注意,每行中的总数表示了所有预测的正例 (TP + FP), 所有预测负例 (FN + TN),无论有效性如何。每个 列给出了所有实数 (TP + FN) 和所有实负例 (FP + TN),而不考虑模型分类。
当实际正类别的总数不接近实际正类别的总数时 则数据集为 不平衡。实例 数据集不均衡的特征可能是有数千张云彩照片, 而您感兴趣的稀有云类型(如卷云) 。
阈值对真正例、假正例和假负例的影响
不同的阈值通常会产生不同的 true 值和 false 值 数量之和。以下视频介绍了 情况。
请尝试自行更改阈值。
此 widget 包含三个玩具数据集:
- 分开式:正例和负例通常属于同一类 差异很好,大多数正例的分数高于 反例。
- 不分隔:许多正例的得分低于 而许多负例的得分高于 正例。
- 不平衡:仅包含几个正类别的样本。