机器人与人工智能爱好者论坛

 找回密码
 立即注册
查看: 11523|回复: 0
打印 上一主题 下一主题

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

[复制链接]

292

主题

321

帖子

6104

积分

版主

Rank: 7Rank: 7Rank: 7

积分
6104
跳转到指定楼层
楼主
发表于 2017-2-11 14:05:08 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
Facebook 发布开源框架 PyTorch, Torch 终于被移植到 Python 生态圈


2017-01-20


本周,Facebook 的 AI 研究团队发布了一个 Python 工具包,专门针对 GPU 加速的深度神经网络(DNN)编程。它有望辅助、或在一定程度上替代,现有的 Python 数学、统计库(比如 NumPy)。它实现了机器学习框架 Torch 在 Python 语言环境的执行。开发团队表示,除 Facebook之外,它还已经被推特、卡内基梅隆大学和 Salesforce 等机构采用。
使用 Pytorch 的机构
Torch 是一个十分老牌、对多维矩阵数据进行操作的张量(tensor )库,在机器学习和其他数学密集型应用有广泛应用。但由于其语言采用 Lua,导致在国内一直很小众,并逐渐被支持 Python 的 Tensorflow 抢走用户。如今,作为经典机器学习库 Torch 的端口,PyTorch 为 Python 语言使用者提供了舒适的写代码选择。
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 代码。


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|Archiver|手机版|小黑屋|陕ICP备15012670号-1    

GMT+8, 2024-4-29 04:21 , Processed in 0.057884 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表