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

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

使用 Pytorch 的机构

Torch 是一个十分老牌、对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。但由于其语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。如今,作为经典机器学习库 Torch 的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。AI 科技评论此前对 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

原文发布于微信公众号 - AI科技评论(aitechtalk)

原文发表时间:2017-01-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏奇点大数据

OpenAI发布强化学习环境Gym Retro:支持千种游戏

项目链接:https://github.com/openai/retro/tree/develop

1423
来自专栏目标检测和深度学习

资源 | OpenAI发布强化学习环境Gym Retro:支持千种游戏

项目链接:https://github.com/openai/retro/tree/develop

532
来自专栏MixLab科技+设计实验室

从低保真原型中生成前端代码

今天聊下《 技术 Mix 设计 》的话题。技术与设计两者的边界,越来越模糊,从用机器视觉判断平面设计作品的视觉焦点,到用深度学习指导用户体验设计,还有用深度学习...

3096
来自专栏Python中文社区

大数据告诉你买车的正确姿势!

專 欄 ❈ hectorhua,Python中文社区专栏作者,研究生毕业,现居北京。目前在互联网企业,擅长领域python数据抓取,清洗整合。 博客地址:ht...

1936
来自专栏架构师之路

通俗易懂,互联网的常见推荐算法

没有复杂的公式,没有晦涩的技术词汇,从最简易的案例,了解互联网最常见的推荐算法,每篇1分钟,保证弄懂。 一、《从电影推荐开始,聊协同过滤》 什么是协同过滤 协同...

37713
来自专栏机器之心

资源 | OpenAI发布强化学习环境Gym Retro:支持千种游戏

1145
来自专栏ATYUN订阅号

微软为Power BI推出AI模型构建器、关键驱动分析和Azure机器学习集成

微软的Power BI是一种商业分析服务,用户可以在不具备编程经验或深厚技术专长的情况下创建报告、仪表盘等更多内容。公司今天宣布了一些新的AI功能,包括图像识别...

742
来自专栏知晓程序

秒杀微信运动!有了它,在微信群也能 PK 步数 | 亲儿子 #15

所以,除了每晚 10 点推送的微信运动好友排名,这个小程序还能直观地显示出微信群好友的运动情况。

912
来自专栏专知

多巴胺:谷歌开源新型增强学习框架

Google 近日宣布开源一个新的基于 Tensorflow 的框架 —— Dopamine,旨在为新手和资深 RL(强化学习)研究人员提供灵活性、稳定性和可重...

1302
来自专栏CDA数据分析师

数据科学中最好的5个机器学习API

机器学习作为大数据的前沿无疑是让人生畏的,因为只有技术极客和数据科学领域的专家才能驾驭机器学习算法和技术,对于大部分企业和组织而言,过去这一直都是一个遥不可及的...

18710

扫码关注云+社区