
使用图算法增强机器学习
|
171
8.3.7
预测链接
:
基本图特征
我们将从创建简单模型开始,基于从共同作者、择优连接和邻节点并集总数提取的特征,
尝试预测两位作者未来是否会合作。
共同作者
查找两位作者之间的潜在三角形数。这主要基于这样的理念:有共同作者的两位作者将
来可能会被相互引见并开展协作。
择优连接
将每对作者的合著者数量相乘,为每对作者生成一个分值。按照常理,一位作者更有可
能与已经合著了大量论文的人合作。
邻节点并集总数
找到每位作者的合著者总数,然后减去重复数。
在
Neo4j
中,可以使用
Cypher
查询来计算这些值。下面的函数将计算这些针对训练集的度
量指标:
def
apply_graphy_training_features(data):
query = """
UNWIND $pairs AS pair
MATCH (p1) WHERE id(p1) = pair.node1
MATCH (p2) WHERE id(p2) = pair.node2
RETURN pair.node1 AS node1,
pair.node2 AS node2,
size([(p1)-[:CO_AUTHOR_EARLY]-(a)-
[:CO_AUTHOR_EARLY]-(p2) | a]) AS commonAuthors,
size((p1)-[:CO_AUTHOR_EARLY]-()) * size((p2)-
[:CO_AUTHOR_EARLY]-()) AS ...