设为首页 - 加入收藏
广告 1000x90
您的当前位置:黄大仙综合资料大全2018年 > 句法树 > 正文

万字长文深度解读11篇 EMNLP 2017 被录用论文

来源:未知 编辑:admin 时间:2019-06-16

  AI 科技评论按:本文作者徐阿衡,原文载于其个人主页,雷锋网 AI 科技评论获其授权发布。

  8月16日,在北京中科院软件研究所举办的“自然语言处理前沿技术研讨会暨EMNLP2017论文报告会”上,邀请了国内部分被 EMNLP 2017录用论文的作者来报告研究成果。整场报告会分为文本摘要及情感分析、机器翻译、信息抽取及自动问答、文本分析及表示学习四个部分。感觉上次的CCF-GAIR 参会笔记写的像流水账,这次换一种方式做笔记。

  本文分为四个部分,并没有包含分享的所有论文。第一部分写我最喜欢的论文,第二部分总结一些以模型融合为主要方法的论文,第三部分总结一些对模型组件进行微调的论文,第四部分是类似旧瓶装新酒的 idea。

  异步的文本、图像、音视频多模态摘要,一般的文本摘要关注的是salience, non-redundancy,这里关注的是readability, visual information,visual information 这里说的就是图片信息,暗示事件的 highlights。考虑一个视频新闻,本身有视觉模态和音频模态,通过 ASR,还可以产生文本模态,问题是如何将这些模态连接起来,产生一个附带精彩图片的文本摘要呢?这篇论文就在讨论这个问题,整个模型输入是一个主题的文本以及视频,输出是一段附图片的文本摘要。

  视频产生图片:CV 基本思路,把 Video 切成一个个的 shots(镜头/段落),每个镜头可以 group(组合) 成一个 story(scene),每一个镜头还可以细分成 sub-shots,每个 sub-shot 可以用 key-frame 来表示,选择关键帧作为视觉信息,同时认为长镜头的图片相对于短镜头更重要,基于此对图片重要性进行打分。音频产生文字:ASR。一方面语音识别结果并不十分准确,另一方面音频模态会有一些音频信号可以暗示我们哪些内容是重要的,基于这两点会产生两个指导策略,稍后提到。

  用LexRank,句子是点,连线是重要性,进行随机游走,针对音频产生文字的两个特性使用两个指导策略:

  如果语音识别结果和文本句子语义相同,那么让语音识别结果来推荐文本,反之不然;

  希望摘要能覆盖视觉信息,能解释图片,所以需要做一个文本图片分类器。图像 vcr 解码接两层前向网络,文本做一个高斯分布再求 fisher rank,也是接两层前向网络,最终将两个文本映射到同一个语义空间,计算匹配度。

  一个问题是如何在复杂的句子里提出子句,作者提出了基于传统语义角色标注的方法,利用中心谓词提取匹配的 frame 信息(predicate, argument1, argument2),好处是可以抽取语义相对独立的部分,还可以通过 frame 的设定(只取施、受、谓词)过滤如时间等图片很难反映的信息。

  聚焦两个问题:如何去获取并且表示常识知识?并且如何应用获取到的常识知识进行推理?论文尝试从多个不同来源的异构知识库当中获取了相关的信息,并将这些知识统一表示成了带有推理代价的推理规则的形式,采用一个基于注意力机制的多知识推理模型,综合考虑上述所有的知识完成推理任务。

  任务类型:在 RocStories 数据集上,在给定一个故事的前 4 句话的情况下,要求系统从两个候选句子当中选出一个作为故事的结尾。

  推理规则:统一将知识表示成如下的推理规则的形式,在关系 f下,元素 Y可以由元素 X推出,其推理代价是s。

  采用两个模型来捕捉这个信息,一种是基于有序的 PMI 模型,另外一个基于Skip-Gram的向量化表示模型,本质都是基于事件对在文本当中的有序共现的频繁程度来计算推理规则的代价的。

  以星巴克为例,捕捉的第一种关系是实体间的共指关系(coreference),比如说用“咖啡屋”来指代星巴克。从Wordnet来获取实体间上下位关系的知识。cost 是 1 当且仅当 X 和 Y 是同义词或者有上下位关系

  第二种关系是相关关系(associative),比如说出现星巴克时可能会出现“拿铁咖啡”这一类与之相关的实体。通过Wikipedia中实体页面的链接关系来得到实体间的相关关系知识,Cost 是两个实体间的距离(Milne and Witten(2008).)

  上述推理规则代价的计算方式不同,论文使用了一种类似于 Metric Learning的方式,通过在每个类别的推理规则上增加了一个非线性层来自动学习对不同类别的推理规则代价的校准。

  另外,由于否定的存在会反转事件关系以及情感关系的推理结果,论文对否定进行了特殊处理。

  如何将规则用到阅读理解之中?换句话说,就是在给定一个文档和候选答案的基础上,如何衡量候选答案是否正确?首先将文档以及候选答案都划分为元素,整个推理的过程就被转化成了一个推理规则选择以及对这个推理的合理性进行评估的过程。

  重要假设:一组有效的推理应当要能够覆盖住结尾当中的所有元素。换言之,结尾当中出现的每一个元素,都应当能够在原文当中找到它出现的依据。

  上面一个推理就是一组有效的推理,这组推理是很符合人的认知的。因为我们通常会通过 Mary 和 She 之间的实体共指关系、Restaurant 和 order 之间的序列关系以及 restaurant 和 food 之间的相关关系来判断这个结果是不是成立的。

  这个就不怎么合理,因为我们不太会去考虑一个人和一个事件之间是不是有时序关系,以及考虑 walk to 这样一个动作和 food 之间的联系。

  采用每一种推理的可能性是不同的,用P(RD,H)P(RD,H)来对这种推理的选择建模,基于元素独立性假设,得到下面的式子

  是否选择一条推理规则参与推理一个假设元素hihi,取决于对于原文当中推理得到hihi的元素djdj的选择,以及对于djdj到hihi之间推理关系的选择。然后将这个概率分布重新定义了一个重要性函数,与三个因子相关:

  a(h,f) 以及 a(d,f)一个元素与这条推理规则的关系的一个关联程度,使用一个注意力函数来建模这种关联程度

  使用一个 softmax 函数来归一化所有候选的代价值,并且使用最大后验概率估计来估计模型当中的参数。

  DSSM (Huang et al., 2013)将文档和候选答案各自表示成了一个语义向量,并且计算它们之间的语义距离

  每一种知识都能够起到作用,移除任何一种知识都会导致系统的performance显著地降低。

  一是推理规则怎样产生更多更复杂的推理?二是训练数据,一方面,常识阅读理解数据还是很缺乏,可能需要半监督或远程监督的方法来拓展训练数据;另一方面,可能需要扩展更多的数据源。

  生成式聊天系统可以看作是一个特殊的翻译过程,一个 question-answer pair 等价于 SMT 需要处理的一条平行语料,而 SMT 的训练过程实际上也就等价于构建问题和答案当中词语的语义关联过程。NMT 作为 SMT 高级版可以用来实现聊天回复的自动生成。这种新的自动聊天模型架构命名为Neural Response Generation(NRG)。

  而现在 NRG 存在问题是生成的答案严重趋同,不具有实际价值,如对于任何的用户 query,生成的结果都有可能是“我也觉得”或“我也是这么认为的”,这种生成结果被称为safe response。safe response 产生原因如下:

  聊天数据中词语在句子不同位置的概率分布具有非常明显的长尾特性,尤其在句子开头,相当大比例的聊天回复是以“我”“也”作为开头的句子,词语概率分布上的模式会优先被 decoder 的语言模型学到,并在生成过程中严重抑制 query 与 response 之间词语关联模式的作用,也就是说,即便有了 query 的语义向量作为条件,decoder 仍然会挑选概率最大的“我”作为 response 的第一个词语,又由于语言模型的特性,接下来的词语将极有可能是“也”……以此类推,一个 safe response 由此产生。

  常见的解决方案包括:通过引入 attention mechanism 强化 query 中重点的语义信息;削弱 decoder 中语言模型的影响;引入 user modeling 或者外部知识等信息也能够增强生成回复的多样性。这些其实是对于模型或者数据的局部感知,如果从更加全局的角度考虑 safe response 的问题,就会发现产生 safe response 的 S2S 模型实际上是陷入了一个局部的最优解,而我们需要的是给模型施加一个干扰,使其跳出局部解,进入更加优化的状态,那么最简单的正向干扰是,告知模型它生成的 safe response 是很差的结果,尽管生成这样的结果的 loss 是较小的。这样就开启了生成式对抗网络(Generative Adversarial Networks, GAN)在生成式聊天问题中的曲折探索。

  将 GAN 引入聊天回复生成的思路:使用 encoder-decoder 架构搭建一个回复生成器G,负责生成指定 query 的一个 response,同时搭建一个判别器 D 负责判断生成的结果与真正的 response 尚存多大的差距,并根据判别器的输出调整生成器 G,使其跳出产生 safe response 的局部最优局面。

  一个重要的问题是如何实现判别器 D 训练误差向生成器 G 的反向传播(Backpropagation)。对于文本的生成来说,一个文本样本的生成必然伴随 G 在输出层对词语的采样过程,无论这种采样所遵循的原则是选取最大概率的 greedy思想还是 beam searching,它实际上都引入了离散的操作,这种不可导的过程就像道路上突然出现的断崖,阻挡了反向传播的脚步,使对于 G 的对抗训练无法进行下去。这篇论文就针对文本生成过程中的采样操作带来的误差无法传导的实际问题提出了解决方案。

  论文为生成器 G 构建了一个Approximate Embedding Layer(AEL 如图中红色矩形框中所示,其细节在图右侧部分给出),这一层的作用是近似的表达每次采样过程,在每一个 generation step 中不再试图得到具体的词,而是基于词语的概率分布算出一个采样向量。这个操作的具体过程是,在每一个 generation step 里,GRU 输出的隐状态hihi在加入一个随机扰动zizi之后,经过全连接层和 softmax 之后得到整个词表中每个词语的概率分布,我们将这个概率分布作为权重对词表中所有词语的 embedding 进行加权求和,从而得到一个当前采样的词语的近似向量表示(如图中右侧绿框所示),并令其作为下一个 generation step 的输入。同时,此近似向量同样可以用来拼接组成 fake response 的表示用于 D 的训练。不难看出,这种对于采样结果的近似表示操作是连续可导的,并且引入这种近似表示并不改变模型 G 的训练目标。

  详细戳首发!三角兽被 EMNLP 录取论文精华导读:基于对抗学习的生成式对话模型浅说

  目前的 NMT 里 decoder 一次生成一个单词,不能进行 one-many 以及 many-many 的翻译,也就是没法做目标语言 phrase 的翻译,而 SMT 能做,所以想法是把两者结合。结合方法一般来说有两种,一是 shallow,NMT 作为 feature 放到传统框架进行预调;二是 deep,SMT 给 NMT 做推荐,NMT 用神经网络的方式接收 SMT 的东西。这篇论文用的是第二种方式。

  问题是 SMT 没那么强(很难保证准确率),NMT 也没那么弱(一个单词一个单词的翻译也能把正确的短语翻译出来)

  Encoder 还采用了多样例学习机制(Multi-instances Learning),用一个句子集合联合预测关系,句子集合的选择方法有随机方法(rand),最大化方法(max, 选最具代表性的),选择-注意力机制(att),注意力机制的效果最好。

  之后可以继续的两个改进方向,一是对多步关系路径进行建模,使得模型可以处理更复杂的语义情况,而是将文本中的关系路径和知识图谱中的关系路径有机地结合,更好地完成关系抽取和知识图谱补全的任务。

  这里我觉得有意思的一点是作者模仿了 skip-gram 模型提出了一种同时训练多语言的 embedding 的方法。一句话解释就是通过中心词来预测自身/其他语言周围的前后词。比如说双语预料中,需要使中文能预测中文自身的周围词,英文能学习英文自身的周围词,还要通过对齐来学习中文来预测英文、英文来预测中文。skip-gram 相关戳词向量总结笔记(简洁版)。

  这个方法很好的一点是目标中的词对词预测来说是天然的标注,构造简单。然而要注意的两个点是预测要准&预测要快,否则就失去了意义。还有个问题是,按理来说较大词表质量更好然而翻译效率低,较小的词表,像这篇论文提出的,翻译某句话提前先预测生成一个新的小的词表交给 decoder,效率毫无疑问会提升,但是质量,为啥会更好?不是很理解,坐等论文。

  这篇论文对 tree-based encoder 做了改造,让它既能捕捉局部的语义信息,又能捕捉全局的语义信息。

  bottom-up encoding 取得局部信息,top-down encoding 取得全局信息。对于 OOV(out-of-vocabulary) 问题,基于 sub-word 思想,这里单独建立一个二叉词法树并将其融入原来的句法树里。这样如下图所示,模型囊括了句子、短语、词、sub-word 各种全局/局部信息,表达力 max。然而同样带来的问题是会产生重复信息,进而可能会造成重复翻译。

  为解决重复翻译的问题,或者说词/短语向量的 balance,这里还引入了 attention 机制

  任务目标是根据文本信息及其中包含的情感表达抽取出情感原因。论文作者之前发过论文,用的是基于 dependency parsing 的方法,把情感原因转化为树的分类任务,但结果依赖 dependency parsing 的准确性,而且只能处理对子句/句子级别的原因,不能处理细粒度的短语级别的原因。所以这一篇转换了思路,把emotion cause extraction问题转化为question-answering问题,提出了一种基于卷积的多层 memory network 方法,结果比之前基于树的方法提升了 2 个点。

  用传统的 memory network 作为基础模型,reading text 用词向量 embedding 表达,存到记忆单元,待判断的情感词的词向量作为注意力单元,将 query 和 text 每个词进行内积操作,softmax 归一化作为词权重,用注意力的加权和作为整个句子的表达。为了引入词语的上下文,用了类似卷积的注意力加权方法,每个词的注意力由当前词、前文词、后文词共同决定,加权过程中根据上下文注意力对不同位置的词语进行加权,获得以短语窗口为单位的加权结果,然后进行输出。同时对记忆网络做了多层的堆叠,以学习更深的特征。最后效果得到了提升,并且在短语级别的情感原因抽取上也取得了不错的效果。

  问题来了,query 是怎么产生的呢?=数据集标注好了情感表达词!

  主要研究无监督的双语对齐方法,也就是能无监督地联系两个词向量空间,本质上是需要词向量空间之间,或者说词向量分布之间距离的度量。用的EMD 思想,目标就是寻找一个映射G,使得映射后的源语言词向量分布和目标语言词向量分布的 EMD 或者说 Wasserstein 距离最小化。具体等论文发表再研究了。

  解决中文的零指代消解问题。主要思路,用上下文来表示 ZP,使用两个 LSTM,一个对前文建模(left-to-right),一个对后文建模(right-to-left),然后连接两边最后一个隐层的向量作为 AZP 的表达(也可以尝试平均/求和)

  整场报告会听下来,收获还是有的,只是不如想象中那么惊艳,各种换换零部件,加个 attention,融入传统特征,给人换汤不换药的感觉,听多了也就这么回事儿,最大一个收获可能是再次意识到了attention机制的强大,大部分论文用了 attention 结果都有大幅的改善。anyway,能提高准确率/训练效率的模型就是好模型!大家都是棒棒哒!学习!

  AI慕课学院近期推出了《NLP工程师入门实践班:基于深度学习的自然语言处理》课程!

  三大模块,五大应用,海外博士讲师手把手教你入门NLP,更有丰富项目经验相授;算法+实践,搭配典型行业应用;随到随学,专业社群,讲师在线答疑!

本文链接:http://solidindia.net/jufashu/182.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top