我正在尝试提出预测收款公司付款金额的最佳方法。付款后,因变量仅为非零。可以理解的是,由于绝大多数人无法联系到或无法偿还债务,因此存在大量的零。
债务金额和还款可能性之间也存在非常强烈的负相关关系。通常,我会创建一个逻辑模型来预测支付/不支付的可能性,但这不幸的结果是找到了余额最低的人。
有没有一种方法可以将后勤支付/非支付模型与预测支付金额的单独模型结合起来?
我正在尝试提出预测收款公司付款金额的最佳方法。付款后,因变量仅为非零。可以理解的是,由于绝大多数人无法联系到或无法偿还债务,因此存在大量的零。
债务金额和还款可能性之间也存在非常强烈的负相关关系。通常,我会创建一个逻辑模型来预测支付/不支付的可能性,但这不幸的结果是找到了余额最低的人。
有没有一种方法可以将后勤支付/非支付模型与预测支付金额的单独模型结合起来?
Answers:
gui11aume建立两阶段模型的想法是正确的方法,但是,您需要考虑设置的特殊困难,即债务金额与付款可能性之间非常强烈的负相关性
在这里建立两阶段模型的主要问题是,第二个模型(用于预测债务)仅基于“非零”模型,是建立在最有可能的非随机样本上的(即整个数据集),但组合模型必须再次应用于整个总体。这意味着第二个模型将不得不对它从未见过的部分数据进行预测,从而导致准确性下降。这称为样本选择偏差(从ML角度进行概述,我推荐Smith和Elkan 提出的贝叶斯网络推理拒绝框架)。
该KDD杯-98处理类似的问题,其中一个要预测一个退伍军人组织的供体是否有可能再次捐了多少,很可能捐赠。在此数据集中,再次捐款的可能性也与预期的金额负相关。样品选择偏差也出现了。
比安卡·扎德罗兹尼(Bianca Zadrozny)和查尔斯·埃尔坎(Charles Elkan)可以从“当成本和概率都不为人知的情况下学习和制定决策”中找到最令我印象深刻的解决方案。他们基于Heckman校正创建了一个成本敏感的解决方案,据我所知,这是校正(样本)选择偏差的第一种系统方法。
这是一个非常好的问题(+1)。
为什么不将0视为NA?
您可以添加一个虚拟响应,以指示是否已收回任何钱(即,当值为0时等于0,而当值为正时等于1),并使用相同的预测变量在此二进制响应上拟合逻辑模型。您将适合2个模型:使用所有数据点的二进制响应和仅使用非零数据点的连续响应(符合将0视为NA的想法)。
您仍然可以使用两组参数测试每个模型中参数的无效性并计算预期增益。