Git Product home page Git Product logo

mt-readings's People

Contributors

zhajiahe avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

sdxwang

mt-readings's Issues

20-ACL In Neural Machine Translation, What Does Transfer Learning Transfer?

简介

文章分析在低资源任务中广泛应用的迁移学习方法。
word embedding 在迁移任务中是一个很重要的角色,即使如此,仅仅迁移word embedding甚至不如之前。文章指出在迁移之前将词表对齐会取得不错的效果。因此,文章其实讨论了两个问题:一、词向量迁移 ;二、结构迁移
词向量迁移方式:

  • Exclude Embedding 不迁移embedding
  • Frequency Assignment 不管词表对齐,根据频率排序词表
  • Random Assignment 随机对齐
  • Joint Vocabulary 联和词表
  • Token Matching 单词映射
    最后两个方法效果最好,但是联合词表需要提前准备固定的词表。
    结构迁移实验设计:
    父模型使用不同的数据初始化:双语语料,单语语料,单语替换语料,随机语料等。
    迁移效果依次下降,但都好于baseline。因此证明了迁移了一些结构信息。

不足

  • 单词映射实际上仅仅把相同单词对齐了,其他单词都是随机初始化的,并不是想象中的那样(相同语义的单词赋予相近的embedding)
  • 结构迁移的设计很迷惑
  • 文章讨论的仅仅是低资源,没有是零资源

结论

模型中间层利于迁移学习,只要词表正确地映射并且隐藏层也迁移了,那么embedding也是可以迁移的。最后作者建议使用高资源的预训练模型初始化,不必考虑词表问题(??),这样训练子模型收敛很快。

论文信息

  • 作者:爱丁堡
  • Paper

20-ICLR On the Weaknesses of Reinforcement Learning for Neural Machine Translation

简介

虽然强化学习(RL)经常被用来增强文本生成的学习,但是在机器翻译领域,很少有什么作用,文章分析了在MT上使用RL的方法:MRT、GAN
MT任务的动作空间非常巨大,使用RL进行搜索难以拟合。
作者抨击RL实际上没有优化期望奖赏,而且需要花费很长时间收敛。更重要的是,RL只对已经很好拟合的模型有效,其效果来自PKE(Peakiness effect)

贡献

  • 理论上解释了RL/MRT在做什么
  • 提出了RL/MRT的实际作用是PKE

不足

  • 对于MRT的实验不充分

结论

  • MT使用MLE确实存在优化目标不一致的问题,但是使用MRT也并不值得尝试,作者经过实验证明RL/MRT所带来的效益仅仅在于模型输出分布的尖锐化,这种改变通过调整tamperature就可以做到,而且RL/MRT收敛慢,提升效果小,就目前来看,没有使用的价值。
  • 如何解决优化目标不一致的问题真的是千古难题~.~

论文信息

  • 作者:希伯来大学
  • Paper

BPE-Dropout: Simple and Effective Subword Regularization

简介

虽然BPE可以大大减少词表的大小,但是经过BPE分词得到的词表是固定的,一定程度上限制了模型学习词语的不同形态。
文章提出了一种Regularization方法,即在正常的BPE合并操作下,以一定的概率忽略这次合并。

在训练的时候,模型使用的词表是经过dropout得到的,而推理阶段,使用正常的BPE词表。

贡献

  • 提出了一种简单有效的regularization方法
  • 在一些翻译任务上取得不错的提升
  • 能够间接提升鲁棒性

不足

  • 代码在哪?
  • 从附录来看,训练时间会很长...

总结

  • dropout是万能的!!!
  • 这个方法可以应用到token-drop上? 防止丢失重要信息

论文信息

20-ACL-On the Inference Calibration of Neural Machine Translation

简介

论文分析了机器翻译在推理时的校准Calibration问题:即模型输出分布与结果不吻合,存在差距。 文章使用的评价指标是ECE(期望校准误差),发现训练的ECE远远小于推理ECE,说明缩小训练和推理之间的差距需要做很多工作。
论文分析了一些NMT在语言学方面的现象:
Frequency, Position, Fertility, Syntactic Roles, Word Granularity
模型在这几个方面会出现一些over-estimationunder-estimation的现象,值得进一步关注。

  • low-frequency --> over-estimation
  • left position --> under-estimation
  • (fertility <=1) --> over-estimation || (fertility > 1) --> under-estimation
  • content token (Noun,Verb,Adj) --> miscalibration
  • subword子词 --> miscalibration
    旨在解决NMT模型校准问题,最后给出了两个解决方案:
    label smooth && larger model size

贡献

  • well calibrated之后,可以开很大的Beam(100),这点有意思
  • 给出了一些语言学方面的解释,更具有说服力

不足

  • 这个graduated label smoothing虽然很大程度缓解了问题,但BLEU提升不明显。而且under-estimation反而变多了??
  • 增加模型容量不能降低ECE,那么如何证明翻译质量提升和ECE相关呢?

总结

  • 个人第一次对Calibration有了一点点理解,但是还有点模糊,似乎就是在讲我们训练的模型能否很好的拟合数据,不能over-estimate,也不能under-estimate
  • 做科研还是要向人家学习,先有问题,然后分析,再有解决方案。而不是瞎做实验,提前预设结论。
  • 还是学习一下分析思路和分析工具,不能停留表面。

论文信息

20-DeepAi-BERT-ATTACK: Adversarial Attack Against BERT Using BERT

简介

  • 文章设计了用类似于BERT这样预训练的掩码语言模型来生成对抗样本的方法——BERT-Attack。相比于往常的替换策略构造对抗样本,BERT-Attack更加高效并且得到的对抗样本更具有针对性。
  • 针对性:针对敏感词(对目标模型输出影响大的单词)进行扰动。
  • 高效性:搜索替换词产生对抗样本的过程增加了2点约束来提高搜索效率:
    1)搜索到第一个让模型判断错误的敏感词停止。
    2)搜索到对目标模型输出影响最大的候选词停止。

贡献

  • 提供了一种评估单词重要性的方法,方法比较简单(相比于其他需要通过反向梯度评估的方法),但是比较费时间。
  • 通过BERT-Attack产生的对抗样本有扰动小,迷惑性大的特点。

不足

  • 给每个单词的重要程度打分的时间和句子长度相关
  • 文章更多低是从对抗样本的扰动程度和对抗成功率去分析BERT-Attack,对于具体的NLP任务的性能的对比实验没有看到。

总结

文章提出的BERT-Attack挺有意思的,过程看起来简单,但是实现的工作蛮复杂的,可惜作者还没开源代码。

论文信息

  • Author:Li Linyang
  • paper

20-ICLR-Data-dependent Gaussian Prior Objective for Language Generation

简介

作者指出在语言生成任务上MLE是最常用的优化目标,然而,MLE只对ground_truth计算损失。众所周知,语言生成任务如机器翻译,给定一个源句子,它的目标翻译有无限的可能,而目前的机器翻译模型能做到的只能是优化给定的源句子和目标句子。
在此基础上,作者提出了一个假设,即当给定一个源单词,它对应的翻译目标是呈现正态分布的。
比如:源单词是苹果, 那么P(y|x = '苹果')的分布可能是{‘apple':0.6, 'fruit':0.2, 'phone':0.2}
因此,作者在MLE的基础上,加入新的loss:引入每个单词的高斯先验分布,优化经验分布与该高斯分布的距离KL散度。而这个先验的高斯分布是根据预训练出来的word_embedding, 计算单词之间的cos距离,距离越近,赋予更高的概率。

论文贡献

  • 提出问题Negative diversity ignorance,即使用MLE没有很好的拟合实际分布。
  • 提出的高斯先验分布是与数据独立的。

不足

  • 高斯先验分布是否合理,是最优解吗
  • 对于每一个单词计算先验分布,占用资源是否多大
  • 代码还没给

总结

  • 很巧妙地使用一个比较有说服力的方法缓和MLE的问题,和Label smooth的想法类似,而后者只是平等地对待那些non-ground_truth, 比我之前地想法好(partial label smooth),自己还是太年轻。
  • 该论文得到审稿人一致好评(8,8,8)
  • 抽取单词的先验分布感觉有很多进步空间

论文信息

  • Author: Shanghai Jiao Tong University
  • Paper
  • Code

20-ICLR Lite Transformer with Long-Short Range Attention

简介

论文分析了transformer中注意力机制对长短距离依赖关系捕获过程中的计算成本进行了分析:计算成本随着输入的长度N和特征维度D快速递增。在算力有限的情况下,模型的部署会被大N数据压垮,通过可视化Bert中注意力Weights可得到两个特性:离散、对角。离散对应长距离关系,对角对应局部依赖。为了缩减计算成本,对原有的transformer进行针对性的改造,提出长短距离的注意力结构LSRA——二分支结构,一边的attention负责长距离,另一边的Conv负责局部构成全局关系。

贡献

  • 指出注意力机制是存在冗余,即对局部关系的建模关注过高
  • LSRA则将D降维到原来的一半输入到attention中,节约整体的一半算力,然后通过另一边的轻量Conv来弥补捕获效果,论文通过可视化attention的Weights,观察到稀疏,缺少对角特征,对应长距离关系,而降低了注意力对局部建模的过分关注。

不足

简单通过对特征维度D的缩减就减少了注意力机制对局部关系的关注缺少理论论证

总结

lite transformer在算力和存储资源限制下,效果在机器翻译任务、文本摘要任务上总体上能和常规transformer相比,甚至在个别任务上也有提升。配合剪枝和量化技术,模型可以压缩到原来的1/4。

论文信息

Author:Zhanghao Wu&Zhijian Liu
paper
code

19-ACL-Analyzing the Limitations of Cross-lingual Word Embedding Mappings

简介

文章针对了cross-lingual emdedding learning的两种方法:mapping methodjoint method学习出来的不同语言embedding进行了比较,主要目的是验证mapping method的同构假设的正确性,即不同语言的embedding具有近乎类似结构的假设。但是事实上,mapping method独立学习不同语言的embedding,并不类似,并且不同语言存在语言学上的分歧,这一点导致mapping method方法存在重大的局限并且会造成重大的匹配错误。而joint method方法学习出来的embedding space,相比于mapping method对不同语言的适应性更好,并且在双语词典推断任务上的准确性也更高。所以推断在相同的理想条件下, mapping method 的性能是无法超越joint method的。
mapping method方法:首先独立地学习不同语言的embedding,然后通过线性映射来将不同语言的embedding映射到同一个空间。
joint method方法:在并行对齐(词级别/句子级别)上同时学习不同语言的embedding。

贡献

  1. 回答了同构假设的正确性。不同语言之间本身存在语言学上的差异,所以其embedding space并不类似,尤其是一些相差很大的语言,所以mapping method 的性能很大程度上取决于学习语言的相似程度,也是该方法的局限性。但是joint method在一定程度上能够适应语言的差异。
  2. 在相对理想并相同的条件下,在不同方面比较了两种方法。

不足

(文章中关于hubness problem的部分由于读者本人尚未理解,之后再补充)

总结

cross-lingual emdedding learningmapping method的同构假设并不准确,并存在局限。

论文信息

  • 作者:Aitor Ormazabal, Mikel Artetxe
  • paper

18-ICLR Non-Autoregressive Neural Machine Translation

前言

NAT是我一直以来不敢触摸的领域,因为自己的基础知识太薄弱:数学,代码,ML理论等等。
写这篇笔记也是激励自己前进,写的不好的地方还望各位指教,轻喷-_-|

简介

利用Latent加速机器翻译解码的文章早已存在,但是真正实现非自回归机器翻译是头一次。
首先介绍自回归和非自回归的区别:

  • 自回归在解码过程中,不断地根据上一个生成的单词,预测下一个单词,是一个循环的过程
  • 非自回归则是一次性完整地输出答案

为什么非自回归效果差?且难以实现?:

  • 机器翻译给定源端句子,目标翻译是多样的,自回归就是一个搜索的过程。非自回归仅仅依赖于源端序列,生成目标,因此不具有多样性,而且,由于有多对一的情况存在(‘谢谢你’和‘谢谢’都可以翻译为‘thanks’),模型难以拟合(文章提出了multi-modality problem)

怎么解决?

  • fertility:预测源token的翻译长度,即目标token的长度
  • Noisy parallel decoding NPD : 从真实的fertility space,里面采样,指导模型解码。因此需要distillation,即训练teacher model,利用teacher model生成的结果采样fertility.
  • Fine-tune: 模型输出分布与实际依然差距很大,当模型收敛后,优化NATAR模型分布的KL距离。(这块公式不太懂)

贡献

  • 非自回归机器翻译开篇之作
  • 提出了fertility、NPD、distillation等训练方法,真正意义上实现了NAT

不足

  • NAT在理论上应该是存在局限性的,但通过一些方法可以实现与AR接近,但是我认为无法超越,作者使用的方法很有效,也许是我能力不足,读起来很困难。

总结

  • multi-modality是NAT面临最大的困难,而作者利用一系列操作神奇地缓解了这个问题,使得NAT成为可能,真是感叹其智慧!!不过,从模型设计来看,利用AR作为teacher,模型性能无法超越AR也是必然。目前来看(2020年),虽然有很多新的设计思路和进步,但总归无法超过自回归。
  • distillation, EM算法应该找时间看看。finetune值得借鉴

论文信息

18-NIPS-FRAGE: Frequency-Agnostic Word Representation

简介

词向量是NLP任务的基本学习单元,相比于ont-hot编码,词向量能够表示丰富的词相关信息,一般认为,语义相近的词汇所处的向量空间应是相近的。
但是,无论是预训练词向量或者机器翻译模型中的词向量,它们都难以对词表中的词频词充分建模(由于低频词出现次数低,针对其的更新次数很少),即使高频词和低频词的语义相近,但是它们在向量空间的距离很远。
事实证明,机器翻译在推理时,更加倾向于选择常见的单词作为翻译结果。
作者提出了一种类似于对抗训练的方法,引入一个判别器,让该判别器错误地对高频词和低频词分类,当模型收敛时,模型对于高频词和低频词无法正确地区分,因此间接地优化低频词的向量。

贡献

  • 提出了很好的针对低频词(稀有词)的建模方法,即使batch里面没有低频词,也会更新每一个单词的embedding
  • 通过对embeddding的可视化分析,清楚展示问题。
  • 在多个任务上都有效果(LM,MT,word similarity,...)

不足

  • 高频词和低频词的比例很难确定了,尤其是边界值,感觉太hard

总结

方法很新奇,在机翻上也有效果,不过baseline有点低。
感觉和weight tying有点像,后者不仅仅减少了参数量,并且在每一步都更新目标端词表的所有单词。
根据作者给的代码自己复现了一下,确实有点提升,但是发现这个改动在target端有效,在sourced端起到反效果,bleu值反而下降,这点从代码里可以看出来,作者并没有给出解释。

论文信息

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.