论文浅尝 | 面向多语言语义解析的神经网络框架

论文笔记整理:杜昕昱,东南大学本科生。


640?wx_fmt=png


来源:ACL2017

链接:https://aclweb.org/anthology/P17-2007

 

论文训练了一个多语言模型,将现有的Seq2Tree模型扩展到一个多任务学习框架,该框架共享用于生成语义表示的解码器。该模型能够将来自多种不同语言的自然语言句子解析为它们相应的形式语义表示。论文中报告了多语言查询语料库的评估结果,并介绍了一个新的ATIS语料库的多语言版本。

 

Introduction

多语言语义解析——将来自多种不同语言的自然语言句子映射到它们相应的形式语义表示的任务。多语言场景有如下两种:

1.  单源类型,输入的一句话由同一种语言组成。

2.  多源类型,输入的一句话由多种语言的并列语句组成。

针对第二种类型的探索,只有过将多种单语言模型组合在一起的工作,单对于每种语言的单独训练会忽视源语言之间的共享信息,而且对每种语言去训练,调整,构建一个新的模型也是不方便的。

本论文提出一个接受输入多语言组成的句子的解析体系,将现有的Sequence-to-Tree模型扩展到一个多任务学习框架(神经网络机器翻译)。论文模型由多个编码器组成,一个用于每种语言,另一个解码器跨源语言共享,用于生成  语义表示。通过这种方式,模型可能受益于拥有一个能够很好地跨语言工作的通用解码器。这样模型可以受益于一个  在跨语言方面有良好表现的解码器。直观来说,该模型鼓励每种源语言编码器为解码器找到一个通用的结构化表示形式,论文还进一步修改了注意力机制,整合多源信息。

论文贡献:

1.     研究了两种多语言场景中的语义解析

2.     Sequence-to-Tree的结构中加入新颖的拓展使得可以模型在语义解析中可以结合多语言的信息

3.      发布了一个新的ATIS语义数据集,它用两种新语言进行了注释

 

Model

与传统语义分析模型(为每个语言单独训练语言解析器)不同,论文中提出将N个编码器结合到一个模型中。这个模型将n种语言的句子编码为一个向量,之后用一个共享的解码器把已编码的向量解码到它相应的逻辑形式。输入句子有两种形式(单语言和并列多语言)。编码器被实现为具有长短时记忆(LSTM)单元的单向RNN,以自然语言序列作为输入。

同之前的多任务框架(neural MT),论文中为每个语言都构建了编码器(640?wx_fmt=png,对于第n种语言,他在第时间第t步更新隐藏向量:

640?wx_fmt=png

公式(1) 640?wx_fmt=pngLSTM函数 640?wx_fmt=png 是嵌入矩阵行向量包含令牌在第n个语言的来源。

如果像传统方式(Seq2Seqmodel)一样,线性生成每一个目标令牌,会忽略逻辑形式上的层次结构,Sqe2Tree模型采用了自顶向下生成逻辑形式的解码器,定义了一个“non-terminal”令牌来表示子树。在树的每个深度,逻辑  形式都是按顺序生成的,直到输出序列结束标记。

与单语情况不同,论文定义了一个共享解码,在计算解码器状态时加入父非终端信息,其中640?wx_fmt=pngLSTM方程):

640?wx_fmt=png

注意力机制:

640?wx_fmt=png

其中U,V,W是权重矩阵。最终,模型被训练到使下面的条件似然函数最大:

640?wx_fmt=png

其中(XY)表示训练集D中训练数据中的标注的句子-语义对。在这两种多语言设置(Single-Source Setting&Multi-Source Setting,下面介绍)中,我们对编码器和解码器使用上述相同的公式。每个设置的不同之处在于:(1)编码器状态的初始化,(2)上下文向量的计算,(3)训练过程。

 

Single-Source Setting

这种设置的输入为来自第n种语言的语句,如(a)所示,其中模型正在解析印度尼西亚输入,而英语和汉语处于非活跃状态。

640?wx_fmt=png

先要把解码向量投影到一个适合解码的维度,640?wx_fmt=png,其640?wx_fmt=png可以是一个仿射变换,类似的,可以在计算注意力分数之前做:640?wx_fmt=png,然后计算上下文向量640?wx_fmt=png为第n个编码器中隐藏向量的加权和。

640?wx_fmt=png

640?wx_fmt=png作为等式3中的计算,在这个设置中论文提出了两种变体

  1. 为每种语言定义独立的权值矩阵

  2. 三个权重矩阵为跨语言共享的,本质上减少了N倍的参数数量

训练数据是由N种语言的句子-语义对的组合组成的,其中源语句不一定是平行的。论文中实现一种调度机制,在训练  期间循环所有语言,但每次都只选择一种语言。模型参数在从一种语言进行批处理后更新,然后再转移到下一种语言。这种机制可以防止特定语言的过度更新。

 

Multi-Source Setting

在这个情况下,输入是N种语言中语义等价的句子。图(b)描述了模型同时解析英语、印度尼西亚语和汉语的场景。灰  色模块是一个组合模块。

640?wx_fmt=png

解码器初始状态由N个编码器的最终状态来确定,640?wx_fmt=png,这里通过最大池来实现 \phi。论文中给出两种计算 c_t 的方式,集成多个编码器源端信息,首先考虑单词级组合,可以在每个一步时间步长对N进行编码,如下所示:

640?wx_fmt=png

或者在句级组合中,首先用与等式(6)和(7)相同的方法计算每种语言的上下文向量。然后,我们对N个上下文向量进行简单的串联:640?wx_fmt=png

与单源情况不同,训练模型由路并行句子-语义组成。即每个训练实例由N个语义等价的句子及其对应的逻辑形式组成。

 

Experiment&Result

论文中在两个多语言基准数据集上进行了实验,数据集GEO是语义分析的标准基准评估,该多语言版本包含880个自  然语言查询实例,涉及四种语言(英语、德语、希腊语和泰国语)的美国地理事实( Jonesetal.2012)。文中使用的标准分割包括600个训练示例和280个测试示例。ATIS数据集包含对飞行数据库的自然语言查询。

Result

Table1比较了单语言Seq2Tree模型(SINGLE)和论文中的多语言模型(MULTI)single-source  setting下独立与共享参数(single-setting中的两种模型变体)的表现:

平均而言,多语言模型(论文中)的两种变体在GEO上的准确率比单语模型平均准确率高出1.34%,其中共享参数(第二种变体)表现得对GEO有帮助。结果发现在ATIS上的平均表现主要提升在中文和印尼语。还发现虽然包含进英语通常会对其他语言有帮助,但可能会影响他自身的表现。

640?wx_fmt=png

Table2展示了通过对GEO结合34种语言,针对ATIS结合23种语言的多源解析器的平均表现。对于排名(Ranking)实现,通过选择最高概率的值的方法来联合每个语言的预测结果。观察到模型级的系统组合能够比输出  级的平均性能更好(GEO上的平均性能高达4.29%)。在单词级和句子级组合在两个数据集上显示了相当的性能。可以  看出,当在系统组合中加入英语时,这种优势更加明显。

 

640?wx_fmt=png


Analysis

对多语言模型的定性分析。Table3显示了使用ATIS中的三种语言训练单语模型(SINGLE)和使用句子级组合的多语模型(MULTI)的例子。例子展示了多语言模型成功解析3个输入句子到正确的逻辑形式,然而单个的模型无法做到。

640?wx_fmt=png

Figure2显示了在解析多源设置(MULTI)ATIS时生成的对齐。对齐矩阵中的每一个单元对应 640?wx_fmt=png(由等式6计算得到)。语义相关的词被对齐如: ground (en), darat (id), 地面 (zh) ground transport。这说明该模型可以共同学习这些对应关系。

640?wx_fmt=png

Table4总结了基线和多语言模型中的参数数量,单语(SINGLE)和排序(RANKING)中的参数个数等于单语成分中参数个数的和。可以看出,多语言模型的参数比基线小50-60%左右。

640?wx_fmt=png


Conclusion

论文提出了一种多语言语义分析器,将Seq2Tree模型拓展到一个多任务学习框架。通过实验发现多语言模型在平均 表现上优于1.单语模型在单源设置(single-source setting)下的表现2. 综合排名(Ranking)在多源设置(multi- source)下的表现。

 



 OpenKG


开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

640?wx_fmt=jpeg

点击阅读原文,进入 OpenKG 博客。

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

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

相关文章

LeetCode 46. 全排列(回溯)

文章目录1. 题目信息2. 解题2.1 利用hash map解决2.2 改用bool数组判断是否出现过1. 题目信息 给定一个没有重复数字的序列,返回其所有可能的全排列。 示例:输入: [1,2,3] 输出: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1] ]来源:力扣&#xf…

谷歌师兄的刷题笔记分享!

高畅现在是谷歌无人车部门(Waymo)的工程师,从事计算机视觉和机器学习方向。他在美国卡内基梅隆大学攻读硕士学位时,为了准备实习秋招,他从夏天开始整理某 code 上的题目,几个月的时间,刷了几百道…

【深度揭秘】百度、阿里、腾讯内部岗位级别和薪资结构,附带求职建议!

“ 最近很忙,文章没有及时更新。。 最近被问得最多就是想进入BAT等一线互联网公司,应该怎么办? 我先从BAT等这样的公司看看他们的招聘需求谈起,再结合这样的公司需要对技术的要求是什么,最后结合我的建议&#xff0…

LeetCode 47. 全排列 II(回溯+搜索剪枝)

文章目录1. 题目信息2. 解题1. 题目信息 给定一个可包含重复数字的序列,返回所有不重复的全排列。 示例:输入: [1,1,2] 输出: [[1,1,2],[1,2,1],[2,1,1] ]来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problem…

会议 | 2019 全国知识图谱与语义大会 (CCKS 2019)

会议注册:http://www.ccks2019.cn/?page_id53会议地址与住宿:http://www.ccks2019.cn/?page_id366OpenKG开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。点击阅读原文…

jieba分词太慢,怎么办?找jieba_fast

原文链接:https://www.rtnzero.com/archives/272.html 有时候感觉处理一个几十M的文本,要一分钟才能好,然后调试时各种心焦! 下面举个例子: 归零有一个11.9M的文本文件,是一些抓取到的Python长尾关键词&am…

DGL_图的打印

首先要安装 networkx import matplotlib.pyplot as plt import networkx as nx import dgl import numpy as np def build_karate_club_graph():src np.array([1, 2, 2, 3, 3])dst np.array([0, 0, 1, 0, 1])u np.concatenate([src, dst])v np.concatenate([dst, src])ret…

闲鱼账号被封怎么办?解封看这里!

怎样避免宝贝被屏蔽、限流解封账号?首先我们要学会规避封号的风险 不要频繁的更改账号,不要多账号单手机操作,一机一号才是正确。 不要连续给人商品点赞或是我想要,连续的操作容易被封 不要发布违禁品,违禁品具体可…

推荐系统顶会RecSys’20亮点赏析

文 | banana源 | 知乎RecSys 2020原计划是在南美洲巴西举办,因为疫情的原因不得不改到线上。虽说线上举办会议,参会效果会打折扣,但也为远在北京的我提供了参会便利。得益于各方的努力和软件的应用,整体来看此次参会的效果高于我对…

技术研讨会 | 2019 恒生技术开放日产业链知识图谱专场开始报名

知识图谱旨在采用图结构 (Graph Structure) 来建模和记录世界万物之间的关联关系和知识,是互联网时代的知识工程方法,能够对纷繁复杂、多源异构的金融资讯大数据进行加工整合,提升决策分析的效率,已经得到金融行业从业人士的普遍认…

01.神经网络和深度学习 W1.深度学习概论

文章目录1. 什么是神经网络2. 使用神经网络进行监督学习3. 神经网络的兴起4. 练习题1. 什么是神经网络 它是一个强大的学习算法,类似于人脑的工作方式。 例子1. 单个神经网络 给定房地产市场上房屋大小的数据,预测其价格。这是一个线性回归问题。 …

中文任务型对话系统中的领域分类

大规模跨领域中文任务导向多轮对话数据集及模型CrossWOZ:项目地址:https://gitee.com/yh14232988/CrossWOZ?_fromgitee_search 具体介绍:https://cloud.tencent.com/developer/article/1617197 北邮张庆恒:如何基于 rasa 搭建一…

互联网热门职位薪酬报告

“ 很多同学毕业后想进入互联网领域,当前有什么热门的互联网工作机会,薪资结构怎么样?看图说话,我简短给 大家做一个回报。 互联网职位需求最热的TOP20 mikechen:我个人比较看好旅游、金融板块、医疗健康板块&#x…

算法岗面试前怎样高效刷题?

如果不是为了面试AI工程师刷题有用吗?把时间都放在项目上不香嘛?作为一个战五渣,我特地去观察和询问了身边很多精通此道的大神,他们对于“刷题”还是保持着认可的态度:很清晰地理解问题的本质,并进行合理的…

征稿 | JIST 2019 Regular Technical Papers

JIST 2019: The 9th Joint International Semantic Technology ConferenceNov. 25-27, 2019, Hangzhou, China.http://jist2019.openkg.cn/第 9 届国际语义技术联合会议 JIST 2019 将于今年 11 月在美丽的杭州召开,投稿截止日期临近 (Abstract submission: 23:59 (H…

DGL_子图

用途一:数据集太大,无法画图,取子图看看是有向图/无向图 import dgl import matplotlib.pyplot as plt import networkx as nx G dgl.DGLGraph() G.add_nodes(5) # G.add_edges([0, 1, 2, 3, 4], [1, 2, 3, 4, 0]) # 有向图 G.add_edges(…

史上最全互联网八大技术岗位详解

“互联网技术岗位详解,涉及到前段开发、后端开发、移动端开发、大数据、项目管理、测试、运维、技术管理等八大领域。 架构师 每个产品线都有架构师,在技术平台部门也需要技术平台的架构师。 架构师负责设计系统整体架构,从需求到设计的每个…

什么?!“路由器”也会做信息抽取了?

文 | 雨城编 | QvQ前几周,一个“撞脸”路由器的联合抽取模型TPLinker横空出世,将NYT数据集的分数直接刷上了90,提高了2个百分点。卖萌屋邀请到作者雨城,来聊一聊他们在关系抽取上的工作。目前,该工作已经被COLING 2020…

征稿 | ​第 9 届国际语义技术联合会议征稿(截稿日 9 月 8 号)

第 9 届国际语义技术联合会议 JIST2019 将于今年 11 月在美丽的杭州召开,投稿截止日期延迟至 9 月 8 日。现在征集优秀的研究论文,本届会议还专门设置了 special session track,优秀论文将被推荐到 SCI 期刊发表,目前已申请到 Sem…

LeetCode 142. 环形链表 II(链表环的检测)

文章目录1. 题目链接2. 解题1. 题目链接 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如…