我正在做一个推荐系统(某种),我必须推荐用户在下一次购买时最有可能购买的商品。不管他是不是已经买了这个东西。
考虑到这一点,我将这个问题作为一个多类分类问题来处理,有4000种类别(用户可以购买的不同商品的数量)。
在维基百科上搜索时,我找到了此链接,并决定使用One vs -rest方法。因此,如果用户以前购买了每个项目(所以我有大约4000个协变量),我决定为每个项目训练一个随机森林,使用作为协变量标志。然后,我将决定一条规则,以决定推荐的项目(类似的一个有最大的可能性购买或最大的电梯)。
我的问题是训练时间太长了(每项训练5到10分钟):
> 5*4000
[1] 20000
> 20000/60
[1] 333.3333
> 333.3333/24
[1] 13.88889 所以在最好的情况下,训练需要两周时间。
我想知道我使用的方法是否正确,以及是否还有更快的方法来实现这一点。
发布于 2016-07-01 22:29:21
你可能会更幸运一个朴素的贝斯分类器。它可以处理大量的目标类,并且训练速度相对较快,因为您基本上只是在预测时计算一组单变量统计数据。不过,如果你担心的是“他们只在买鞋的时候才买鞋带,而不买擦鞋的时候才买鞋带”和“如果他们买了鞋就经常买鞋带”,那么它可能会让人失望。你可能也想加入一个时间组件,但我不知道你在做什么。
https://datascience.stackexchange.com/questions/12546
复制相似问题