#gStore-weekly | gStore最新版本0.9.1之PPR函数的使用

在内核版本v0.9.1中,新增了Personalized PageRank(PPR)自定义函数,Personalized PageRank自定义函数可用于计算实体间的相关度,从而在图中找出影响度最大的节点。

PPR(u, k, pre_set,retNum)

参数说明:

u :变量或节点IRI,表示源结点

K :整数,用来控制大规模图上的运算量,当k设为-1时,相当于不作限制,将算出接近真实值的PPR

pre_set :考虑的谓词集合(若给出空,则默认为考虑所有谓词)

retNum :整数,表示返回 PPR 值为 Top-k 的结点 IRI 及其对应的 PPR(若总结点数不足 k 个,则返回所有结点IRI 及其对应的 PPR)

1.     示例数据

为了更好地演示PPR函数功能,使用以下的数据作为示例数据:

<Alice> <关注> <Bob> .<Alice> <喜欢> <Bob> .<Alice> <不喜欢> <Eve> .<Bob> <关注> <Alice>.<Bob> <喜欢> <Eve> .<Carol> <关注> <Bob> .<Carol> <喜欢> <Bob> .<Carol> <不喜欢><Francis> .<Dave> <关注> <Alice>.<Dave> <关注> <Eve> .<Dave> <不喜欢><Francis> .<Eve> <喜欢> <Carol>.<Francis> <喜欢> <Carol>.<Francis> <不喜欢> <Dave>.<Francis> <不喜欢> <Eve> .

上述数据的图如下:

2.     示例

我们假设要查询与Francis相关度最高的三人,且构成它边只能有“喜欢”关系标记,SPARQL查询语句为:

SELECT (PPR(<Francis>, -1, {<喜欢>}, 3) as ?y)WHERE {}

结果如下(为方便阅读,省略了字符串最外层的双引号和内部双引号转义):​​​​​​​

{     "paths":[{        "src":"<Francis>",         "results":[            {"dst":"<Carol>","PPR":0.325179},            {"dst":"<Bob>","PPR":0.262717},            {"dst":"<Eve>","PPR":0.212104}         ]     }] }

下面标红的部分即为与Francis有"喜欢"关系的人,从图可看出:Carol与Francis的相关度最高,其次Bob,最后为Eve,与PPR函数查询的结果匹配一致。

 

针对gStore有任何问题也可通过加运营同学微信,邀请加入gStore图谱社区咨询。

诚邀大家参加

·gStore-weekly技术文章征集活动·

  相关技术文章,包含但不限于以下内容:系统技术解析、案例分享、实践总结、开发心得、客户案例、使用技巧、学习笔记等。文章要求原创。

  入选周刊即送精美礼品~

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值