我一直在阅读协作过滤来构建推荐引擎,这些例子往往围绕着电影这样的东西,用户对他们看过的电影进行评分,然后用它来查找他们可能喜欢的其他电影。
但在事件的上下文中,这似乎没有什么意义,要求用户对事件进行评分并不是特别有帮助,因为他们只能在看到事件后才能对其进行评分,并且假设这是一个一次性事件,到那时已经结束,您不能再向任何人推荐它。
我知道这样做的一个选择是,如果他们买了一张门票,就给他们1分,如果他们没有买到,就给0分。但这也不是很理想,因为有些人可能会买到一张门票,讨厌它,不想被推荐任何类似的东西。此外,它还假设您知道用户何时购买了可能并不总是可能的东西的门票。
那么,有没有一种很好的方式来对事件进行协同过滤,如果没有,是否有其他更适合的算法?
发布于 2011-10-21 03:01:35
我不确定我会驳回你描述电影排名的方式,altogether...but也许你需要完善你收集的数据。
似乎你的基本方法是基于“其他喜欢X的人也喜欢Y的人”来推荐。好吧,X和Y不一定是精确的东西。也许如果你给X评级,这个评级就会以某种方式应用于X的子组件。在电影的情况下,这可能是主演,导演和类型。在夜间表演的情况下,这可能是行为和表演者的类型。
因此,即使你的用户可能会对事件进行评分,你也可以根据这些“标签”或子组件进行推荐。例如,“其他喜欢ComedianA的人也喜欢ComedianB,”或者“很多喜欢ComedianA的人都会去看ComedianB。”
https://stackoverflow.com/questions/7840609
复制相似问题