图数据科学和机器学习图嵌入概览

简介: 图数据科学和机器学习图嵌入概览

基于NEO4J图模型的关系计算

一、原始图模型

原始图模型只有人与发帖之间的关系(这种关系符合建立图谱的一般逻辑)

二、计算关系(不溯源)

根据原始图模型生成人物之间的关系

MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE zdr.apoc.relatCalculateRestrict(labels(n),labels(m),'FacebookID')=true AND id(n)=519565 AND id(m)=519595 WITH p,n AS startNode,m AS endNode 
CALL apoc.merge.relationship(startNode, '评论', NULL, NULL, endNode) YIELD rel WITH id(rel) AS idRel
MATCH path=()-[r]-() WHERE id(r)=idRel SET r.tracingSourceBool='false' WITH r.tracingSourceBool AS tracingSourceBool WITH 
CASE 
WHEN tracingSourceBool='true'
THEN 'MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE id(n)={idN} AND id(m)={idM} WITH p,n AS startNode,m AS endNode MATCH path=(startNode)-[:评论]-(endNode) RETURN p,path'
ELSE 'MATCH path=(n)-[:评论]-(m) WHERE id(n)={idN} AND id(m)={idM} RETURN path'
END
AS cypher
CALL apoc.cypher.run(cypher,{idN:519565,idM:519595}) YIELD value RETURN value.p AS p,value.path AS path

三、计算关系(溯源)

溯源是指过滤出计算关系的详细过程(原始图模型到->人物关系)-计算过程

MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE zdr.apoc.relatCalculateRestrict(labels(n),labels(m),'FacebookID')=true AND id(n)=519565 AND id(m)=519595 WITH p,n AS startNode,m AS endNode 
CALL apoc.merge.relationship(startNode, '评论', NULL, NULL, endNode) YIELD rel WITH id(rel) AS idRel
MATCH path=()-[r]-() WHERE id(r)=idRel SET r.tracingSourceBool='true' WITH r.tracingSourceBool AS tracingSourceBool WITH 
CASE 
WHEN tracingSourceBool='true'
THEN 'MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE id(n)={idN} AND id(m)={idM} WITH p,n AS startNode,m AS endNode MATCH path=(startNode)-[:评论]-(endNode) RETURN p,path'
ELSE 'MATCH path=(n)-[:评论]-(m) WHERE id(n)={idN} AND id(m)={idM} RETURN path'
END
AS cypher
CALL apoc.cypher.run(cypher,{idN:519565,idM:519595}) YIELD value RETURN value.p AS p,value.path AS path

四、批量人员关系计算(一对多的计算)<仅供参考>

首先找到需要与当前人计算关系的节点,然后使用UNWIND批量计算

MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE id(n)=519565 WITH collect(m) AS nodes
UNWIND nodes AS stopNode
MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE id(n)=519565 AND id(m)=id(stopNode) WITH p,n AS startNode,m AS endNode 
CALL apoc.merge.relationship(startNode, '评论', NULL, NULL, endNode) YIELD rel WITH id(rel) AS idRel,id(endNode) AS endNodeId
MATCH path=()-[r]-() WHERE id(r)=idRel SET r.tracingSourceBool='true' WITH r.tracingSourceBool AS tracingSourceBool,endNode(r) AS stopNode WITH 
CASE 
WHEN tracingSourceBool='true'
THEN 'MATCH p=(n)-[:评论|发帖]-()-[:评论|发帖]-(m) WHERE id(n)={idN} AND id(m)={idM} WITH p,n AS startNode,m AS endNode MATCH path=(startNode)-[:评论]-(endNode) RETURN p,path'
ELSE 'MATCH path=(n)-[:评论]-(m) WHERE id(n)={idN} AND id(m)={idM} RETURN path'
END
AS cypher,id(stopNode) AS endNodeId
CALL apoc.cypher.run(cypher,{idN:519565,idM:endNodeId}) YIELD value RETURN value.p AS p,value.path AS path
// 此函数限制可计算关系的标签,详情请参考下方GITHUB链接
zdr.apoc.relatCalculateRestrict(labels(n),labels(m),'FacebookID')=true

NEO4J存储过程扩展包

目录
相关文章
|
2月前
|
机器学习/深度学习 算法 Java
现代数据科学中的机器学习技术发展与应用
本文探讨了现代数据科学领域中机器学习技术的发展和应用。我们介绍了机器学习的基本概念和原理,并探讨了它在前端、后端、Java、Python、C以及数据库等多种技术领域的具体应用。通过深入剖析不同领域的案例研究,我们展示了机器学习在解决实际问题和推动技术创新方面的巨大潜力。最后,我们对未来机器学习技术的发展趋势进行了展望。
|
4月前
|
机器学习/深度学习 算法 数据可视化
Python是数据科学和机器学习
Python是数据科学和机器学习
21 1
|
5月前
|
机器学习/深度学习 自然语言处理 算法
机器学习中的嵌入:释放表征的威力
机器学习中的嵌入:释放表征的威力
55 1
|
11月前
|
机器学习/深度学习 数据采集 人工智能
张东晓院士:科学机器学习中的知识嵌入与知识发现
张东晓院士:科学机器学习中的知识嵌入与知识发现
202 0
张东晓院士:科学机器学习中的知识嵌入与知识发现
|
8月前
|
机器学习/深度学习 PyTorch TensorFlow
7个用于机器学习和数据科学的基本 Python 库
Python是AI社区事实上的编程语言。它很容易学习,一旦你精通,编写程序是轻而易举的。 在很大程度上,由于其开源库,Python用户可以操作数据,原型模型,分析输出以及执行许多其他机器学习和数据科学任务。
137 0
|
8月前
|
机器学习/深度学习 人工智能 数据挖掘
机器学习会取代数据科学吗?
随着技术的不断发展和人工智能在我们日常生活中的使用,许多人担心失业。有些人甚至谈论数据科学正在消亡。许多人说机器学习正在取代数据科学,并指出数据科学是一个过度饱和的领域。随着 ChatGPT 等工具的大量使用及其在编码任务中的使用等等,我们正在质疑数据科学是否正在消亡。
55 0
|
10月前
|
机器学习/深度学习 算法 知识图谱
浙大团队将化学知识引入机器学习,提出可外推、可解释的分子图模型预测反应性能
浙大团队将化学知识引入机器学习,提出可外推、可解释的分子图模型预测反应性能
138 0
|
11月前
|
机器学习/深度学习 人工智能 算法
张东晓院士:科学机器学习中的知识嵌入与知识发现(3)
张东晓院士:科学机器学习中的知识嵌入与知识发现
177 0
张东晓院士:科学机器学习中的知识嵌入与知识发现(3)
|
11月前
|
机器学习/深度学习 人工智能
张东晓院士:科学机器学习中的知识嵌入与知识发现(2)
张东晓院士:科学机器学习中的知识嵌入与知识发现
173 0
张东晓院士:科学机器学习中的知识嵌入与知识发现(2)
|
11月前
|
机器学习/深度学习 SQL 人工智能
机器学习,数据科学,人工智能,深度学习和统计有何异同
机器学习,数据科学,人工智能,深度学习和统计有何异同

热门文章

最新文章