Is TensorFlow ‘for Boomers’? PyTorch May Gain More Ground in Machine Translation

TensorFlow是“为婴儿潮一代准备的”吗?PyTorch也许可能在机器翻译方面取得大进展

2021-03-22 17:00 slator

本文共487个字,阅读需5分钟

阅读模式 切换至中文

PyTorch, the open source framework used to build machine learning models, including those used for machine translation, released its newest version, 1.8, on March 4, 2021. According to PyTorch’s official announcement, “highlights include updates for compiler, code optimization, frontend APIs for scientific computing, large scale training for pipeline and model parallelism, and Mobile tutorials.” Prior to this release, PyTorch released version 1.7 in October 2020. Facebook’s AI Research Lab released PyTorch in September 2016. Since then, PyTorch has attracted attention among developers for its flexibility, speed, and ease of debugging. In an informal poll on LinkedIn, Tyler Folkman, Head of Artificial Intelligence at Branded Entertainment Network, asked colleagues to name their “go-to deep learning framework.” “I personally prefer PyTorch because I think it has a good balance of usability and extendability,” Folkman wrote. “By that, I mean that I find the common stuff is pretty easy to do without too much code and the more complex architectures are also relatively straightforward to implement.” Though respondents alternately voiced support for PyTorch and TensorFlow, Dennis Sawyers, a Senior Cloud Solutions Architect at Microsoft, wrote, “TensorFlow is passé at this point.” On Twitter, Josh Tobin, an instructor at University of California, Berkley and past research scientist at OpenAI, suggested a generational divide: “Why do people always ask what ML framework to use? It’s easy: Jax is for researchers; PyTorch is for engineers; TensorFlow is for boomers.” Microprocessor engineering legend Jim Keller, himself a boomer, told Lex Fridman in a February 2021 podcast that he knows many people who have switched from TensorFlow to PyTorch. “The native language of people who write AI network programs is PyTorch now,” he said, noting how it is built to scale naturally. “If you write a piece of PyTorch code that looks pretty reasonable, you should be able to compile it and run it on hardware without having to tweak it and do all kinds of crazy things to get performance.” What does this mean for machine translation (MT)? Experts hesitate to call PyTorch, which has yet to be widely deployed in production, the new standard. Other platforms, such as TensorFlow, are more established, with better visualizations, more pretrained models, and more support and tutorials. Adam Bittlingmayer, CEO and co-founder of MT risk prediction API ModelFront, told Slator that the factors boosting PyTorch’s popularity for other machine learning tasks may not immediately apply to MT. In the meantime, Bittlingmayer said, “It’s hard to know who is using an open-source library, but it looks like MarianNMT has the most traction right now.” (MarianNMT is notable for being written in pure C++, whereas most others are written in Python.) “Machine translation is very much an applied endeavor. There’s so much that goes into making a good production system, so the tools that provide the most out of the box will win,” Bittlingmayer added. “The core algorithms themselves are easy to transfer across libraries and frameworks.”
PyTorch于2021年3月4号发布最新1.8的版本,是一种构建机器学习模型的开源框架,包括用于机器翻译的版本。 在最新版本发布1.8版本之前,PyTorch在2020年10月发布了1.7版本。 根据PyTorch的官方公告表示,“它的重点包括编译器更新、代码优化、科学计算的前端应用程序接口、管道和模型并行的大规模培训以及移动教学课程”。 2016年9月,脸书的人工智能研究实验室发布了PyTorch。从那时起,PyTorch就因其灵活性、速度快和易于调试的特点吸引了开发人员的注意。 在LinkedIn(领英)的一次非正式调查显示,泰勒·福克曼是一位品牌娱乐网的人工智能主管人,他让同事们命名PyTorch 为“使用深度学习框架”。 “我个人更倾向于使用PyTorch,我觉得它很好地平衡了可用性和可扩展性两个功能,” 福克曼曾经写道。“其实我指的就是,在PyTorch上,我能用少量的代码轻松的完成一些通用的东西,不仅如此,一些结构相对复杂的框架,对我而言也不难。” 尽管接受调查的人接二连三的表示他们对PyTorch和TensorFlow的支持,然而微软高级云解决方案架构师丹尼斯·索耶斯指出:“TensorFlow在这一点上已经过时了。” 微加州大学伯克利分校的讲师,OpenAI(人工智能非盈利组织)的前研究科学家乔什·托宾和伯克利在微博上提出了一个代际划分:“为什么人们总是问使用什么机器语言框架?其实这个问题的答案很简单:Jax适合研究人员;工程师可以用PyTorch;TensorFlow是为婴儿潮一代准备的。“ 吉姆·凯勒——作为微处理器工程的俊杰 ,他本人也是婴儿潮一代,他在2021年2月的博客中告诉雷克斯弗里德曼,据他现在了解到的,很多人已经从TensorFlow转到PyTorch。 他说“如今PyTorch已经成了编写人工智能网络程序员的母语”,同时指出了PyTorch是如何自然构建出来的。“如果你写了一段看起来相当合理的PyTorch代码,在PyTorch就能够避开各种微观的调试以及各种意想不到的麻烦,顺利编译程序,并且在硬件上运行所编写的程序。” 这些改变对机器翻译(MT)意味着什么? 专家们不太愿意将PyTorch称为新标准,因为它尚未在生产中广泛应用。他们觉得,其他平台,如TensorFlow会更加成熟,因为TensorFlow在可视化这一块做的更好,又有更多的预训练模式和更多的技术支持和教程。 机器翻译风险预测应用程序接口前模型的首席执行官和联合创始人告诉斯拉特,促使PyTorch在其他机器学习任务中受欢迎的因素也许不会立即适用于MT。 同时,柏特林梅尔说道,“很难查到谁在使用开源库,但目前看起来最受欢迎的是圣母玛利亚的神经机器翻译。”(圣母玛利亚的神经机器翻译以纯C++编写而著称,而其他大多数都是用Python编写的。) “机器翻译是一项非常实用的应用工具,打造一个良好的生产系统需要付出很多努力,所以能够提供最具开箱即用性的工具将会胜出。”柏特林梅尔补充道,“核心算法本身很容易在库和框架之间传输。”

以上中文文本为机器翻译,存在不同程度偏差和错误,请理解并参考英文原文阅读。

阅读原文