我目前正在为一项学校作业做一些研究。我有两个数据流,一个是用户评级,另一个是搜索,点击和订购历史记录(二进制数据)的一个网站。
我发现,如果使用评级数据,协作过滤是最好的算法系列。我发现并研究了这些算法:
基于记忆的
- pearson correlation
- constrainted pearson
- vector similaritys (cosinus)
- Mean squared difference
- weighted pearson
- correlation threshold
- max number of neighbours
- weighted by correlation
- Z-score normalization
- adjusted cosine
- maximum number of neighbours
基于模型的
现在我正在寻找一种使用二进制数据的方法,但是我很难弄清楚是否有可能使用二进制数据而不是用这些算法对数据进行评级,或者我应该考虑的是不同的算法系列?
因为我有诵读困难,所以我事先为拼写错误道歉,而且我不是writer.Thanks marc_s的本地人,因为我帮助你。
发布于 2015-09-21 20:30:29
看看数据挖掘算法,比如关联规则挖掘(也就是市场篮子分析)。您在推荐系统中遇到了一个棘手的问题:一元和二进制数据很常见,但是最好的个性化算法并不能很好地处理它们。评级数据可以表示对单个用户项目的偏好;例如,我将这部电影评为5颗星中的4颗。但是使用二进制数据,我们有最小粒度的评级数据:我要么喜欢或不喜欢某物,要么已经或没有消费它。注意,不要混淆二进制数据和一元数据:一元数据意味着用户使用的信息(编码为1,与二进制数据非常类似),但是没有关于用户是否不喜欢或使用某些东西的信息(这些信息被编码为NULL,而不是二进制数据的0)。例如,你可能知道一个人浏览了10个网页,但如果她知道其他网页是可用的,你就不知道她会怎么想。这是一元数据。您不能从NULL中假定任何首选项信息。
https://stackoverflow.com/questions/32623809
复制相似问题