最新|TensorFlow开源的序列到序列框架:tf-seq2seq

4月11日,Google的大脑研究团队发布了 tf-seq2seq这个开源的TensorFlow框架,它能够轻易进行实验而达到现有的效果,团队制作了该框架的代码库和模块等,能够最好地支持其功能。

去年,该团队发布了Google神经机器翻译(GoogleNeural Machine Translation,GNMT),它是一个序列到序列sequence-to-sequence(“seq2seq”)的模型,目前用于Google翻译系统中。虽然GNMT在翻译质量上有长足的进步,但是它还是受限于训练的框架无法对外部研究人员开放的短板。

tf-seq2seq:支持各种标准seq2seq模型的配置

此框架支持各种标准seq2seq模型的配置,例如深度的编码器和解码器,注意力机制,RNN或beam尺寸大小。这些功能让我们能够更好地发现最优超参数,得到更好的框架,详细可见团队的文章《神经机器翻译架构的大量探索》(“Massive Explorationof Neural Machine Translation Architectures”)

一个seq2seq模型能够翻译普通话到英文,每次翻译中,编码器都会处理1个汉字(黑色箭头),并生产一个输出向量(见蓝色箭头),解码器会逐字生成英文翻译,每次都处理最后一个词的前一个状态,并处理一个加权的所有的编码输出(aka attention[3],蓝色),最后输出下一个英文词。注意在应用中研究人员使用的是wordpieces[4]来处理生词。

tf-seq2seq:应用于各种序列到序列的任务

除了机器翻译外,tf-seq2seq能够应用于序列到序列的任务(例如学习基于一个输入序列产生输出序列的情况),包括机器总结、图像处理、语言识别和对话建模。该研究团队希望提出的新框架能够加速深度学习的研究,具体可以见其GitHub的项目库GitHub repository。

论文摘要

神经机器翻译(NMT)在过去几年中取得了显着的进步,现在生产系统正在部署到终端用户。 目前架构的一个主要缺点是训练费用昂贵,通常需要几天到几周的GPU时间来收敛。 这使得穷尽的超参数搜索,如通常与其他神经网络架构一样,非常昂贵。 在这项工作中,我们介绍了NMT架构超参数的第一次大规模分析。对应于GPU上的标准WMT英语超过250000小时的德语翻译任务。 我们的实验为构建和扩展NMT架构提供了新的见解和实用建议。 作为这一贡献的一部分,我们发布了一个开放源码的NMT框架,使研究人员能够轻松实验新技术,并重现现有技术的结果。

论文关键数据对比:

论文地址:https://arxiv.org/pdf/1703.03906.pdf

GitHub资源:https://github.com/google/seq2seq

参考文献

[1] Massive Exploration of Neural Machine Translation Architectures, Denny Britz, Anna Goldie, Minh-Thang Luong, Quoc Le(https://arxiv.org/pdf/1703.03906.pdf)

[2] Sequence to Sequence Learning with Neural Networks, Ilya Sutskever, Oriol Vinyals, Quoc V. Le. NIPS, 2014(https://papers.nips.cc/paper/5346-sequence-to-sequence-learning-with-neural-networks.pdf)

[3] Neural Machine Translation by Jointly Learning to Align and Translate, Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio. ICLR, 2015(https://arxiv.org/abs/1409.0473)

[4] Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation, Yonghui Wu, Mike Schuster, Zhifeng Chen, Quoc V. Le, Mohammad Norouzi, Wolfgang Macherey, Maxim Krikun, Yuan Cao, Qin Gao, Klaus Macherey, Jeff Klingner, Apurva Shah, Melvin Johnson, Xiaobing Liu, Łukasz Kaiser, Stephan Gouws, Yoshikiyo Kato, Taku Kudo, Hideto Kazawa, Keith Stevens, George Kurian, Nishant Patil, Wei Wang, Cliff Young, Jason Smith, Jason Riesa, Alex Rudnick, Oriol Vinyals, Greg Corrado, Macduff Hughes, Jeffrey Dean. Technical Report, 2016(https://arxiv.org/abs/1609.08144)

[5] Attention and Augmented Recurrent Neural Networks, Chris Olah, Shan Carter. Distill, 2016(http://distill.pub/2016/augmented-rnns/)

[6] Neural Machine Translation and Sequence-to-sequence Models: A Tutorial, Graham Neubig(https://arxiv.org/abs/1703.01619)

[7] Sequence-to-Sequence Models, TensorFlow.org(https://www.tensorflow.org/tutorials/seq2seq)

最新|TensorFlow开源的序列到序列框架相关推荐

  1. tensorflow打印模型结构_五行代码用图提升模型表现,TensorFlow开源NSL神经结构学习框架...

    选自Medium 机器之心编译 参与:一鸣.李亚洲 今日,谷歌 TensorFlow 宣布推出神经结构学习(NSL)开源框架,它使用神经图学习方法来训练带有图和结构化数据的神经网络. 据谷歌 Tens ...

  2. Nature子刊:三代测序重构菌株水平宏基因组序列的计算框架iGDA

    https://doi.org/10.1038/s41467-021-23289-4 2021年5月24日,美国西奈山伊坎医学院冯智星等在Nature Communications发文题为Detect ...

  3. TensorFlow 使用例子-LSTM实现序列标注

    本文主要改写了一下"Sequence Tagging with Tensorflow"程序.原文是基于英文的命名实体识别(named entity recognition)问题,由 ...

  4. 利用Tensorflow构建RNN并对序列数据进行建模

    利用Tensorflow构建RNN并对序列数据进行建模 对文本处理处理任务的方法中,一般将TF-IDF向量作为特征输入.显然的缺陷是:这种方法丢失了输入的文本序列中每个单词的顺序. 对一般的前馈神经网 ...

  5. 从我开发过的Tensorflow、飞桨、无量框架看深度学习这几年

    文 | Peter潘欣@知乎 和深度学习框架打交道已有多年时间.从Google的TensorFlow, 到百度的PaddlePaddle,再到现在腾讯的无量.很庆幸在AI技术爆发的这些年横跨中美几家公 ...

  6. 使用 Transformer 序列到序列的钢琴转录

    论文原文 最近笔者做了一个基于人工智能实现音乐转谱和人声分离功能的在线应用--反谱(Serocs),感兴趣的读者欢迎试用与分享,感谢您的支持!serocs.cn 摘要 近年来,自动音乐转录通过在大型数 ...

  7. 最新机器学习开源项目Top10

    作者 | Mybridge 译者 | Linstancy 整理 | Jane 出品 | AI科技大本营 [导读]过去一个月里,我们对近 1400 个机器学习项目进行了排名,并挑选出热度前 10 的项目 ...

  8. 清华「计图」、旷视「天元」纷纷重磅开源,国产深度学习框架迎来高光时刻...

    来源:CSDN 本文约3141字,建议阅读7分钟. 本文介绍清华开源的深度学习框架 Jittor(计图) 引起了广泛关注,支撑旷视诸多业务和战绩的深度学习框架 MegEngine(天元) 也将在近日开 ...

  9. 深度解析】Google第二代深度学习引擎TensorFlow开源(CMU邢波独家点评、白皮书全文、视频翻译)

    新智元原创1 作者:王嘉俊 王婉婷 TensorFlow 是 Google 第二代深度学习系统,今天宣布完全开源.TensorFlow 是一种编写机器学习算法的界面,也可以编译执行机器学习算法的代码. ...

最新文章

  1. 视觉与机械手标定系统技术解决方案
  2. 安装 Homebrew
  3. MySQL和Python交互
  4. (电影播放器)MPMoviePlayerController
  5. smslib java_java利用SMSLib通过COM发送短信JAR包
  6. python文件和目录操作方法大全(含实例)
  7. 软件研发工程师转行机器学习之路
  8. python selenium自动化(三)Chrome Webdriver的兼容
  9. 解决idea 中web项目无法正常显示的问题
  10. [转]C语言如何获得精确到毫秒的时间
  11. 【写博客常用】美赛成绩如何快速查询!
  12. 上海浦东软件园入园企业
  13. Mixly-RFID智能门禁
  14. apicloud 打开高德地图进行导航
  15. 求助:mysql中可以正常启动项目,local:8080可以正常打开,但项目网页local:8080/zwsl没办法打开
  16. Kafka消费者消费方式
  17. 编写电话号码查询系统
  18. 【Android入门】
  19. WIFI MAC虚拟打卡
  20. OS属不属于计算机硬件系统,os系统是什么意思 os系统是属于哪个系统

热门文章

  1. oracle12c默认字符集,修改Oracle【12C】字符集
  2. 模拟银行取钱 (多线程操作的好处)
  3. 读计算机平面设计要什么文化好,浅谈计算机平面设计的有关论文
  4. java lambda collect_45分钟学会Java8 - Lambda和Stream
  5. 训练 yolo 模型
  6. matlab 开 闭 代码,C++中的MATLAB函数〔闭锁〕
  7. GloVe:Global Vectors for Word Representation
  8. pyecharts 应用4: 二维散点图
  9. python 笔记:函数
  10. 软件使用: word