そこで、単純な協調フィルターに基づいた投稿をユーザーに推奨したいと思います。フィルタは次のように機能するはずです
- 私が好きな投稿で私に最も似ている上位n人のユーザーを見つけます(私のメンターグループ)
- このメンターグループの中で、私がまだ気に入っていない最も人気のある投稿を見つけてください
だから私は最初の部分を持っています、これは私に私のメンターを与えるでしょう
START me=node:node_auto_index(uname = "mike")
MATCH me-[:LIKES]->posts<-[:LIKES]-mentors
RETURN person.uname, count(posts)
ORDER BY count(posts) DESC LIMIT 20;
そして第2部では、これらのメンターの中から、私がまだ気に入っていない最も気に入った投稿を見つけます。
この2番目の部分を暗号で、またはより効率的な場合はおそらくグレムリンでどのように実行しますか。あるクエリ結果を別のクエリ結果にフィードする必要がある2つの部分からなるクエリでしょうか、それともすべてを1つのクエリにまとめることができますか?