Python 减少ML模型的误报

Python 减少ML模型的误报,python,tensorflow,machine-learning,precision-recall,Python,Tensorflow,Machine Learning,Precision Recall,在训练ML模型时,有没有一种很好的方法来限制误报 假设您从一个具有两个类的平衡数据集开始。您为二元分类开发了一个ML模型。由于任务简单,输出分布将分别在0和1处达到峰值,并在0.5左右重叠。然而,你真正关心的是,你的假阳性率是可持续的,不能超过一定数量。 因此,在pred>0.8的情况下,您最多只需要一个类 目前,我正在对两个类进行加权,以惩罚类“0”上的错误 正如预期的那样,它确实会降低pred>0.8区域的fpr,当然,它会恶化1类的召回 我想知道是否有其他的方法来执行这一点 谢谢< P>根

在训练ML模型时,有没有一种很好的方法来限制误报

假设您从一个具有两个类的平衡数据集开始。您为二元分类开发了一个ML模型。由于任务简单,输出分布将分别在0和1处达到峰值,并在0.5左右重叠。然而,你真正关心的是,你的假阳性率是可持续的,不能超过一定数量。 因此,在pred>0.8的情况下,您最多只需要一个类

目前,我正在对两个类进行加权,以惩罚类“0”上的错误

正如预期的那样,它确实会降低pred>0.8区域的fpr,当然,它会恶化1类的召回

我想知道是否有其他的方法来执行这一点


谢谢

< P>根据你的问题,你可以考虑一类分类支持向量机。本文可能很有用:。本文还介绍了为什么一类分类是更好地考虑,而不是一些其他经典技术,如过采样/欠采样或类加权。当然,这取决于您想解决的问题。

谢谢!那是一篇有趣的文章。我已经尝试过异常检测,但我认为我的数据集有点奇怪。这方面的性能还可以,但对于相同的fpr,具有不平衡的简单模型在召回中至少可以做得更好约10%。我将看一看关于异常值检测的其他技术,它们看起来很有趣
history = model.fit(..., class_weight={0:5, 1:1}, ...)