Facebook 发布开源框架 PyTorch, Torch 终于被移植到 Python 生态圈

本周,Facebook 的 AI 研究团队发布了一个 Python 工具包,专门针对 GPU 加速的深度神经网络(DNN)编程。它有望辅助、或在一定程度上替代,现有的
Python 数学、统计库(比如 NumPy)。它实现了机器学习框架 Torch 在 Python 语言环境的执行。开发团队表示,除
Facebook之外,它还已经被推特、卡内基梅隆大学和 Salesforce 等机构采用。

使用 Pytorch 的机构

Torch
是一个十分老牌、对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。但由于其语言采用
Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。如今,作为经典机器学习库 Torch
的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。雷锋网此前对 Torch 做过介绍。详情请看盘点四大民间机器学习开源框架:Theano、Caffe、Torch 和 SciKit-learn 

PyTorch 的特点和优势

PyTorch 提供了:

  • 运行在 GPU 或 CPU 之上、基础的张量操作库,
  • 内置的神经网络库
  • 模型训练功能
  • 支持共享内存的多进程并发(multiprocessing )库。PyTorch 开发团队表示:这对数据载入和 hogwild 训练十分有帮助。

PyTorch 的首要优势是,它处于机器学习第一大语言 Python 的生态圈之中,使得开发者能接入广大的
Python 库和软件。因此,Python 开发者能够用他们熟悉的风格写代码,而不需要针对外部 C 语言或 C++ 库的
wrapper,使用它的专门语言。雷锋网获知,现有的工具包可以与 PyTorch 一起运行,比如 NumPy、SciPy 和
Cython(为了速度把 Python 编译成 C 语言)。

PyTorch 还为改进现有的神经网络,提供了更快速的方法——不需要从头重新构建整个网络。这是由于 PyTorch 采用了动态计算图(dynamic computational graph)结构,而不是大多数开源框架,比如 TensorFlow、Caffe、CNTK、Theano 等采用的静态计算图。雷锋网(公众号:雷锋网)获知,该技术从另一个 Python 的神经网络框架——Chainer 那里借用。开发者团队还强调 PyTorch 优越的内存效率,因为它采用了定制的 GPU 内存分配器。这使得开发者的深度学习模型能够有“最大限度的内存效能”,训练比从前更大的深度神经网络

虽然
PyTorch 为机器学习应用而优化,这并不是它的唯一使用场景。比如说,相比 NumPy ,PyTorch
的张量计算可作为它对应功能的替代。PyTorch 为这些功能提供了 GPU 加速的版本。在没有强力 GPU 加持的情况下,开发者能使用 CPU
运行。

这是 PyTorch 中包含的工具包列表:

  • torch :类似  NumPy 的张量库,强 GPU 支持 
  • torch.autograd  :基于 tape 的自动区别库,支持 torch 之中的所有可区分张量运行。
  • torch.nn :为最大化灵活性未涉及、与 autograd 深度整合的神经网络库
  • torch.optim:与 torch.nn 一起使用的优化包,包含 SGD, RMSProp, LBFGS, Adam 等标准优化方式
  • torch.multiprocessing: python 多进程并发,进程之间 torch Tensors 的内存共享。
  • torch.utils:数据载入器。具有训练器和其他便利功能。 Trainer and other utility functions for convenience    
  • torch.legacy(.nn/.optim) :处于向后兼容性考虑,从 Torch 移植来的 legacy 代码。

via infoworld

相关文章:

谷歌、微软、OpenAI 等巨头的七大机器学习开源项目 看这篇就够了

BAT 在下一盘大棋?深度盘点国内四大机器学习开源平台

谷歌布局大数据:开源平台 Apache Beam 正式发布

谷歌开源 3D 数据压缩算法 Draco,在线看片再也不用缓冲了?

盘点四大民间机器学习开源框架:Theano、Caffe、Torch 和 SciKit-learn

英特尔开源BigDL,可直接在Spark框架下运行深度学习

本文作者:三川

本文转自雷锋网禁止二次转载,原文链接

时间: 2024-09-15 13:42:03

Facebook 发布开源框架 PyTorch, Torch 终于被移植到 Python 生态圈的相关文章

为向偏远地区提供服务 Facebook发布开源无线接入平台OpenCellular

 7月7日消息,据外电报道,全球最大的社交网站Facebook周三发布了开源无线接入平台OpenCellular,旨在向全球偏远地区提供互联网服务. OpenCellular像鞋盒般大小,最多可支持1500人,可在10公里的范围内提供包括无线服务.2G.3G.长期演进技术(4G)等连接服务.截至2015年年底,全球仍有超过40亿人未曾使用基础互联网服务,且有7亿人生活在蜂窝连接的覆盖范围之外.当然,这也让这些人群无法使用Facebook的服务. Facebook表示,初始版本的OpenCellu

Facebook发布开源数据库HydraBase,下一代HBase

http://www.aliyun.com/zixun/aggregation/1560.html">Facebook近日在官方博客上宣布推出HBase数据库的升级版-- HydraBase, Facebook是HBase的重度用户,Facebook的HBase数据库系统存储着Facebook的很多关键业务数据,包括内部监控系统.搜索索引.流数据分析以及数据抓取等.HydraBase相比HBase稳定性和可用性更高,可以减少服务器宕机时间. Facebook声称HydraBase能将Fac

盘点四大民间机器学习开源框架:Theano、Caffe、Torch 和 SciKit-learn

本期,我们将带领大家来看看诞生于民间(学界)的另外四大开源项目: 1. Theano Theano 在深度学习框架中是祖师级的存在.它的开发始于 2007,早期开发者包括传奇人物 Yoshua Bengio 和 Ian Goodfellow. Theano 基于 Python,是一个擅长处理多维数组的库(这方面它类似于 NumPy).当与其他深度学习库结合起来,它十分适合数据探索.它为执行深度学习中大规模神经网络算法的运算所设计.其实,它可以被更好地理解为一个数学表达式的编译器:用符号式语言定义

盘点四大民间机器学习开源框架

Theano 在深度学习框架中是祖师级的存在.它的开发始于 2007,早期开发者包括传奇人物 Yoshua Bengio 和 Ian Goodfellow. Theano 基于 Python,是一个擅长处理多维数组的库(这方面它类似于 NumPy).当与其他深度学习库结合起来,它十分适合数据探索.它为执行深度学习中大规模神经网络算法的运算所设计.其实,它可以被更好地理解为一个数学表达式的编译器:用符号式语言定义你想要的结果,该框架会对你的程序进行编译,来高效运行于 GPU 或 CPU. 它与后来

Intel发布开源增强学习框架Coach

本文讲的是Intel发布开源增强学习框架Coach, 今天,英特尔发布了一个新的开源增强学习框架Coach.该框架利用多核CPU处理能力,用于训练和评估增强学习Agent.Coach包含一些领先的增强学习算法的多线程实现,适用于各种游戏和机器人环境.它能够在台式计算机上高效地训练强化学习Agent,而无需任何额外的硬件. 自从2016年推出用于深层加强学习的异步方法以来,许多算法通过在许多CPU内核中并行运行多个实例,能够更快地实现更好的策略.到目前为止,这些算法包括A3C .DDPG.PPO.

Win10 UWP再支持Facebook React Native开源框架

微软正在为React Native开源框架增加Windows 10 UWP的支持. React Native最初是由Facebook开发的用于生成用户界面的JavaScript代码库,并于2015年开放了的源代码.该框架旨在让开发人员能够开发跨iOS和安卓平台的移动原生应用程序.但是,React Native并不是一次编写就能在多个平台运行的框架,相反,它侧重于每个平台独特的功能特点. 微软称,将React Native应用程序延伸到了Windows 10设备,包括个人电脑.移动设备.Xbox

AsyncDisplayKit 1.0 发布,iOS 开源框架

经过两个 Beta 版本之后,AsyncDisplayKit 1.0 发布了!此版本现已提供下载. AsyncDisplayKit是一款能够保持界面流畅性的iOS开源框架,即使是最复杂的用户界面,也可以让其流畅运行并快速响应. AsyncDisplayKit不止是Paper的组成部分,与Facebook神奇的动画引擎Pop也是关系密切. 在使用AsyncDisplayKit的过程中,不会对用户体验造成任何影响,只有在修改结果检验无误后,变动内容才会被映射至主进程当中.而用户也可获得快速流畅的使用

开源框架TAAE发布 快速打造iOS音频应用

开源框架TAAE发布 快速打造iOS音频应用 发表于2013-03-20 14:01| 次阅读| 来源CSDN| 0 条评论| 作者杨依帆 开源开发工具iOS移动开发TAAEMichaelTyson 摘要:TAAE是一个针对iOS平台的开源http://www.aliyun.com/zixun/aggregation/13435.html">开发框架,它能够帮助 开发者轻松地建立iOS音频应用,处理错综 复杂的音频文件.它由音频处理应用"Audiobus"的开发者Mic

Facebook 尝试新的方法来发布开源项目

上周,Facebook发布了Create React App,这个新项目旨在帮助React开发者快速上手其新项目.Create React App这个新项目只是一个开始,它也成为了Facebook在GitHub上的孵化器的首个项目. Facebook孵化器是Facebook用于发布开源项目的新流程,用于确保这些开源项目能够长久平稳地运行.我们可以将其看作是Facebook新的开源项目的Beta阶段或是试验场. Facebook开源负责人James Pearce说,Facebook孵化器的想法在于