深度学习框架PyTorch为何值得学

大数据文摘授权转载自OReillyAI


大家知道,深度学习的发展和推进,在某种程度上也是一场框架的争夺战,其中 Google 发布的 TensorFlow 和 Facebook 主力支持的 PyTorch 是最耀眼的两颗明星。我们今天就来看看其中一位明星 PyTorch,看看它为何值得学。


简单介绍


PyTorch 强调从研究到生产。来源:https://pytorch.org/


根据官网介绍,PyTorch 是一个开源的深度学习平台,提供从研究原型到生产部署的无缝路径(An open source deep learning platform that provides a seamless path from research prototyping to production deployment)。


PyTorch 的流行度仅次于 TensorFlow。而最近一年,在 GitHub 关注度和贡献者的增长方面,PyTorch 跟 TensorFlow 基本持平。甚至,PyTorch 的搜索热度持续上涨,加上 FastAI 的加持,PyTorch 无疑会得到越来越多的机器学习从业者的青睐。


流行度虽然可以说明问题,但是,你一定要知道更多,才能明白 PyTorch 为什么值得学,你在什么情况下需要学习  PyTorch 。


PyTorch 关键发展节点


2017 年 1 月,Facebook AI 研究团队发布 PyTorch,一个基于 Torch 的 Python 工具包,专门用于 GPU 加速的深度学习编程。


2017 年 8 月,PyTorch V 0.2.0 发布,引入广播、高级索引、高阶梯度、新图层,以及分布式训练等,前两者进一步方便了 Tensor 与 Numpy 互转。


2018 年 4 月,Caffe2 代码合并到 PyTorch。Facebook 打算将 PyTorch 的研究特性与 Caffe2 的生产特性更好地结合起来。


2018 年 4 月,PyTorch V 0.4.0 发布,新特性包括 Tensor 和 Variable 合并,强化 Numpy 风格的 Tensor 构建等,并正式支持 Windows 系统。


2018 年 10 月,PyTorch V 1.0.0 发布,融合 PyTorch 自身灵活性、研究优势与 Caffe2 的后端与应用能力、ONNX 的框架转换能力于一体;同时 FastAI V1.0 发布,可用单一 API 玩转常见深度学习应用,大大降低了深度学习的学习门槛。


2019 年 5 月,PyTorch V 1.1 发布,提供了新的 API,原生支持 TensorBoard 和自定义循环神经网络,并提升了性能。


PyTorch 刚走过了 2 年 4 个月的时间,发展相当迅速。


PyTorch 当前稳定版及相关配置。来源:https://pytorch.org/


受欢迎程度


Jeff Hale 4 月份在 Medium 上发表了一篇文章,比较了 TensorFlow、PyTorch、keras 和 FastAI 的流行度,全面涵盖职位需求、使用、学术研究和兴趣等维度。


Jeff 根据多个招聘网站在线职位搜索、Google Trends、GitHub 活跃度、Arxiv 文章数、Medium 文章数、Quora 相关问题关注人数统计计算出了一个综合的增长分数。我们这里引用一下最终结果图片:

深度学习框架半年增长分数。(2018 年 10 月-2019 年 3 月)


可以看到 TensorFlow 稳居第一,而 PyTorch 表现也非常抢眼,未来的需求和发展非常值得期待。


PyTorch 核心优势:动态计算图


PyTorch  是一款强大的动态计算图模式的深度学习框架。大部分框架是静态计算图模式,其应用模型在运行之前就已经确定了,而 PyTorch 支持在运行过程中根据运行参数动态改变应用模型。


可以简单理解为:一种是先定义后使用,另一种是边使用边定义。动态计算图模式是 PyTorch 的天然优势之一,Google 今年 3 月份发布的 TensorFlow 2.0 Alpha 版本中的 Eager Execution,被认为是在动态计算图模式上追赶 PyTorch 的举措。


静态计算图模式框架在执行计算图之前需要先声明和编译。 虽然在实际生产中这种实现比较高效,但在研究和开发中非常繁琐。


以 PyTorch 为代表的动态计算图框架则无需在每次执行之前编译模型。在建模 NLP 任务时,每个输入都可能导致不同的图结构,因此动态图就绝对占优了——这也是 PyTorch 在处理很多问题上(尤其是 RNN 相关问题)更高效的原因。


此外,动态图机制在调试方面非常方便,基本上,如果计算图运行出错,就可以在堆栈跟踪定义图的代码行。有人形容调试  PyTorch 就跟调试 Python 一样,通过断点检查就可以高效解决问题。


PyTorch 更多优势

  • 无缝接入 Python 生态圈,张量、变量与 Numpy 互转

  • 在张量之上封装变量,方便构建神经网络

  • 强大的后端功能

  • 命令式编程风格

  • 扩展性极好

  • 广泛应用于 NLP 之外的多种深度学习应用

  • 富有活力的社区和背后大厂 Facebook 支持

  • ......


深入了解与使用 PyTorch


如果你想深入细致了解使用 PyTorch 快速高效地构建深度学习模型,那么——


资深数据科学家 Rich Ott 在O’Reilly主办的 AI  Conference 2019 北京站上主讲的「PyTorch 深度学习」课程值得学习,学习时间为期两天,具体为 6 月 18 日 ~ 6 月 19 日。


有志于将来投身人工智能领域的 Python 开发者、Python 数据分析师,以及想进一步深入理解 PyTorch 的机器学习工程师、算法工程师,不要错过这次与国外资深专业人士一起学习的机会。


导师:Richard Ott


The Data Incubator 数据科学家,热爱数据科学,并致力于数据知识的传播与教学。曾在 Verizon 担任数据科学家和软件工程师。麻省理工学院粒子物理学博士,加州大学戴维斯分校博士后。


学习内容

  • 学习 PyTorch 张量和自动求导包

  • 多种 PyTorch 深度学习模型架构

  • 使用真实数据集构建和训练深度神经网络


前置知识

  • 基本的 Python 知识

  • 简单的矩阵和线性代数知识

  • 建模和机器学习基础

  • 神经网络基础


课程大纲


6 月 18 日

  • PyTorch 张量

  • 自动求导包

  • 神经网络

  • 多层感知机


6 月 19 日

  • 神经网络架构

  • 卷积神经网络

  • 自动编码器


参考资料

Natural Language Processing with PyTorch: Build Intelligent Language Applications Using Deep Learning

https://towardsdatascience.com/which-deep-learning-framework-is-growing-fastest-3f77f14aa318

https://www.ibm.com/developerworks/cn/cognitive/library/cc-get-started-pytorch/index.html

https://venturebeat.com/2019/05/01/facebook-launches-pytorch-1-1-with-tensorboard-support/



今年6月份,O’Reilly AI Conference携贾扬清、Ion Stoica等一众AI领军者也要来北京啦,届时大数据文摘作为合作媒体会将会为大家带来最新的资讯。另外。目前会议门票正在热卖中,用大数据文摘专属折扣码“WENZHAI”可享八折优惠。


AI Conference部分讲师名单☟

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《深度学习框架PyTorch入门与实践 第二版》是一本介绍PyTorch深度学习框架的实用教程。该教程适合对深度学习PyTorch有一定了解的读者,旨在帮助读者了解PyTorch的基础知识和应用技巧。 本书首先详细介绍了PyTorch的基本概念和基础操作,从创建张量、计算图、自动求导到优化器等方面进行了全面的讲解。接着,书中介绍了如何使用PyTorch构建深度学习模型,包括图像分类、目标检测、生成对抗网络等常见任务。在构建模型的过程中,作者详细解释了模型设计的技巧,如模型组件的选择、超参数的调整等。 此外,书中还介绍了PyTorch在自然语言处理、推荐系统和强化习等领域的应用。每个应用场景都有详细的实例代码和实验结果分析,有助于读者理解如何将PyTorch应用到不同领域的问题中。 《深度学习框架PyTorch入门与实践 第二版》在第一版的基础上更新了内容,包括新特性和最新的发展趋势。读者可以通过这本书更深入地了解PyTorch的使用,并掌握一些高级的技巧和工具。 总之,《深度学习框架PyTorch入门与实践 第二版》是一本适合深度学习PyTorch者的入门教程。通过习本书,读者可以快速上手PyTorch,并具备构建和训练深度学习模型的基本能力。 ### 回答2: 《深度学习框架PyTorch入门与实践 第二版》是一本介绍PyTorch深度学习框架的实践指南。本书适合有一定编程基础和机器习知识的读者。下面我将对该书进行详细介绍。 第二版主要介绍了PyTorch的基本概念、核心功能和常用工具,涵盖了PyTorch的基本操作、张量运算、神经网络模型的构建与训练、图像处理和自然语言处理等内容。 本书的逻辑结构清晰,从简单到复杂地介绍了PyTorch的基础知识和操作,为读者提供了全面深入的习指南。书中通过大量的实例和代码演示,帮助读者理解和掌握PyTorch的使用方法。 此外,本书还对深度学习领域的一些热门技术和应用进行了介绍,如深度卷积神经网络、循环神经网络、生成对抗网络、目标检测和图像分割等。这些内容能够帮助读者进一步习和应用PyTorch解决实际问题。 总之,《深度学习框架PyTorch入门与实践 第二版》是一本深入浅出的PyTorch习指南,内容详实全面。通过阅读本书,读者可以系统地习和理解PyTorch的使用方法,掌握深度学习的核心技术和应用。无论是对初者还是有一定经验的读者来说,都是一本值得推荐的参考书籍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值