用有限状态自动机层学习图结构

2020-07-18 23:44:16

下载PDF摘要:基于图的神经网络模型在许多领域都产生了很强的效果,部分原因是图提供了灵活性,可以在图中的节点之间以关系结构(边)的形式编码领域知识。在实践中,边既用来表示程序的内在结构(例如,程序的抽象语法树),也用来表示更抽象的关系,这些关系有助于下游任务的推理(例如,相关程序分析的结果)。在这项工作中,我们研究了从本质图结构中学习导出抽象关系的问题。出于它们在程序分析中的强大功能,我们考虑了由有限状态自动机接受的基图上的路径定义的关系。我们展示了如何端到端地学习这些关系,方法是将问题放松为在基于图的POMDP上学习有限状态自动机策略,然后使用隐式微分来训练这些策略。其结果是一个可微图有限状态自动机(GFSA)层,它向基图添加了一种新的边类型(表示为加权邻接矩阵)。我们证明了这一层可以在网格世界图中找到捷径,并在Python程序上重现简单的分析。此外,我们将GFSA层与更大的基于图的模型端到端训练的可变误用程序理解任务相结合,发现使用GFSA层比使用手工设计的语义边或其他基线方法添加学习的边类型具有更好的性能。