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

Graph AQL和图遍历:产品推荐示例,graph,traversal,arangodb,Graph,Traversal,Arangodb,我一直在学习Arangodb和使用AQL的图形遍历,我还看了一些可以在网上找到的例子,比如飞行路线、演员和电影,但我在写我最初认为是一个简单的产品推荐实验时遇到了麻烦,在这个实验中,客户会根据其他客户(购买过类似产品的客户)的购买情况推荐他/她没有购买过的产品 这就是我到目前为止努力实现的目标,检索其他客户购买的与当前客户相同的产品 FOR products IN 1..1 OUTBOUND 'customers/118685' bought FILTER products._id LI

我一直在学习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
可以通过以下方式轻松添加产品的计数次数:

这仍然是一种非常幼稚的做法。你最终会得到这样的建议:“你曾经买过香蕉,你应该买卫生纸”,因为最终每个人都买了这些东西。您不仅可以通过保存客户购买的产品,还可以通过保存时间来提高效果。然后你就可以知道什么产品经常一起购买,例如手电筒和电池


在互联网上寻找进一步的灵感,f.e.

这是一个非常开放的问题。一个更精确的问题会得到更多更好的答案。。。但我会试试看

您可以更简洁地表达当前查询:

FOR product IN 3..3 ANY 'customers/1' purchases
RETURN DISTINCT product
可以通过以下方式轻松添加产品的计数次数:

这仍然是一种非常幼稚的做法。你最终会得到这样的建议:“你曾经买过香蕉,你应该买卫生纸”,因为最终每个人都买了这些东西。您不仅可以通过保存客户购买的产品,还可以通过保存时间来提高效果。然后你就可以知道什么产品经常一起购买,例如手电筒和电池

在互联网上寻找更多的灵感,f.e