協(xié)同過濾:
使用網(wǎng)絡(luò)中其他用戶的首選項,評級和操作來查找要推薦的項目。
(買這個東西的用戶,還買了那個東西)
用戶Misty Williams的所有評分
// Show all ratings by Misty Williams
MATCH (u:User {name: "Misty Williams"})
MATCH (u)-[r:RATED]->(m:Movie)
RETURN *;
查找Misty的平均評分:
// Show all ratings by Misty Williams
MATCH (u:User {name: "Misty Williams"})
MATCH (u)-[r:RATED]->(m:Movie)
RETURN avg(r.rating) AS average;
哪些是Misty 評分超過平均分的電影:
// What are the movies that Misty liked more than average?
MATCH (u:User {name: "Misty Williams"})
MATCH (u)-[r:RATED]->(m:Movie)
WITH u, avg(r.rating) AS average
MATCH (u)-[r:RATED]->(m:Movie)
WHERE r.rating > average
RETURN m;
由此,通過計算Misty 評過分的電影,而且找出受到他好評的電影,推薦給其他用戶,就是協(xié)同過濾最基本的做法。
Neo4j 做推薦 (1)—— 基礎(chǔ)數(shù)據(jù)
Neo4j 做推薦 (4)—— 基于內(nèi)容的過濾(續(xù))
Neo4j 做推薦 (6)—— 加權(quán)內(nèi)容算法
Neo4j 做推薦 (7)—— 基于內(nèi)容的相似度量標準
Neo4j 做推薦 (8)—— 協(xié)同過濾(利用電影評級)
Neo4j 做推薦 (9)—— 協(xié)同過濾(人群的智慧)
Neo4j 做推薦 (10)—— 協(xié)同過濾(皮爾遜相似性)