机器翻译之Facebook的CNN与Google的Attention

  • 传统的seq2seq
  • facebook的cnn
    • 结构
    • 特点
      • position embedding
      • 卷积的引入
      • GLU控制信息的流动
      • attention
  • google的attention
    • 结构
    • 特点
      • KVQ的思维架构
      • multi-head attention
      • attention的多种应用
  • 参考资料

这里写图片描述

机器翻译的常用架构是seq2seq,可是seq2seq中的核心模型RNN是序列模型,后面的计算依赖于前面的计算,如何并行提高效率很是苦恼。最近,Facebook和Google的研究人员分别尝试用CNN与Attention代替seq2seq进行机器翻译,提高了训练效率,结构与思想也很予人启迪。

传统的seq2seq

这里写图片描述

传统seq2seq训练结构如上图,采用两个RNN,分别作为encoder和decoder。seq2seq的一些改进如下:

  • decoder中增加更多的信息:decoder中 ht 除了依赖 ht1,xt ,还依赖于enc_state
  • 使用attention机制。

facebook的cnn

结构

这里写图片描述

这里写图片描述

其结构如上面2图所示,具体地:

  1. 输入序列大小为【m】
  2. 对输入序列做position embedding,得到【m,e_m】
  3. 对position embedding做卷积,得到【2m,e_m】
  4. 卷积后通过Gated Linear Units,得到【m,e_m】
  5. 重复3-4,stack起来,得到【m,e_m】
  6. 对输出序列重复2-5,得到【n,e_n】
  7. 对5,6中的数据做点乘,得到中间的矩阵【m,n】,代表了attention的分数信息
  8. 上文信息,通过卷积前(细节信息)和卷积后(主旨信息)的信息和获得【m,e_m】。
  9. 有了上文信息【m,e_m】和attention【m,n】信息,便可以获得输出序列中每个词对应的上文特征【n,e_m】
  10. 将输出序列的上文特征【n,e_m】与输出序列的卷积特征【n,e_n】组合,加入全连接,加入softmax层即可构建损失函数进行训练。

特点

position embedding

position embedding,在词向量中潜入了位置信息。

卷积的引入

首先,简单描述下文中的卷积,假设原数据大小 Xkd (k个数据,embeding的维度是d),每个卷积核参数化 W2dkd ,卷积后得到的结果是 2d 。padding合适的化,最后得到 2kd

卷积的引入,有以下几个优点:

  • 使计算可以做并行化
  • 卷积层可以stack起来,不同的层的可视域不同,底层的是细节信息,高层的是全局信息。
  • 效率高,对序列长度n的序列建模,rnn的操作是 O(n) ,CNN的操作是 O(log(n)

GLU控制信息的流动

GLU的公式如下:

v([A,B])=Aσ(B)

卷积出来的数据【2m,e_m】对应【A,B】,通过GLU便恢复了原数据形状【m,e_m】。同时GLU中的A控制信息,B相当于开关控制着有效信息的流动。

attention

attention的分数矩阵,是输入、输出序列通过多个卷积stack起来获得的,每个词的可视域通过CNN自然地扩增了。

attention的上文信息,通过低层的CNN和高层的CNN组合获得, 反映了词的细节信息和全局主旨信息。

google的attention

结构

这里写图片描述

特点

K,V,Q的思维架构

这里写图片描述

这里写图片描述

本文提出了一种key、value、pair的计算attention的架构,结构与思路如上图所示。首先,通过Query和Key矩阵计算每个quiry对应的key的匹配程度,然后根据匹配程度将Value矩阵中的元素组合起来。

multi-head attention

这里写图片描述

通过一个全连接层,可以将K、V、Q映射到维度较低的子空间,然后在不同的子空间进行attention的计算。这样做有如下优点:

  • 子空间维度较低,不增加计算量
  • 有利于并行化
  • 不同的子空间捕获不同的特征

attention的多种应用

结构中共出现了3出attention:

  • encoder-decoder attention,K、V来自encoder,Q来自decoder,作用与传统的seq2seq相似,decoder根据不同的位置捕获encoder不同位置的信息。
  • encoder self-attention。K、V、Q来自同一位置,encoder的每一个位置都捕获所有位置的信息。
  • decoder self-attention,K、V、Q来自同一位置,decoder的每一个位置都捕获该位置前所有位置的信息(通过mask实现)。

参考资料

  1. Convolutional Sequence to Sequence Learning
  2. Attention Is All You Need

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

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

相关文章

探索机器翻译:从统计机器翻译到神经机器翻译

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

[机器翻译]——pivot-based zero-shot translation based on fairseq

文章目录 前言翻译到en生成"伪"的、到英语的数据文件把每一个zs语言对翻译到en从fairseq-generate生成的文件中,抽取纯en文件 把en数据和所有zs语言对的tgt数据形成平行语料,然后做预处理形成en到tgt的平行语料预处理 在en到tgt语言的"伪…

大语言模型的多语言机器翻译能力分析

来自:南大NLP 进NLP群—>加入NLP交流群 01 研究动机 以ChatGPT为代表的大语言模型(Large Language Models, LLM)在机器翻译(Machine Translation, MT)任务上展现出了惊人的潜力。通过情景学习(In-Contex…

嗖的一下第二弹,这些好看的皮肤直接一键收下~~

✨前言 📢首先祝大家假期愉快🚀 这个假期,大家是怎么玩的呢❓ 小博主我趁着假期也摆了几天😜 因此有好几天没有更新文章了…… 今天偷偷的发一篇文章,浅浅做个样子吧😬 今儿写的文章是继上次写的&#xff…

为什么国内APP热衷于皮肤特效

微博跟腾讯学到了精髓,功能不够皮肤来凑 这不是吐槽呀,是有一定心理学在里面的,人们普遍希望跟身边的人有差异性的,就好像打游戏我买个皮肤在战场上可以秀一下;在游戏中我买个xxx刀,可以打出火花星星等效果…

云炬Android开发教程0 jdk下载与安装教程(小白)

第一步:jdk下载 (1)oracle官网地址下载:点我进官网下载 (2)百度云连接下载(提供8u211版本): 链接:https://pan.baidu.com/s/1i74YGO8zXuGxumZYGakKKw 提取码…

墨墨背单词

墨墨背单词 推荐一款背单词软件:墨墨背单词(无限单词版) 下载链接:https://download.csdn.net/download/EQ_cyc/12438004

将有道云词典单词本导入到墨墨背单词

有道云词典导出.XML文件用EXCEL导入.XML文件。点击:数据>自其他来源>来自XML数据导入 导入后会提示以下界面,全部点击确定即可 导入数据后变成这样子 每一行的间距可能特别大,不用管直接复制第一列,放到一个新建的txt文件…

墨墨背单词(最新无限单词版---持续更新)

----------2020年5月27日更新---------- 废话不多说先上图 用户可以直接登录账号,由于现在直接注册功能系统会提示更新到最新系统导致无法注册账户,但是可以通过忘记密码的形式来曲线注册账户,方法如下 软件的下载连接为: https://down…

获取墨墨背单词里面的单词书中的单词

首先,其实是直接尝试抓包获取的,不过在抓包的信息中没发现类似的内容,然后就去百度了以下,发现还是有聪明人。 把下载的 apk 文件解压缩一下,把里面的 assets 文件夹里面的 maimemo.v3.db 直接拖到navicat中&#xff…

[小小项目]背单词的程序---1.0_纯C语言_单文件版本

文章目录 前言:可以学到什么?一、功能介绍以及演示二、准备工作1)准备所需的单词的文本2)任意的C语言开发环境 三、代码1)读取文件,不存在则爆出异常2)开辟空间来存放读取出来的内容3&#xff0…

android 补签控件,墨墨背单词怎么补签 看完你就懂了

现在手机的普及让不少用户在手机上面学习英语,而墨墨背单词就是一款专业的英语学习软件,它可以提醒用户每日记忆单词,还有督促你学习的签到系统,通过每日的签到不仅可以提高你学习英语的动力还能免费提升每日学习单词的上限量呢。…

未root的情况下获取墨墨背单词的databases文件夹

文章目录 前言解决思路第一步:备份下载Winhex使用abe解压备份文件结语 前言 在我的《墨墨背单词免费版本地数据找回方法》这篇博客中提到:“复制出“databases”文件”。但这个文件夹并不是那么容易复制出的,如果你的手机已经被root了&#…

C语言实现背单词软件(系统级别)

目录 一、软件需求说明书 1 引言 2 任务概述 二、可行性研究报告 1 编写目的 2 所建议的系统(技术可行性) 3 使用方面的可行性 4 结论 三、系统设计说明书 1.面向对象设计 1.1前提说明 1.2 系统设计 2.面向对象建模 四&#xf…

不背单词vs墨墨背单词 竞品分析

1. 分析背景 1.1 业界状况 根据易观千帆数据中心,2020年4月全网教育APP活跃用户共44597.16万,将近4.5亿,且仍在持续稳定增长,其中在线外语学习赛道坐拥6726.52万活跃用户,占比15%。背单词类软件作为一项外语学习人群…

【墨墨英语单词库免费开源无偿分享】小学、初中、高中、大学四六级专四专八、考研、托福、雅思等词书文本大合集

还在愁没有自己想要的词书?这不,我都给你准备好了: 纯英文txt源词库 带list分类txt词库大全 带中文释义excel词库 这些词书呢,是知乎上的一位大神用爬虫把墨墨背单词app的所有词库给爬取下来的, 而且无偿开源&…

关于电脑使用墨墨背单词使用键盘操作问题

在上班期间摸鱼的时候偶尔背背单词,用鼠标还需要平移点击,很累。 如何全用键盘操作界面? 01 Windows系统 Windows系统使用比较简单,下载一个雷电模拟器就可以解决。 默认数字123分别对应墨墨上的“认识”、“模糊”、“忘记”。…

印度网民集体删除中国APP,网友评论亮了

全世界只有3.14 % 的人关注了 爆炸吧知识 最近,国外有一款Remove China Apps火了。 这款APP只有一个功能:可以一键扫描用户手机里的应用,识别出自中国公司的应用,并进行一键删除的骚操作。 应用的主图标、界面,甚至特意…

因签署Android独家协议排除竞争对手 谷歌在印度被罚款1.62亿美元

印度反垄断监管机构日前宣布对谷歌罚款1.62亿美元 , 原因是谷歌与合作伙伴签署独家协议以排除竞争对手。 怎么排除竞争对手还是往期相同的话题:谷歌要求合作伙伴们在安卓设备里预装谷歌核心应用并设置为默认。 同时还要求合作伙伴不要开发基于安卓开源项目的定制系…

油猴脚本 使用教程

一、了解油猴 1.百度“油猴”搜索官网 2.进入官网 https://greasyfork.org/zh-CN 用户脚本是什么? 用户脚本是一段代码,它们能够优化您的网页浏览体验。安装之后,有些脚本能为网站添加新的功能,有些能使网站的界面更加易用&am…