对左删失数据使用标准机器学习工具

机器算法验证 r 回归 机器学习 审查
2022-03-05 23:13:27

我正在开发一个预测应用程序,其目的是让进口商预测其分销商客户网络对其产品的需求。只要有足够的库存来满足需求,销售数据就可以很好地代表需求。但是,当库存降至零时(我们希望帮助客户避免这种情况),我们不知道我们错过了多少目标。如果供应充足,客户会进行多少销售?使用销售额作为简单目标变量的标准基于回归的 ML 方法将对时间、我的描述性变量和需求之间的关系产生不一致的估计。

Tobit 建模是解决问题的最明显方法:http ://en.wikipedia.org/wiki/Tobit_model 。我想知道随机森林、GBMS、SVM 和神经网络的 ML 适应,它们也解释了数据的左手审查结构。

简而言之,我如何将机器学习工具应用于左删失回归数据,以获得对我的因变量和自变量之间关系的一致估计?首选是 R 中可用的解决方案,其次是 Python。

干杯,

亚伦

1个回答

简而言之,我如何将机器学习工具应用于左删失回归数据,以获得对我的因变量和自变量之间关系的一致估计?

如果你能写出一个可能性并将符号翻转为负号,那么你就有了一个可用于许多机器学习模型的损失函数。在梯度提升中,这通常被称为模型提升参见例如增强算法:正则化、预测和模型拟合

作为 Tobit 模型的示例,请参阅Gradient Tree Boosted Tobit Models for Default Prediction论文。该方法应该可以与论文中提到的 scikit-learn 分支一起使用。

相同的想法用于右删失数据,例如,R 中的gbmmboost包用于右删失数据。

上述想法可以应用于其他方法(例如,神经网络)。但是,使用梯度提升特别容易,因为您只需要能够计算损失函数的梯度(负对数似然)。然后你可以应用你喜欢的任何方法来拟合负梯度L2损失。