繁体   English   中英

AQL 和图遍历:产品推荐示例

[英]AQL and Graph Traversal: Product recommendation example

我一直在学习 Arangodb 和使用 AQL 的图形遍历,我也看过一些可以在网上找到的例子,比如飞行路径、演员和电影,但我无法全神贯注地写出我最初认为会很简单的东西产品推荐实验,根据其他客户(进行过类似购买)的购买,向客户推荐他/她未购买的产品。

到目前为止,这是我设法实现的目标,检索与当前客户购买了相同产品的其他客户的产品

FOR products IN 1..1 OUTBOUND 'customers/118685' bought
    FILTER products._id LIKE "products/%" 
    FOR other_buyers IN 1..1 INBOUND products bought
    FILTER other_buyers._id != 'customers/118685' 
    FOR other_buyers_products IN 1..1 OUTBOUND other_buyers bought
    return other_buyers_products

此外,我还没有达到可以将推荐细化到与当前客户进行过更多类似购买(即基于更高计数)的客户的阶段。 感谢建议或有用的例子。

这是一个非常开放的问题。 一个更精确的问题会导致更多更好的答案......但我会试一试。

您可以以更简洁的方式表达您当前的查询:

FOR product IN 3..3 ANY 'customers/1' purchases
RETURN DISTINCT product

可以使用COLLECT轻松添加计算产品的出现次数:

FOR product IN 3..3 ANY 'customers/1' purchases
COLLECT pid = product._id WITH COUNT INTO count
RETURN { pid, count }

这仍然是一种非常幼稚的做法。 你最终会得到像“你曾经买过香蕉,你应该用卫生纸”这样的建议,因为每个人最终都会买那些东西。 您不仅可以保存客户购买的产品,还可以保存购买时间,从而改善结果。 然后您将能够找出经常一起购买的产品,例如手电筒和电池。

在 inte.net 上四处寻找更多灵感,请点击此处

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM