0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

深度学习框架PyTorch 关键发展节点概览

电子工程师 来源:YXQ 2019-05-30 09:56 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

大家知道,深度学习的发展和推进,在某种程度上也是一场框架的争夺战,其中 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 支持

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 谷歌
    +关注

    关注

    27

    文章

    6244

    浏览量

    110261
  • 深度学习
    +关注

    关注

    73

    文章

    5590

    浏览量

    123907
  • pytorch
    +关注

    关注

    2

    文章

    813

    浏览量

    14699

原文标题:深度学习框架PyTorch为何值得学

文章出处:【微信号:BigDataDigest,微信公众号:大数据文摘】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战课(11大系列课程,共5000+分钟)

    (第10系列)、YOLOv8-Tiny工业优化版(第9系列),满足产线端设备算力限制,模型推理速度提升300%。 LabVIEW生态整合 作为工业自动化领域主流开发环境,LabVIEW与深度学习的集成
    发表于 12-04 09:28

    【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战可(11大系列课程,共5000+分钟)

    领域主流开发环境,LabVIEW与深度学习的集成一直是行业痛点。课程提供独家开发的labview调用框架,实现从模型训练(Python)到部署(LabVIEW)的无缝衔接,已成功应用于DIP、AOI
    发表于 12-03 13:50

    摩尔线程发布Torch-MUSA v2.1.1版本

    近日,摩尔线程发布其面向PyTorch深度学习框架的MUSA扩展库——Torch-MUSA v2.1.1。该版本在v2.1.0的基础上,进一步扩展了对大规模
    的头像 发表于 09-10 11:02 727次阅读

    【「DeepSeek 核心技术揭秘」阅读体验】--全书概览

    讲解Deepseek的使用方法 第三章 深入剖析Deepseek-V3的模型架构、训练框架、推理阶段优化、后训练优化等关键技术 第四章关于DeepSeek-R1的技术剖析 第五章 从宏观角度分析
    发表于 07-21 00:04

    Nordic收购 Neuton.AI 关于产品技术的分析

    Nordic Semiconductor 于 2025 年收购了 Neuton.AI,这是一家专注于超小型机器学习(TinyML)解决方案的公司。 Neuton 开发了一种独特的神经网络框架,能够
    发表于 06-28 14:18

    数据采集的关键节点设备是什么

    数据采集是从各种数据源中获取所需信息的过程,其关键节点设备根据应用场景、采集对象和技术需求的不同而有所差异。以下是一些常见的数据采集关键节点设备及其功能和应用场景的详细介绍: 传感器(
    的头像 发表于 06-13 09:15 757次阅读
    数据采集的<b class='flag-5'>关键</b><b class='flag-5'>节点</b>设备是什么

    海思SS626开发板

    识别/运动跟踪等)。 主板集成常用视频硬件接口,所有外设接口电路均通过严格的抗干扰测试,使产品在 EMC 及稳定性方面 具有良好表现;使用通过稳定性测试及深度优化的系统软件(Linux 系统),支持业界主流深度学习
    发表于 04-24 10:04

    百度飞桨框架3.0正式版发布

    、推理等任务都离不开深度学习框架的优化与支撑。 飞桨框架3.0,从设计理念上实现了从底层硬件适配到顶层开发体验的全面进化,在训练效率、性能、兼容性等
    的头像 发表于 04-02 19:03 1041次阅读
    百度飞桨<b class='flag-5'>框架</b>3.0正式版发布

    嵌入式AI技术之深度学习:数据样本预处理过程中使用合适的特征变换对深度学习的意义

      作者:苏勇Andrew 使用神经网络实现机器学习,网络的每个层都将对输入的数据做一次抽象,多层神经网络构成深度学习框架,可以深度理解数
    的头像 发表于 04-02 18:21 1284次阅读

    如何在Arm Ethos-U85上使用ExecuTorch

    在快速发展的机器学习领域,PyTorch 凭借其灵活性和全面的生态系统,已成为模型开发的热门框架。Arm 与 Meta 合作在 ExecuTorch 中引入了对 Arm 平台的支持,进
    的头像 发表于 02-14 14:23 1016次阅读
    如何在Arm Ethos-U85上使用ExecuTorch

    军事应用中深度学习的挑战与机遇

    人工智能尤其是深度学习技术的最新进展,加速了不同应用领域的创新与发展深度学习技术的发展深刻影响
    的头像 发表于 02-14 11:15 819次阅读

    BP神经网络与深度学习的关系

    ),是一种多层前馈神经网络,它通过反向传播算法进行训练。BP神经网络由输入层、一个或多个隐藏层和输出层组成,通过逐层递减的方式调整网络权重,目的是最小化网络的输出误差。 二、深度学习的定义与发展
    的头像 发表于 02-12 15:15 1340次阅读

    深度学习入门:简单神经网络的构建与实现

    深度学习中,神经网络是核心模型。今天我们用 Python 和 NumPy 构建一个简单的神经网络。 神经网络由多个神经元组成,神经元之间通过权重连接。我们构建一个包含输入层、隐藏层和输出层的简单
    的头像 发表于 01-23 13:52 842次阅读

    Triton编译器在机器学习中的应用

    多种深度学习框架,如TensorFlow、PyTorch、ONNX等,使得开发者能够轻松地将不同框架下训练的模型部署到GPU上。 2. Tr
    的头像 发表于 12-24 18:13 1629次阅读

    利用Arm Kleidi技术实现PyTorch优化

    PyTorch 是一个广泛应用的开源机器学习 (ML) 库。近年来,Arm 与合作伙伴通力协作,持续改进 PyTorch 的推理性能。本文将详细介绍如何利用 Arm Kleidi 技术提升 Arm
    的头像 发表于 12-23 09:19 1619次阅读
    利用Arm Kleidi技术实现<b class='flag-5'>PyTorch</b>优化