
使用图算法增强机器学习
|
163
ON CREATE SET a += apoc.map.clean(value,["id","authors","references"],[0])
WITH a,value.authors as authors
UNWIND authors as author
MERGE (b:Author{name:author})
MERGE (b)<-[:AUTHOR]-(a)'
, {batchSize: 10000, iterateList: true});
这段代码将产生图
8-4
所示的图模式。
图 8-4:引用图
由于连接论文和作者的图还比较简单,因此要添加更多从关系中推断出的信息来辅助预测。
8.3.3
合著者关系图
要预测作者之间未来的合作,首先要创建合著者关系图。下面的
Neo4j Cypher
查询将为合
著论文的每对作者创建
CO_AUTHOR
关系。
MATCH
(a1)<-[:AUTHOR]-(paper)-[:AUTHOR]->(a2:Author)
WITH
a1, a2, paper
ORDER BY
a1, paper.year
WITH
a1, a2, collect(paper)[0].year
AS
year, count(*)
AS
collaborations
MERGE (a1)-[coauthor:CO_AUTHOR {year: year}]-(a2)
SET
coauthor.collaborations = collaborations; ...