协同过滤简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息

MATCH (m:Movie {title: "Crimson Tide"})<-[:RATED]-(u:User)-[:RATED]->(rec:Movie)
RETURN rec.title AS recommendation, COUNT(*) AS usersWhoAlsoWatched
ORDER BY usersWhoAlsoWatched DESC LIMIT 25

执行结果是:

Neo4j 做推荐 (3)—— 协同过滤

分析:

此Cypher 语句的意思是:找出对电影《Crimson Tide》 进行过评分的用户,还对哪些电影进行过评分?并对这些被评分的电影,进行评分次数的累加并排名。

这就是通过简单的协同过滤,来看拥有相同兴趣的用户,他们还有哪些共同的喜好。

当然目前这样处理,还不够严谨,后续我们会添加更多的条件或者指标权重加以调整。

相关文章:

  • 2021-09-13
  • 2021-10-18
  • 2022-12-23
猜你喜欢
  • 2021-10-15
  • 2021-11-28
  • 2021-04-06
相关资源
相似解决方案