背景
子图匹配(subgraph matching)旨在从给定的数据图中找出与查询图符合子图同构约束的子图集合。子图匹配的结果常被用于社区发现、图切分、图聚类等图算法的输入,同时也在金融反欺诈、电网管理、社交网络等实际应用中发挥作用。从算法的目标输出分类,子图匹配可以分为四个层次:(1)确定给定的两个图是否符合子图同构约束;(2)找到一个子图同构约束中互相匹配的顶点对;(3)统计数据图中符合子图匹配约束的子图个数;(4)找到所有匹配的子图。目前,相关研究人员已经针对上述四种不同层次的需求分别给出了大量解决方案。
现有工作中主流的设计思路在本文中称为传统方法,其基本遵循“Filter->Order->Enumeration”的逻辑顺序[1],对三个环节给出了大量优化策略。其中,Filter阶段旨在根据标签、度数和邻域的拓扑结构等信息生成查询图中顶点或边在数据图中的的候选顶点或边的集合,以缩小后续的搜索空间。Order阶段旨在根据Filter阶段得到的候选集合大小,以及从数据图中得到的诸如标签选择度等要素,或在Enumeration之前生成完整的匹配顺序,或在Enumeration的每一个迭代步,结合上一轮迭代的一些运行信息动态地确定下一个要匹配的查询顶点。Enumeration阶段则是利用Filter阶段得到的候选集和Order阶段得到的匹配顺序,在解空间中搜索匹配结果,其中涉及到的优化策略包括剪枝、快速集合求交计算、复用中间结果、压缩中间结果等等。
随着面向图的机器学习技术的不断发展,其强大的表达能力和挖掘图数据中深层次联系的潜力逐渐得到学术界的重视,因此,相关研究人员提出了利用图机器学习方法对子图匹配算法进行优化的各类思路。
总的说来,图机器学习方法可以从三个方面切入。其一是在上述“Filter->Order->Enumeration”三个阶段中需要综合考虑各种各样的图的性质,而这些性质的权重往往是固定的,但复杂的图数据分布使得解决方案在面对不同性质的图数据和查询图时应当能够动态地调整这些权重。而机器学习方法可以很好地完成这一任务。其二是传统方法在进行剪枝等决策时通常依赖启发式规则和贪心类算法,这使得该类方法更容易进入局部最优解,而图神经网络的表达能力能够在一定程度上缓解这一问题。其三是子图匹配的枚举过程被认为是NP难问题,但如果能够通过机器学习方法得到顶点或边的嵌入,随后在嵌入空间中完成匹配,则有机会绕过这一搜索过程。
代表工作
本文将介绍两篇利用图机器学习方法改进子图匹配算法的代表性工作。
Reinforcement Learning Based Query Vertex Ordering Model for Subgraph Matching [2]
本文是来自新南威尔士大学和悉尼大学等高校的研究人员发表在ICDE 2022上的工作RL-OVO。
该工作的动机是,其一,机器学习方法能够更好地利用图数据的信息,使得通过学习得到不同的查询图下最优的匹配顺序选择结果成为可能;其二,现有方法中基于启发式规则的贪心算法容易陷入局部最优解,而该工作通过引入强化学习得到策略网络来完成匹配顺序的生成。
RL-OVO的整体架构如下图所示,其主要不同点在于在匹配规则的生成阶段引入了强化学习技术。
从强化学习的各个要素来看,RL-OVO中的状态定义为当前已经生成的部分匹配顺序以及查询图的图嵌入矩阵。其中,在初始化阶段,RL-OVO首先从查询图和数据图得到查询图中每个点的特征矩阵作为策略网络的初始输入。论文中给出的特征构建如下公式所示:
h u ( 0 ) ( 1 ) = d e g r e e ( u ) / α d e g r e e h_u^{(0)}(1) = degree(u) / \alpha_{degree} hu(0)(1)=degree(u)/αdegree
h u ( 0 ) ( 2 ) = l a b e l ( u ) h_u^{(0)}(2) = label(u) hu(0)(2)=