
摘要
语义解析的目标是将自然语言语句映射为机器可理解的意义表示(即程序),这些程序在真实世界环境中执行后可生成对应的语义指称(denotation)。弱监督语义解析器在语句-指称对上进行训练,将程序视为隐变量。该任务具有挑战性,主要源于庞大的搜索空间以及程序的虚假性问题:某些程序虽能正确执行并得到目标答案,却无法泛化到未见过的示例。我们的目标是为解析器引入归纳偏置(inductive bias),以帮助其区分虚假程序与真正正确的程序。我们基于一个直观假设:正确的程序在与问题对齐时,通常会遵循某些结构约束(例如,程序片段不太可能与重叠的文本片段对齐),并据此提出将对齐关系建模为结构化的隐变量。为了使该隐式对齐框架在计算上可行,我们将解析任务分解为两个步骤:(1)预测一个部分“抽象程序”;(2)在建模结构化对齐的过程中,利用可微动态规划(differential dynamic programming)对其进行精细化修正。该方法在 WIKITABLEQUESTIONS 和 WIKISQL 数据集上均取得了当前最优的性能表现。与标准注意力基线相比,我们发现所提出的结构化对齐机制具有显著优势。