点击收入预测模型

Click revenue prediction model

我正在尝试建立一个电子商务模型来预测来自在线营销渠道(例如 google 购物)的单次点击收入。点击是针对产品详细信息页面的,因此我的训练数据包括产品详细信息,例如:价格、交货时间、类别、制造商。每一次历史点击也都附加了收入。问题是超过 95% 的点击收入为零。

历史数据如下所示:

click_id | manufacturer | category | delivery_time | price | revenue
1 |man1 | cat1 | 24 | 100 | 0
2 |man1 | cat1 | 24 | 100 | 0
3 |man1 | cat1 | 24 | 100 | 0
4 |man1 | cat1 | 24 | 100 | 120
5 |man2 | cat2 | 48 | 200 | 0

如您所见,两个数据点可能(并且很常见)具有完全相同的特征和目标变量(收入)的非常不同的值。例如,前 4 个数据点具有相同的特征,并且只有第 4 个有收入。理想情况下,我的模型将在具有相同特征的测试示例上预测这 4 次点击(即 30)的平均收入。

在我尝试应用模型之前,我的问题是关于数据表示。我相信我有两个选择:

非常欢迎任何关于如何处理这个问题的建议。

由于 95% 的数据收入为零,您可能需要对记录进行一些处理,例如抽样。按照目前的构建,您的模型可以预测 "no" 100% 的时间,并且仍然是 95% 的准确率。您需要针对您希望模型中存在哪种类型的错误做出设计选择。您是否希望它成为 "as accurate as possible",因为它错过了尽可能少的记录,错过了尽可能少的收入记录,或者避免错误地将记录分类为收入,如果它们实际上不是(阅读更多关于类型 1 & 2 错误,如果你好奇的话)

您可以做出几个高级选择:

1) 您可能会对数据进行过度采样。如果您有大量记录并希望确保您捕捉到产生收入的特征,您可以复制这些记录或进行一些记录工程以创建与产生收入的记录非常相似的 "fake" 记录。这将增加您的模型捕捉到推动收入的因素的可能性,并使其在将其应用于真实数据时更有可能重视这些特征

2) 您可以使用模型来预测概率,然后缩放概率。例如,您可能会查看您的模型并说任何产生收入的可能性大于 25% 的东西实际上都是 "positive" 案例

3) 您可以首先尝试对数据进行聚类,如上所述,然后尝试 运行 对 "summed" 值而不是单个记录的分类算法。

4) 是否有一些片段的命中率大于 5%?也许在这些子集上构建模型。

这些都是模型设计选择,没有 right/wrong 答案 - 这仅取决于您要实现的目标。

已根据您的回复进行编辑 回归可能会受到异常值的显着影响,所以我会有点小心地尝试使用回归来预测美元金额。您的大部分变量很可能具有较小的系数,并且截距将反映平均支出。您应该记住的另一件事是交互项。例如,如果您是男性,您可能更有可能购买,如果您的年龄在 25-30 岁之间,则更有可能购买,但同时是男性和 25-30 岁会产生巨大的影响。

我提出分类的原因是您可以尝试进行分类以查看谁可能购买,然后再应用美元金额。这种方法会阻止您在每笔交易中拥有基本相同的非常小的金额。