/var/log/messages

Aug 7, 2018 - 1 minute read - Comments - recommendation

Context Aware Recommendation (3)

このところ云々している以下のドキュメントですが

レコメンドな Gremlin クエリをでっちあげてみました。

Query 3 の一部の以下なあたり。

MATCH (c)-[]->(n2)-[:REST_CUISINE]->(p:Cusine {name: "Mexican"})
WITH COLLECT(n2) AS pn, v1
UNWIND pn AS n3
MATCH (c)-[]->(n3)-[:FEATURES]->(q1:Features {price: "medium", smoking: "none"})
WITH COLLECT(n3) AS pn

UNWIND pn AS n4
WITH DISTINCT n4
MATCH (c)-[]->(n4)-[:ADDRESS]-(k)
RETURN n4.name AS Restaurant, k.city AS City;

以下が出てきました。

g.V().hasLabel(':CUISINE').has('Cuisine', 'Mexican').in().
  out(':FEATURES').has('Smoking_Area', 'none').has('Price', 'medium').
  in().valueMap()

ラベルが微妙に違いますがご容赦下さい。

とりあえず

データの持ち方てきには、node な属性で対象かどうかを判断、ではなくて edge を跨いで別な node に判断材料を持っておくのが良いのかどうか。

Context Aware Recommendation (2) ゴキゲン中飛車本

comments powered by Disqus