基于图引擎服务 GES 实现实时推荐

举报
f 发表于 2019/01/17 19:22:04 2019/01/17
【摘要】 基于图引擎服务 GES 实现实时推荐
  1. 参考https://bbs.huaweicloud.com/blogs/4adfd1761a4811e9bd5a7ca23e93a891,创建图。

  2. 使用实时推荐算法进行推荐。

    选择“实时推荐”(Real-time Recommendation)算法根据提示选择左侧栏的参数,这里 sources 栏用于输入请求节点(可以多

    个,标准的 csv 数据格式输入),label 参数过滤出期望得到的节点类型。

    例如:

    (1)“当 Frank 打开电影平台,向其推荐电影“时,可以输入 sources 为 Frank, label 为 movie,其他参数如下图(左),点

    击运行。算法运行结束后,画布上将会出现含有推荐节点的子图(大小反映了推荐程度,点击右上角图例上的相关项目,可以快速锁

     定相应类型节点);Pixie 的结果将会出现在下方“查询结果”栏。由图引擎的运算结果可以很清晰显示用户、电影、演员、导演等之间的关系,根据多因素共同作用结果,演算出最为精确的推荐结果,相较于过去的推荐结果,精度更高,解释能力更强。

     (2)当某“游客”用户小易登陆平台,浏览了 Gina 主页以及搜索了演员 Haley Joel Osment 动态,这一行为具有很强的个人

偏好属性说明他对 Gina 以及 Heley Joel Osment 有兴趣,这时,我们可以输入多个 sources 节点(参数如下图左),综合考虑

这两种兴趣(“Gina”、“Haley Joel Osment”)进行实时推荐:

sources: Gina,Haley Joel Osment

label: movie

3 动态更新图,实时更新,实时推荐

基于图的结构进行实时计算,可以适应数据的动态变化,如上图“小易加入平台,看了电影 Ready Play One”这一行为,图引

擎服务可以通过 gremlin 等语句实时更新到当前图数据里,做到实时更新,实时推荐。

(1)Gremlin 增加点,输入 Gremlin 语句

g.addV('user').property(id, '小易'). property('ChineseName', '小易' ).property('Gender','M').property('Age', '25-34')

.property('Occupation', 'student'). property('Zip-code', 331100)

image.png

(2)Gremlin 增加边,输入 Gremlin 语句:

g.V('小易').addE('like'). property('Datetime', '2018-07-27, 19:49:20').to(g.V('Ready Play One'))

image.png

扩展:

  

Gremlin 是 Apache TinkerPop 框架下的图遍历语言。Gremlin 是一种函数式数据流语言,可以使得用户使用简洁的方式表述复杂的属性图

(property graph)的遍历或查询。每个 Gremlin 遍历由一系列步骤(step,可能存在嵌套)组成,每一步都在数据流(data stream)上执行一

个原子操作。

 用户只需要将标准 gremlin 语言进行简单的组合和嵌套,就能完成复杂的查询功能,例如:

 查询图上的点:g.V().limit(100)

 查询 Frank 用户的信息:g.V(“Frank”)

 查询 Frank 喜欢的电影:g.V (“Frank").out("like") .hasLabel("movie");

 查询 Frank 朋友喜欢的电影:g.V (“Frank"). out (“friends").out("like") .hasLabel("movie");

 等等


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。