我正试图为eCommerce建立一个模型,以预测通过在线营销渠道(如谷歌购物)获得的一次性点击的收入。点击是针对产品详细信息页面,所以我的培训数据包括产品细节,如:价格,交货时间,类别,制造商。每一次历史性的点击都会增加收入。问题是,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次)。
在尝试应用模型之前,我的问题是关于数据表示的。我相信我有两个选择:
任何关于如何处理这个问题的建议都是非常欢迎的。
发布于 2016-05-09 22:09:19
由于95%的数据收入为零,您可能需要对记录做些什么,例如抽样。按照目前的结构,你的模型可以100%的预测“否”,并且仍然是95%的准确。您需要对您希望在模型中出现的错误类型做出设计选择。你希望它“尽可能准确”吗?因为它漏掉了最少可能的记录,丢失了尽可能少的收入记录,或者避免错误地将记录归类为收入(如果你好奇的话,请阅读更多关于类型1&2错误的信息)。
你可以做出几个高层次的选择:
1)你可以对你的数据进行过度抽样。如果您有大量的记录,并且希望确保您捕获了创收功能,您可以复制这些记录,或者进行一些记录工程,以创建与创收记录非常相似的“假”记录。这将增加您的模型捕捉到驱动收入的因素的可能性,并且当您将这些特性应用于实际数据时,它将非常有可能对这些特性进行评估。
2)你可以用一个模型来预测概率,然后衡量你的概率。例如,您可以查看您的模型,并说任何大于25%的可能产生收入的情况实际上都是“积极的”情况。
3)您可以尝试首先对数据进行聚类,就像前面提到的那样,并尝试对“求和”值而不是单个记录运行分类算法。
( 4)是否有超过5%可能击中的部分?也许可以在这些子集上建立一个模型。
这些都是模型设计的选择,没有正确或错误的答案--这取决于你想要实现什么。
按您的响应编辑的回归可能会受到异常值的显著影响,所以我会稍微小心地尝试使用回归来预测美元的数量。很可能大部分变量都有很小的系数,而截距则反映了平均花费。你应该记住的另一件事是交互条件。例如,如果你是男性,你可能更有可能买东西,如果你在25-30岁的话,你更有可能买东西,但无论是男性还是25-30岁,都会有很大的影响。
我提出分类的原因是,你可以尝试做一个分类,看看谁可能购买,然后再应用美元金额。这种方法将阻止您在本质上对每个事务拥有相同的非常小的金额。
https://stackoverflow.com/questions/37120693
复制相似问题