PyTorch 1.0 正式公开,Caffe2并入PyTorch实现AI研究和生产一条龙

简介: 今天,Facebook正式公布PyTorch 1.0,这个新的框架将PyTorch 0.4与Caffe2合并,并整合ONNX格式,让开发者可以无缝地将AI模型从研究转到生产,而无需处理迁移。

今天,Facebook正式公布PyTorch 1.0,这是将基于Python的PyTorch与Caffe2合并的一个新版本的框架,让开发者可以无缝地将AI模型从研究转到生产,而无需处理迁移

“现在,你只需要使用PyTorch 1.0,就可以在一个框架中无缝地进行从研究到生产的全部过程,而不需要为训练/研究和生产分别选择框架。”Facebook发言人在F8大会上说。

Facebook去年与微软合作推出开放神经网络交换(ONNX)格式,这是一个用于表示深度学习模型的标准,旨在使不同框架之间的移动更加简单。现在,Facebook已经将ONNX整合到PyTorch 1.0中,使模型能够与其他框架进行互操作,并且开发人员可以“混合搭配”。

Facebook还表示,将统一PyTorch 0.4和Caffe2的代码库,以创建一个统一的框架,支持多种功能,包括高效的图形模式执行、分析、移动部署等。

PyTorch 1.0将在未来几个月内发布,据悉,微软计划在Azure中支持该框架,亚马逊也将在其云产品中支持PyTorch 1.0。

PyTorch官方博客介绍了PyTorch 1.0的更多细节:

d47e62d2b349aca45e42305ed6714efbe5ed61d9生产性 :在PyTorch 1.0中,你的代码可以继续按原样运行,我们没有对现有的API做任何大更改。如果你不需要优化或导出模型,则不必使用这些新功能,也不会有任何缺点。此外,可以逐步使用 traced或@script模块/函数。
d47e62d2b349aca45e42305ed6714efbe5ed61d9JIT编译器 :使用torch.jit编译器将模型导出到非Python环境,并提高其性能。对于不包含循环和if语句的网络,trace是非侵入式的,并且足够稳健,可以处理各种编码风格;对于主要使用控制流的模型(如RNN),我们的解决方案是脚本模式(@script)。
d47e62d2b349aca45e42305ed6714efbe5ed61d9优化和导出 :Caffe2 / ONNX中模型的python-free 表示
d47e62d2b349aca45e42305ed6714efbe5ed61d9后端 :我们正在替换(或重构)后端ATen库,以整合来自Caffe2的功能和优化。

d47e62d2b349aca45e42305ed6714efbe5ed61d9Timeline:我们的目标是在今年夏天推出 PyTorch 1.0。

PyTorch 1.0:一个框架实现AI从研究到生产的全过程

AI的开发从研究到生产的过程,涉及多个步骤和工具,这使得测试新方法、部署它们,以及迭代以提高准确性和性能都非常耗时而且复杂。为了帮助加速和优化这个过程,我们推出PyTorch 1.0。

PyTorch 1.0采用了Caffe2和ONNX的模块化、面向生产的功能,并将它们与PyTorch现有的灵活的、侧重于研究的设计结合起来,为各种AI项目提供从研究原型到生产部署的快速、无缝的路径。

使用PyTorch 1.0,AI开发人员可以通过在命令式执行模式声明式执行模式之间无缝切换的混合前端进行快速实验和性能优化。PyTorch 1.0中的技术已经为Facebook的许多产品和服务提供支持,包括每天执行60亿次的文本翻译。

PyTorch 1.0将在未来几个月内推出,并将包含一系列工具、库、预训练的模型和各个开发阶段的数据集,使社区能够大规模地快速创建和部署新的AI创新。

从研究到生产的路径

PyTorch的命令式前端通过其灵活且高效的编程模型实现了更快速的原型设计和实验。PyTorch的第一个版本是在一年前推出的,它的快速、高效和支持动态图等先进AI模型的能力使其迅速成为广受AI研究人员欢迎的重要开发工具。PyTorch的下载量已经超过110万次,是ArXiv上个月引用量第二大的深度学习框架。例如,加州大学伯克利分校的计算机科学家将PyTorch的动态图功能用于他们的CycleGAN image-to-image转换的工作。

18de007ab8747df564d92bc89ca36840b75e61da

CycleGAN的PyTorch实现

尽管当前版本的PyTorch为AI的研究和开发提供了很大的灵活性,但由于它与Python的紧密结合,在生产规模上的性能有时是一个挑战。我们经常需要将研究代码(训练脚本或训练模型 )翻译成Caffe2的图形模式表示,以便在生产规模上运行。Caffe2的基于图形的执行程序允许开发者利用先进的优化方式,例如图形转换、高效的内存重用以及紧密的硬件接口集成。

Caffe2项目是两年前推出的,目的是使我们的生产AI工具标准化,现在它已经在Facebook服务器和世界范围超过10亿部手机上运行神经网络,跨越8代iPhone和6代Android CPU架构。今天,Caffe2每天在各种大小模型提供超过200万亿次的预测,并优化生产性能。

从PyTorch迁移到Caffe2以进行生产,以前这是一个手动的过程,耗时多且容易出错。为了解决这个问题,我们与主要的硬件和软件公司合作创建了ONNX(开放式神经网络交换),这是一种表示深度学习模式的开放式格式。借助ONNX,开发人员可以在不同框架之间共享模型,例如,导出使用PyTorch构建的模型并将其导入Caffe2。

我们已经使用这些工具(PyTorch,Caffe2和ONNX)来构建和部署Translate,这个工具现在可以对Facebook上48种最常用语言的进行翻译。在VR方面,这些工具对于将Oculus的新研究部署到生产中至关重要。

但是,尽管这三种不同工具的组合是有效的,但仍然存在手工步骤复杂、耗费时间长等问题。因此,仅仅是将这些工具组合还无法像我们期待的那样无缝地将AI的研究创新带入生产过程。

在一个框架中统一研究和生产的能力

PyTorch 1.0将即时模式和图形执行模式融合在一起,为生产的研究和性能优化提供了灵活性。更具体地说,PyTorch 1.0不是强制开发者重写整个代码以实现优化或从Python迁移,而是提供了一个混合的前端,使开发者能够在用于原型制作的即时模式和用于生产的图形执行模式之间无缝地共享大部分代码

此外,ONNX本身被加入到PyTorch 1.0中作为一种模型输出格式,这使得PyTorch 1.0中的模型可与其他AI框架进行互操作。ONNX还可用作加速运行时间或硬件特定库的集成接口。这使得开发人员可以完全自由地混合和匹配最佳的AI框架和工具,而无需采用资源密集型的定制工程。Facebook将支持ONNX的新特征和功能,ONNX仍然是一种强大的开放格式,同时也是使用PyTorch 1.0进行开发的重要组成部分。

构建一个端到端的深度学习系统

除了PyTorch 1.0之外,Facebook还开源了多个AI工具,包括Translate——一个PyTorch语言库,用于快速、灵活的神经机器翻译;以及下一代ELF——一个综合的AI推理应用游戏平台。开发人员还可以利用Glow这样机器学习编译器,可以加速不同硬件平台上的框架性能;还可以使用Tensor Comprehensions这种自动生成高级数学运算的高效GPU代码的工具。Facebook也开源了其他库,如Detectron,支持对象检测研究,涵盖了边界框和对象实例分割输出。

Facebook推出一个AI开发者网站,列举了所有这些开源工具:

facebook.ai/developers

在接下来的几个月中,我们将重构并统一Caffe2和PyTorch 0.4框架的代码库。最终将形成一个统一的框架,支持高效的图形模式执行,包括profiling,移动部署,广泛的vendor集成等。与ONNX等其他开放式AI计划一样,我们也与其他公司和社区合作,为更多开发者提供这些加速研究的生产能力。首先,微软计划在他们的Azure云和开发者产品中支持PyTorch 1.0,包括Azure机器学习服务和数据科学虚拟机;Amazon Web Services目前支持最新版本的PyTorch,针对P3 GPU实例进行了优化,并计划在其云产品发布后不久支持 PyTorch 1.0,其中包括其深度学习AMI(Amazon Machine Image)。


原文发布时间为:2018-05-3

本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”。

原文链接:PyTorch 1.0 正式公开,Caffe2并入PyTorch实现AI研究和生产一条龙

相关文章
|
3天前
|
机器学习/深度学习 人工智能 供应链
智能制造:AI驱动的生产革命——探索生产线优化、质量控制与供应链管理的新纪元
【7月更文第19天】随着第四次工业革命的浪潮席卷全球,人工智能(AI)正逐步成为推动制造业转型升级的核心力量。从生产线的智能化改造到质量控制的精密化管理,再到供应链的全局优化,AI技术以其强大的数据处理能力和深度学习算法,为企业开启了全新的生产效率和质量标准。本文将深入探讨AI在智能制造中的三大关键领域——生产线优化、质量控制、供应链管理中的应用与影响,并通过具体案例和代码示例加以阐述。
31 3
|
9天前
|
数据采集 机器学习/深度学习 人工智能
AI小分子药物发现的百科全书,康奈尔、剑桥、EPFL等研究者综述登Nature子刊
【7月更文挑战第12天】康奈尔、剑桥及EPFL科学家合作,详述AI在药物发现中的突破与挑战[^1]。AI现用于新化合物生成、现有药物优化及再利用,加速研发进程。尽管取得进展,可解释性不足、数据质量和伦理监管仍是待解难题。 [^1]: [论文链接](https://www.nature.com/articles/s42256-024-00843-5)
14 3
|
1月前
|
存储 人工智能 Kubernetes
[AI OpenAI] 保护前沿AI研究基础设施的安全
概述支持OpenAI前沿AI模型安全训练的架构。
[AI OpenAI] 保护前沿AI研究基础设施的安全
|
1月前
|
人工智能 安全 网络安全
简述AI漏洞修复研究现状及发展方向
鲁军磊先生的演讲聚焦AI在网络安全中的应用,特别是自动化漏洞修复。他讨论了大模型技术的最新进展,AI如何增强漏洞发现与修复,并介绍了AI智能体的三种协作模式。传统漏洞修复流程从手工审计到智能化挖掘逐步演进,而AI技术通过智能决策和自动化执行提高效率。未来趋势包括智能化防御、跨域协同、安全合规自动化、隐私保护强化和安全技能普及,以及可持续安全生态建设。AI正重塑网络安全领域,推动更高效、精准的防御策略。
|
1月前
|
存储 人工智能 运维
搭建生产级AI服务
搭建生产级AI服务
29 2
|
14天前
|
机器学习/深度学习 人工智能 自然语言处理
如何利用AI提高内容生产效率?
如何利用AI提高内容生产效率?
12 0
|
1月前
|
机器学习/深度学习 人工智能 数据库
克雷研究所100万美元奖金要归AI了,数学界规则大改,未来数学家如何应对海量猜想
【6月更文挑战第1天】AI在数学领域的突破正在改写数学研究规则。伦敦数学科学研究所的AI预测椭圆曲线秩,与克雷研究所的千禧年问题相关,显示AI在高风险数学问题上的潜力。AI还发现了纽结理论中的新关系,并能生成数学公式的猜想。尽管AI有助于发现模式和猜想,但它仍依赖于数学家的直觉来判断猜想的重要性。未来,AI将成为数学家的工具,加速研究进程,但人类的创造力和洞察力仍是关键。
47 7
|
2月前
|
数据采集 人工智能 自然语言处理
如何利用AI工具提高生产效率
如何利用AI工具提高生产效率
40 1
|
1月前
|
人工智能 供应链 算法
人工智能(AI)在工业生产中的应用已经成为一种趋势
人工智能(AI)在工业生产中的应用已经成为一种趋势
|
2月前
|
存储 人工智能 缓存
[译][AI OpenAI-doc] 生产最佳实践
本指南提供了一套全面的最佳实践,以帮助您从原型转向生产。无论您是经验丰富的机器学习工程师还是最近的爱好者,本指南都应为您提供成功将平台投入生产环境所需的工具:从确保访问我们的API到设计能够处理高流量的稳健架构。使用本指南帮助制定尽可能平稳有效地部署应用程序的计划。

热门文章

最新文章