本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:【j2开奖】专访田渊栋 | Torch升级版PyTorch开源,Python为先,强GPU加速

时间:2017-01-19 18:30来源:报码现场 作者:www.wzatv.cc 点击:
新智元启动新一轮大招聘 :COO、执行总编、主编、高级编译、主笔、运营总监、客户经理、咨询总监、行政助理等 9 大岗位全面开放。 简历投递:j [email protected] HR 微信: 13552313024 新

  新智元启动新一轮大招聘:COO、执行总编、主编、高级编译、主笔、运营总监、客户经理、咨询总监、行政助理等 9 大岗位全面开放。

  简历投递:j[email protected]

  HR 微信:13552313024

  新智元为COO和执行总编提供最高超百万的年薪激励;为骨干员工提供最完整的培训体系、高于业界平均水平的工资和金。

  加盟新智元,与人工智能业界领袖携手改变世界。

  【新智元导读】 PyTorch今天发布,这是一个支持强大的 GPU 加速的张量计算(类似numpy),构建基于 tape 的 autograd 系统的深度神经网络的深度学习研究平台。这是numpy 的替代,以使用 GPU 的能力,能够提供最大的灵活性和速度。田渊栋在接受专访时表示,新的平台不像以前 torch 需要clone_many_times。另外从 numpy ndarray 可以转到torch.Tensor,不需要copy。

  专访Facebook研究员田渊栋和PyTorch作者Soumith

  新智元 :田博士,关于PyTorch的发布,请问可以采访您几个问题嘛?

  田渊栋 :哦,你要问什么?我可以把问题转给Soumith。

  新智元 :请问 PyTorch 除了是基于 Python,其它架构是否与 Torch 一样?

  田渊栋 :基本C/C++这边都是用的torch原来的函数,但在架构上加了 autograd 这样就不用写backward 函数,可以自动动态生成computational graph 并且自动求导,反向传递后自动回收内存,这个让写程序变得更方便了。另一个重要的不同是权值(weights)和activation/gradInput分开了,这样同一个layer 可以复用很多次,存储的时候也不用 clear gradient,不像以前 torch 需要clone_many_times。另外从 numpy ndarray 可以转到torch.Tensor,不需要copy。

  Lua这边一直有每个 thread 2G的限制,这个对写多线程的程序不是很有利。Python有GIL,所以一般用 multiprocessing 写程序,PyTorch针对这个有比较好的支持,比如支持进程间共享内存(这个对parameter server有利),支持shared Cuda context,等等。

  我自己已经在用了,写了一个增强学习的框架,j2直播,效果还是不错的。

  新智元 :tensorflow也支持 python,请问这两种有什么区别呢?

  Pytorch作者Soumith:像TensorFlow, Theano,Caffe以及CNTK都是静态的计算图结构。而PyTorch这边是动态地生成计算图结构(Computational Graph)的,所以可以在训练时动态改变图的拓扑,而不用改代重新开始。

  新智元:对GAN 和 深度强化学习支持怎么样?

  田渊栋 :自带的tutorial里面已经有GAN的样本了,RL的框架我在写,在一些例子上已经达到了目前的最好水平。

  新智元:您指的一些例子是什么类型的例子呢?

  比如说OpenAI Gym Atari game Breakout-v0。

  HN评论:深度学习库生态没有停滞

  几个月前人们还说,深度学习库生态系统开始稳定。我从来不这么认为。深度学习库的最新前沿是确保对动态计算图的有效支持。

  当需要完成的工作量是可变的时,动态计算图形出现。这可能是在我们处理文本时,一个例子是几个字,而另一个是文本的段落,或者当我们对可变大小的树结构执行操作时。这个问题在某些的领域尤其突出,例如自然语言处理。

  PyTorch 很好地解决了这个问题,如 Chainer 和 DyNet。事实上,Pytorch 的构建直接从 Chainer 获得,尽管重构了并且设计得更快了。我已经看到所有这些在最近几个月,特别是在许多研究人员进行领域的前沿研究重新产生兴趣。当你使用新的架构时,你希望在框架允许范围内,获得最大的灵活性。

  另一面,TensorFlow 不能很好地处理这些动态图问题。虽然有一些原始的动态结构,但它们不灵活,通常相当有限。在不久的将来,有计划允许 TensorFlow 变得更加动态,但添加它是一个挑战,特别是还要有效地做。

  披露:我的Salesforce Research团队广泛使用Chainer,我的同事James Bradbury是PyTorch的贡献者,而它处于隐身模式。我们计划从Chainer过渡到PyTorch,以便将来的工作。

  PyTorch 官网介绍

  PyTorch 是一个 python 包,提供以下两个高级功能:

  强大的 GPU 加速的张量计算(类似numpy)

  构建基于 tape 的 autograd 系统的深度神经网络

  在需要时,你可以再使用你喜欢的其他 python 包来扩展 PyTorch,例如 numpy,scipy 和Cython。

  在粒度级别上,PyTorch 是一个由以下部分组成的库:

  

码报:【j2开奖】专访田渊栋 | Torch升级版PyTorch开源,Python为先,强GPU加速

  通常可以把 PyTorch 作为:

  numpy 的替代,以使用 GPU 的能力;

  一个深度学习研究平台,能够提供最大的灵活性和速度。

  以下是更详细介绍:

  一个支持 GPU 的 Tensor 库

  如果你使用 numpy,那么你已经在使用 Tensors(也就是 ndarray)。

  

码报:【j2开奖】专访田渊栋 | Torch升级版PyTorch开源,Python为先,强GPU加速

  PyTorch 提供的 Tensors 支持 CPU 或 GPU,并为大量的计算提供加速。

  我们提供多样的 tensor 程序以加速并适应用户的科学计算需要,如 slicing, 索引, 数学运算,线性代数,缩减。而且,速度非常快!

  动态神经网络:基于 tape 的 Autograd

  PyTorch 具有独特的构建神经网络的方法:使用并重放 tape recorder。

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容