正确的机器学习方法

数据挖掘 lstm 随机森林 rnn xgboost 正则化
2022-02-25 21:16:48

我想了解您对我一直面临的问题的看法。我有日常级别的产品销售信息(大约 4 年)。销售受季节性、星期几、“质量”、营销支出等典型因素的影响(有时事前不可见,这使其成为混杂变量,可能导致因果推理类型方法或潜在变量方法)。

然而,主要挑战是每个产品只能销售 8-12 周(产品生命周期短,易腐烂)。这就是这些产品的整个生命周期。问题是在特定的一天预测单个产品的销售额是多少,然后将它们全部加起来以找到供应商(销售这些产品的人)的总销售额。我们知道将推出什么类型的产品,但我们不知道产品的确切质量或事前营销支出。我们通常知道其他变量,例如市场潜力、发布日期、假期。

请注意,产品的销量在第 1-2 周内很高,然后随着时间的推移而下降(衰减因子),并且并非所有产品都相似,也就是说,无法成功地对曲线进行平均以产生具有代表性的曲线。

注意:我们已经尝试了基于回归的方法(具有高误差)以及 Kaggle 最喜欢的 XGBoost 算法(和 RF)来让模型学习非线性,但问题是短生命周期会产生很多异常值数据点(这意味着从业务角度来看它们实际上不是异常值)。如果它们是正确的方法,可以尝试 RNN、LSTM 等。

提前致谢!!

1个回答

所以本质上,你有产品 i,每个产品都有一个短时间维度 t。不清楚这是什么,但如果你(看起来)在整个时间(以及产品)上汇集,你就会混淆不同的产品 i。如果有关于如何看待每个产品 i 的质量(确定需求)的任何信息,您可以根据产品 i 的质量进行区分,然后查看需求(受质量控制)如何随时间(提供产品)变化. 所以imo你不应该随着时间的推移堆叠产品,而是看看你是否可以解释每个单一产品的需求是如何确定的。本质上,您有许多短时间序列。您应该查看这些时间序列之间销售水平的驱动因素是什么。