Neo4j 做推薦 (4)—— 基于內(nèi)容的過濾(續(xù))

Neo4j 做推薦 (2)—— 基于內(nèi)容的過濾前文只是簡單描述了內(nèi)容過濾的概念和簡單演示。

在此,我們將從具體實例來介紹如何使用基于內(nèi)容的過濾方法來給用戶推薦電影。

首先,基于共同類型的相似性,如果用戶看過《Inception》,我們就可以給用戶推薦和該電影具有相同分類(流派)的電影。

// Find similar movies by common genres

MATCH (m:Movie)-[:IN_GENRE]->(g:Genre)<-[:IN_GENRE]-(rec:Movie)

WHERE m.title = "Inception"

WITH rec, COLLECT(g.name) AS genres, COUNT(*) AS commonGenres

RETURN rec.title, genres, commonGenres

ORDER BY commonGenres DESC LIMIT 10;

通過上面的Cypher語句,可以很清晰地看到,篩選出 m 的條件是title 屬性為“Inception”,然后通過關(guān)系(:IN_GENRE)找出流派(g:Genre),此處注意關(guān)系的方向是 -> 。找出?(g:GENRE) 之后,反向查詢 <- 有該流派的所有電影。

在結(jié)果返回中,COLLECT 首先把流派名放入一個集合中,然后計算所屬流派的數(shù)量(此數(shù)量是電影m 和電影rec 具有相同流派的數(shù)量)。返回結(jié)果再排個序,取最多的前10條。

Neo4j 做推薦 (1)—— 基礎(chǔ)數(shù)據(jù)

Neo4j 做推薦 (2)—— 基于內(nèi)容的過濾

Neo4j 做推薦 (3)—— 協(xié)同過濾

Neo4j 做推薦 (4)—— 基于內(nèi)容的過濾(續(xù))

Neo4j 做推薦 (5)—— 基于類型的個性化建議

Neo4j 做推薦 (6)—— 加權(quán)內(nèi)容算法

Neo4j 做推薦 (7)—— 基于內(nèi)容的相似度量標(biāo)準(zhǔn)

Neo4j 做推薦 (8)—— 協(xié)同過濾(利用電影評級)

Neo4j 做推薦 (9)—— 協(xié)同過濾(人群的智慧)

Neo4j 做推薦 (10)—— 協(xié)同過濾(皮爾遜相似性)

Neo4j 做推薦 (11)—— 協(xié)同過濾(余弦相似度)

Neo4j 做推薦 (12)—— 協(xié)同過濾(基于鄰域的推薦)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容