写点什么

PyTorch 1.0 宣布用于研究和生产 AI 项目

  • 2018-05-21
  • 本文字数:1357 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

在最近的一篇博文中,脸书的副总裁 Bill Jia 宣布了 PyTorch 的新版本 1.0 的发布。PyTorch 是用于 Python 的开源 AI 框架软件包,具有 Tensor 计算,包括强大的 GPU 加速和建立于基于磁带 autodiff 系统之上的深度神经网络。该新版本的重要性在于,减少了从研究过程到生产过程中移动 AI 驱动的项目所需的时间,同时提高了这些应用程序的准确度和性能。这些改进的发生,部分是因为混合前端在命令式和声明式执行模式间的转换。

PyTorch 的核心优势在于,它是前端必不可少的部分,它通过适应性可编程模式实现迭代原型设计和实验。PyTorch 的第一个版本发布于 2017 年早些时候,其软件包的下载次数已经超过了 110 万次。Jia 将它的流行归因于:

它的速度、生产力和支持最前沿 AI 模型(如动态图形)的能力迅速使之成为最受 AI 研究人员欢迎的重要开发工具。

PyTorch 应用的一个众所周知的例子是,加州大学伯克利分校计算机科学家所构建的项目,它基于循环一致对抗网络进行非配对图到图的转换。该项目通过使用一组对齐的图像训练集来学习图像输入和输出映射。

图像来源: https://junyanz.github.io/CycleGAN/

PyTorch 目前的版本已经取得了一些成果,为 AI 研究、开发和生产规模上的性能提供了灵活性,但是,也存在一些挑战。Jia 解释说:

由于它和 Python 紧密的耦合,我们常常需要把研究代码(无论是训练脚本还是经过训练的模型)转换为 Caffe2 中的图形模式表示,以在生产规模上运行。Caffe2 的基于图形执行程序允许开发人员利用最先进的优化技术,比如图形转换、高效的内存重用和严格的硬件接口集成等等。

另外,PyTorch 1.0 集成了 Caffe2 和 ONNX 的功能,并把它与 PyTorch 的能力结合在一起,以提供从研究原型到生产部署的无缝路径。通过利用 Caffe2,建立 PyTorch 依赖关系的公司也能够期望获得对更大的规模和可靠性的支持。PyTorch博客更进一步解释了使用 Caffe2 的重要性:

初创企业、大公司和任何希望围绕 PyTorch 构建产品的人都要求获得产品支持。在脸书(PyTorch 的最大利益相关者),我们拥有 Caffe2,它已经是生产就绪平台,运行于我们的数据中心,并向横跨 8 代 iPhone 以及 6 代安卓 CPU 架构的超过 10 亿部手机交付产品。它在 Inter/ARM、TensorRT 支持以及所有生产所需的位数上有服务器优化推理。考虑到所有这些价值锁定在 PyTorch 团队与其密切合作的平台上,我们决定把 PyTorch 和 Caffe2 结合在一起,从而为 PyTorch 提供生产级准备。

ONNX 是一种开放格式,用于表示那些能够在不同 AI 框架之间交换的深度学习模型。在 PyTorch 1.0 中,ONNX 是本地支持的导出模型。它也为加速运行时间和硬件特定库提供了接口。Jia 提到了这种方法的一些好处:

它给予开发人员完全的自由,以混合和匹配最好的 AI 框架和工具,而无需承担资源密集型的定制工程。

PyTorch 项目期望于 2018 年夏季的某个时候发布 1.0 版本,并且可以在其 GitHup repo 上查看 pull requests。

查看英文原文: PyTorch 1.0 Announced for Research and Production AI Projects


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2018-05-21 19:001725
用户头像

发布了 199 篇内容, 共 81.8 次阅读, 收获喜欢 293 次。

关注

评论

发布
暂无评论
发现更多内容

进入大厂的简历应该是什么样子

我是程序员小贱

3月日更

MySQL主从复制机制

luojiahu

MySQL 主从复制

LeetCode题解:91. 解码方法,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

万事开头难——人为推进效应

Justin

心理学 28天写作 游戏设计

滚雪球学 Python 之怎么玩转时间和日期库

梦想橡皮擦

28天写作 3月日更

对话微众和红枣:预言机是区块链提供可信数据的基础设施

CECBC

区块链

Elasticsearch Document 写入原理

escray

elastic 28天写作 死磕Elasticsearch 60天通过Elastic认证考试

算法攻关 - 重上到下打印二叉树 (O(n))_offer32

小诚信驿站

刘晓成 小诚信驿站 28天写作 算法攻关 从上到下打印二叉树

【LeetCode】设计哈希集合Java题解

Albert

算法 LeetCode 28天写作 3月日更

什么样的技术能进入一线大厂?这份阿里、百度、腾讯等 20家Java岗招聘要求梳理报告,会给你答案;

Java架构师迁哥

微服务学习笔记

lenka

3月日更

《经济学人》2021年3月13日刊精彩文章导读及资源免费下载

wbliu85

你最喜欢的奥斯卡电影是哪部?

wbliu85

Zookeeper.01 - 简介

insight

zookeeper 3月日更

熟练使用SSH客户端常用工具SecureCRT

xiezhr

Linux SSH securecrt SSH工具

2021字节面经最新整理: 面试真经/思维导图/学习笔记!火遍全网

比伯

Java 编程 架构 面试 计算机

原来我还有网络天赋

叫练

网络 交换机

「Linux」网络配置大揭秘

我是程序员小贱

3月日更

虚拟路由器冗余协议 VRRP 详解

[转]html5设计原理

小江

代码审查:从 ArrayList 说线程安全

mzlogin

Java 代码审查

资深大牛带你了解源码!最详细的docker中安装并配置redis,实战解析

欢喜学安卓

android 程序员 面试 移动开发

浅谈数仓、数仓模型分层

白程序员的自习室

大数据 解决方案 通用设计模型 数仓

Python DataTime 日期处理

HoneyMoose

Wireshark数据包分析学习笔记Day9

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

优雅编程 | Javascript闭包的4种高级用法

devpoint

闭包 防抖 节流 闭包要点

数字化“翻译官”

boshi

数字化 七日更

css高度坍塌与清除浮动

依旧廖凯

28天写作 3月日更

Python 日期格式和时间以及当前时间和时间戳

HoneyMoose

Elasticsearch 近实时搜索 Near Real-Time Search

escray

elastic 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

资深大牛带你了解源码!面试题解析已整理成文档,已拿offer

欢喜学安卓

android 程序员 面试 移动开发

PyTorch 1.0宣布用于研究和生产AI项目_开源_Kent Weare_InfoQ精选文章