论文浅尝 | SMBOP: Semi-autoregressive Bottom-up Semantic Parsing

笔记整理:陈永锐,东南大学博士

来源:NAACL 2021

概述

近年来语义解析的事实上的标准解码方法是使用自顶向下的深度优先遍历对目标程序的抽象语法树进行自回归解码。该工作提出了一种替代方法:半自回归自底向上解析器(SMBOP),它在解码步骤 t 构建高度为 t 的 top-K 子树。与自上而下的自回归解析相比,我们的解析器享有多项优势。

从效率的角度来看,自下而上的解析允许并行解码特定高度的所有子树,导致对数运行时复杂度而不是线性。

从建模的角度来看,自下而上的解析器在每一步学习有意义的语义子程序的表示,而不是语义空的部分树。

在Spider数据集上,与使用自回归解码的语义解析器相比,SMBOP 使解码时间加快了 2.2 倍,训练时间加快了 5 倍,获得了69.5%的完全匹配准确率, 71.1 %的执行准确率。

动机

1a26b21995b5f1975564dbfe19929614.png

尽管语义解析中的自下而上解码很少受到关注,它实际上存在几个优点。从效率的角度来看,自底向上解析自然可以半自回归完成:在每个解码步骤 t,解析器并行生成深度为 t 的 top-K 程序子树(类似于波束搜索)。这导致运行时复杂性在树的大小上是对数的,而不是线性的,可以提升效率。从建模的角度来看,神经自下而上的解析为有意义的(和可执行的)子程序提供了学习表示,这些子程序是在搜索过程中计算的子树。

上图说明了SMBOP解析器的单个解码步骤。 给定一个具有 K = 4 个高度为 t 的树(蓝色向量)的beam Zt,SMBOP使用cross-attention机制将树与来自输入问题(橙色)的信息关联起来。然后,对边界进行评分,即可以使用当前beam 的语法构造的所有高度为 t + 1 的树的集合,并保留 top-K 树(紫色)。最后,生成每个新 K 树的表示并将其放置在新的beam   Zt+1 中。在 T 个解码步骤之后,解析器返回 ZT 中对应于完整程序的最高得分树。

SMBOP解析器

SMBOP算法如下所示:

4697e3671e7872afc615dca4e20a222c.png

在每一步 t,注意力都被用来将树与来自输入问题表示(第 5 行)的信息关联起来。这种表示用于对边界上的每棵树进行评分:深度为 t + 1 的子树集合,可以从梁上深度为 t 的子树(第 6-7 行)构建。在为步骤 t+1 选择前 K 棵树后,我们为它们计算一个新的表示(第 8 行)。最后,从最终解码步骤 T 中返回得分最高的树。SMBOP模型中的步骤独立地对树表示进行操作,因此每个步骤都被有效地并行化。

SMBOP 类似于波束搜索,因为在每个步骤中它都拥有固定高度的前 K 棵树。它也与(修剪的)图表解析有关,因为步骤 t + 1 处的树是根据在步骤 t 找到的树计算出来的。这与序列到序列模型不同,在序列到序列模型中,光束上的项目是相互竞争的假设,没有任何交互。

下图给出了SMBOP所使用的关系代数语法

4b1c2c5c8596cc3245ce499fa3c54237.png

模型架构

e21136daf8263cc3a4f09f50371d39cd.png

SMBOP 在每个解码步骤保持一个beam。与标准beam search不同,SMBOP波束上的树不仅相互竞争,而且相互组合(类似于图表解析)。SMBOP使用cross attention将beam上的树表示上下文化。接下来,计算边界上所有高度为t+1的树的分数。可以通过对梁树应用一元(包括 KEEP)运算或二元运算来生成树。我们为边界树定义了一个评分函数,其中通过在树 zi 上应用一元规则 u 生成的新树的评分定义如下:

714493dd8e7fd2bef4b7586981cb8754.png

训练过程

为了指定损失函数,SMBOP定义了监督信号。给定正确 SQL 程序,将其转换为黄金平衡关系代数树。在训练期间,我们应用“自下而上的教师强制”,也就是说,我们用来自 Zgold 的所有树填充光束 Zt,然后用得分最高的非黄金预测树填充光束的其余部分(大小为 K)。这保证了我们将能够在每个解码步骤计算损失,如下所述。损失函数如下所示:

4e9bb6f70ad625d579de277eae25f098.png

实验结果

该论文使用了Spider数据集进行了实验。

36fa4ab5ad1b829bd1daa0438198f7ba.png

可见,SMBOP在执行准确率上取得了最优的结果。

6c64449005b1b242cb4886e62b73cefd.png

SMBOP在效率上也比自回归解码器更强。


OpenKG

OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。

6ac25c1a1f16befd7ad1828bf91e6015.png

点击阅读原文,进入 OpenKG 网站。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477966.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

美团酒店Node全栈开发实践

前后端分离的背景 “前后端分离”显然已不是什么新鲜的话题,Zakas在2013年10月份就曾发表过一篇博客《Node.js and the new web front-end》讨论Node背景下新时代的前端。毫无疑问,Node的出现给JavaScript语言带来了新的生机,也使得前端开发者…

统计学习方法总结

统计学习方法总结 阅读目录(Content)0. 相关知识点0x1: 监督学习1. 模型假设空间2. 生成模型与判别模型的联系与区别 3. 学习策略4. 分类问题与回归问题5. 利用模型进行预测和分析0x2:模型评估与模型选择1. 训练误差与测试误差2. 过拟合与模型选择0x3:正…

LeetCode 997. 找到小镇的法官(图的出度和入度)

1. 题目 在一个小镇里,按从 1 到 N 标记了 N 个人。传言称,这些人中有一个是小镇上的秘密法官。 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人。每个人(除了小镇法官外)都信任小镇的法官。只有…

哈工大|NLP数据增强方法?我有15种

文 | rumor源 | 李rumor卷友们好,我是rumor。十一假期过的太快了,不知道你们缓过来没有,没有的话今天我们就来一起读一篇综述缓缓,弥补假期没学习的遗憾。这篇40多页的综述出自哈工大车万翔老师的团队,一共总结了15种N…

论文浅尝 | Wordly Wise(WoW) - 用于语音视觉知识问答的跨语言知识融合模型

笔记整理: 谭亦鸣,东南大学博士生来源:NAACL’21链接:https://aclanthology.org/2021.naacl-main.153.pdf论文提出了一种新的知识图谱问答数据集命名为FVSQA,这是一种语音视觉知识问答类型的任务,即问题形式为音频&…

美团Android DEX自动拆包及动态加载简介

概述 作为一个android开发者,在开发应用时,随着业务规模发展到一定程度,不断地加入新功能、添加新的类库,代码在急剧的膨胀,相应的apk包的大小也急剧增加, 那么终有一天,你会不幸遇到这个错误&a…

LeetCode 83. 删除排序链表中的重复元素(链表)

1. 题目 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2 输出: 1->2示例 2: 输入: 1->1->2->3->3 输出: 1->2->3来源:力扣(LeetCode) 链接&#…

用多模态信息做 prompt,解锁 GPT 新玩法

文 | 子龙编 | 小轶自多模态大火以来,井喷式地出现了许多工作,通过改造预训练语言模型,用图像信息来增强语义信息,但主要集中在几个 NLU 任务上,在 NLG 上的研究比较少。今天要介绍的这篇 paper Multimodal Conditiona…

论文浅尝 | 基于时序知识图谱的问答

笔记整理:姚云志,浙江大学在读博士,研究方向为自然语言处理。链接:https://arxiv.org/pdf/2106.01515.pdf时序知识图谱是一种多关系的知识图谱,相较于常规的知识图谱,时序知识图谱中的关系中会与时间段相关…

Logistic Regression 模型简介

逻辑回归(Logistic Regression)是机器学习中的一种分类模型,由于算法的简单和高效,在实际中应用非常广泛。本文作为美团机器学习InAction系列中的一篇,主要关注逻辑回归算法的数学模型和参数求解方法,最后也…

开源开放 | 中国近代历史人物知识图谱

OpenKG地址:http://openkg.cn/dataset/zgjdlsrw项目地址:http://www.zjuwtx.work/project/kg开放许可协议:CC BY-SA 4.0 (署名相似共享)贡献者:浙江大学(王天笑)1、引言中国近代历史…

LeetCode 1071. 字符串的最大公因子(字符串的最大公约数)

1. 题目 对于字符串 S 和 T,只有在 S T … T(T 与自身连接 1 次或多次)时,我们才认定 “T 能除尽 S”。 返回字符串 X,要求满足 X 能除尽 str1 且 X 能除尽 str2。 示例 1: 输入:str1 &q…

大模型炼丹无从下手?谷歌、OpenAI烧了几百万刀,总结出这些方法论…

文 | Yimin_饭煲都1202年了,不会真有深度学习炼丹侠还没有训练/推理过大模型吧“没吃过猪肉,还没见过猪跑吗?”在深度学习算力高度增长的今天,不论是学术界还是工业界的从业者,即使尚未达到从头预训练一个百亿级别参数…

文本相似度、文本匹配、文本聚类

1 1在Keras的Embedding层中使用预训练的word2vec词向量:https://blog.csdn.net/u012052268/article/details/90238282 import numpy as np import pandas as pd#1准备工作# graph LR # 文本-->分词 # 分词-->训练词向量 # 训练词向量-->保存词向量import …

Linux资源管理之cgroups简介

引子 cgroups 是Linux内核提供的一种可以限制单个进程或者多个进程所使用资源的机制,可以对 cpu,内存等资源实现精细化的控制,目前越来越火的轻量级容器 Docker 就使用了 cgroups 提供的资源限制能力来完成cpu,内存等部分的资源控…

会议交流 | IJCKG 2021:Keynotes released!欢迎注册参会

IJCKG 2021: The 10th International Joint Conference on Knowledge GraphsDecember 6-8, 2021 Online国际知识图谱联合会议之前是国际语义技术联合会议(the Joint International Semantic Technology Conference (JIST)),JIST 会议的历史要…

LeetCode 1010. 总持续时间可被 60 整除的歌曲(哈希)

1. 题目 在歌曲列表中&#xff0c;第 i 首歌曲的持续时间为 time[i] 秒。 返回其总持续时间&#xff08;以秒为单位&#xff09;可被 60 整除的歌曲对的数量。形式上&#xff0c;我们希望索引的数字 i < j 且有 (time[i] time[j]) % 60 0。 示例 1&#xff1a; 输入&am…

pip加速+百度镜像|清华镜像

针对pip install 安装包下载慢的问题&#xff0c;主要pip install直接安装是从国外拉取安装包。 解决办法&#xff0c;加国内镜像&#xff0c;比如百度 https://mirror.baidu.com/pypi/simple pip install lac -i https://mirror.baidu.com/pypi/simple比如清华镜像&#xf…

深入理解Objective-C:Category

摘要 无论一个类设计的多么完美&#xff0c;在未来的需求演进中&#xff0c;都有可能会碰到一些无法预测的情况。那怎么扩展已有的类呢&#xff1f;一般而言&#xff0c;继承和组合是不错的选择。但是在Objective-C 2.0中&#xff0c;又提供了category这个语言特性&#xff0c;…

工作6年,谈谈我对“算法岗”的理解

文 | Severus编 | 小轶写在前面&#xff1a;本文完全基于我个人的工作经验&#xff0c;没有经过任何形式的行业调研&#xff0c;所以我的理解也有相当浓厚的个人印记&#xff0c;可以认作一家之言。如果能对读者朋友们起到任何帮助&#xff0c;都是我的荣幸。如果不赞同我的看法…