预测租期长度的回归

数据挖掘 Python 神经网络 预测建模 scikit-学习
2022-03-06 14:02:28

我目前正在从事一个涉及预测租期长度的项目。到目前为止,我已经设法处理数据并将我的随机森林模型(通过 Python 中的 sklearn)修剪到以下准确度级别(以天为单位):

Train MAE: 131
Train R^2: 0.906
Test MAE: 259 (using cross-validation)
Test R^2: 0.651

在此处输入图像描述

虽然该模型对于该行业来说是不错的,但还有更多的性能可以从中挤出。它目前高估了结果,并且对 imo 的测试数据的准确性很差。

我想进一步开发一种神经网络方法,因为我最初实现的 MLP 回归器似乎很有希望:

Train MAE: 301
Train R^2: 0.582
Test MAE: 338 (using cross-validation)
Test R^2: 0.522

在此处输入图像描述

我的问题是,除了使用 GridSearch 在 sklearn 中使用 MLPRegression 函数之外,我如何改进预测结果(使用 Python)?在这种情况下是否有任何其他模型可能有用?(我也尝试过决策树,梯度提升)

如果相关,我的数据集包含自 2008 年以来的约 5000 个个人租赁条目,其中包含:租赁日期、租金、维修成本、财产信息和更换、客户信息等,目前有 41 个变量。

1个回答

您可能已经这样做了,但如果您的目标值是正整数,则可能值得转换您的输出层,以限制其采用适当的值范围。

租期长度值可能具有一些可识别的分布,可以通过已知的统计过程(泊松过程、生存分析等)有效地建模,因此您可以使用 NN 来参数化,而不是使用您的 NN 直接预测租期长度相关的概率分布,并在输出层中对该分布进行点估计。