Facebook的开源AI框架PyTorch发布,而这只是个开始!
作为一家全球互联网巨头,Facebook早就涉足人工智能领域,并接连不断取得突破性成就,几年前Facebook发起开源计算机硬件方法Open Compute Project,但Facebook所做的远不止数据中心合理化。最近,Facebook开源了机器学习(ML)和人工智能(AI)框架:PyTorch,现在,PyTorch 1.0的测试版已发布。
PyTorch是一个基于Python的科学计算库,利用图形处理单元(GPU)的卓越计算能力来执行复杂的Tensor计算并实现深度神经网络。其中包括一些列工具和集成,使其与 Google Cloud、AWS、Azure 的机器学习服务更为兼容。ARM、Nvidia、高通、英特尔也在内核库集成和跟踪推理运行时的工具中添加了 PyTorch 支持,因此,深受世界各地的研究人员和开发人员的青睐。
PyTorch的第一个版本是在一年前推出的。它的速度,生产力和支持动态图形等尖端AI模型的能力迅速使其成为流行和重要的AI开发工具。它有超过110万的下载量。自 Facebook开源PyTorch以来,该项目赢得了许多支持者。借助亚马逊网络服务(AWS),谷歌云和Microsoft Azure提供的更深入的云服务支持,以及与技术提供商ARM,英特尔,IBM,NVIDIA和高通的更紧密集成,开发人员可以轻松部署PyTorch的兼容软件,硬件和开发者工具。
在这个新版本中,PyTorch拥有一个新的混合前端,它可以将模型从极速模式跟踪编写到图形模式,以缩小勘探和生产部署之间的差距。它现在还有一个已改进过的torch.distributed库,这使得其能在Python和C ++环境中进行更快的培训,并能够用于性能关键研究的beta eager模式 C ++接口。这恰好迎合了PyTorch新功能,并被其他技术公司的广泛接受和整合,现在几乎所有在AI领域工作人员都采用这种AI / ML框架。
PyTorch 1.0 三大新功能:
一是添加了一个新的混合前端,支持从 Eager 模式到图形模式的跟踪和脚本模型,以弥合研究和生产部署之间的差距。
二是一个经过改进的 Torch 分布式库,可以在 Python 和 C++环境中实现更快的训练。
三是添加了针对关键性能研究的 Eager 模式 C++接口,将在测试版中发布。
基于Python的PyTorch 1.0为开发人员提供了在单一框架内无缝地从研究转向生产的能力。PyTorch 1.0将PyTorch的研究导向方面与Caffe2(一种流行的深度学习框架)和ONNX(开放式神经网络交换)的模块化,以生产为中心的功能 集成在一起,这是一种表示深度学习模型的开放格式。
目前,PyTorch已经应用于Facebook的很多产品之中,例如Facebook在神经网络上使用AI来每天执行60亿次翻译。AWS的大规模培训和部署ML模型的完全托管平台Amazon SageMaker现在提供预配置的PyTorch 1.0环境,其中包括自动模型调整。
同时,Google Cloud Platform的Deep Learning VM有一个新的PyTorch 1.0 VM映像。这预装了NVIDIA驱动程序和教程。谷歌还提供云张量处理单元(TPU),这是为ML定制开发的ML专用集成电路(ASIC)。最后,Microsoft Azure机器学习服务现在允许开发人员无缝地从本地服务器上的PyTorch模型培训转移到Azure云上。
人工智能是Facebook当今的基础技术,能够让现有产品更好,并为全新体验提供动力。所以对于Facebook来说,PyTorch 1.0只是一个开始,创建和共享更好的AI编程模型,从而接口和自动优化才是未来不断探究的道路,与此同时,Facebook还将会开源许多其他生产AI工具。