不清楚您是说 FN 或 FP 的成本更高,您只在声明中提到 FN。认为您的意思是 FN 的成本更高,而正数意味着 1。
一般来说,如果对少数情况的错误预测成本更高 (FN),您应该对少数情况进行更高的采样或对多数情况进行更低的采样,以使比率更接近 1:1。在预测少数情况时,平衡将有助于提高模型的准确性。预测多数情况的准确性已经更高,因为有更多的样本可用于该情况。欠采样、过采样和 SMOTE 都是实现这种样本平衡的有用方法,并且每种方法都有自己的长处和短处。
但是,做这种样本平衡会很快增加 FP 的数量,因此即使 FP 的成本可能较低,但成本会迅速增加。例如,您每减少 1 FP,您可能会多获得 10 或 20 FN
做完这个平衡后,你就可以开始调整权重,以获得最佳的 FN 与 FP 的比率,尝试使总成本尽可能低。
最小化:总成本 = FN x cost_of_fn + FP x cost_of_fp
不确定是否有数学方程可以解决这个问题,但您可以迭代运行,更改 2 个类的权重比,并使用混淆矩阵计算总成本以获得 FN 和 FP,并绘制成本结果(y ) 与重量比 (x) 的关系,寻找最小值。我将从等于您的成本比率的比率开始。
示例:如果 FN 的成本为 10 美元,FP 的成本为 1 美元,那么少数:多数类别的比率应为 10:1
一个简单的计算显示了如何根据计算的权重 w(i) 和训练集中的示例数(在任何上采样或下采样之前)n(i) 推导出所需的 i 类组合:μ(i)。这个公式如下:

参考:https ://medium.com/rv-data/how-to-do-cost-sensitive-learning-61848bf4f5e7