这篇翻译是对 https://www.deepspeed.ai/tutorials/pytorch-profiler/ 和 https://www.deepspeed.ai/tutorials/flops-profiler/ 两篇教程做的,使用DeepSpeed训练模型可以基于这两个教程做一下Profile工作判断模型的计算以及内存瓶颈在哪个地方。
---- 新智元报道 编辑:LRS 【新智元导读】了解事物的底层逻辑才能更好地解决问题。康奈尔大学AI联合创始人最近发了一篇文章,从第一原理出发,深度剖析深度学习性能瓶颈的三座大山:计算、内存和开销。 如果想提升模型的性能,你的第一直觉是问搜索引擎吗? 通常情况下你得到的建议只能是一些技巧性的操作,比如使用in-place operation,把梯度设置为None,或者是把PyTorch版本从1.10.1退回到稳定版1.10.0等等。 这些临时找到的骚操作虽然可以一时地解决当下问题,但要是用了以后
点击上方↑↑↑“OpenCV学堂”关注我来源:公众号 机器之心 授权 深度学习是门玄学?也不完全是。 每个人都想让模型训练得更快,但是你真的找对方法了吗?在康奈尔大学本科生、曾在 PyTorch 团队实习的 Horace He 看来,这个问题应该分几步解决:首先,你要知道为什么你的训练会慢,也就是说瓶颈在哪儿,其次才是寻找对应的解决办法。在没有了解基本原理(第一性原理)之前就胡乱尝试是一种浪费时间的行为。 在这篇文章中,Horace He 从三个角度分析可能存在的瓶颈:计算、内存带宽和额外开销,并提供了一些
其实模型的参数量好算,但浮点运算数并不好确定,我们一般也就根据参数量直接估计计算量了。但是像卷积之类的运算,它的参数量比较小,但是运算量非常大,它是一种计算密集型的操作。反观全连接结构,它的参数量非常多,但运算量并没有显得那么大。
在机器学习领域,无论是硬件还是软件,英伟达无疑均拥有巨大优势,后者用 CUDA 建立起了一道软件的护城河。可惜的是,这家公司缺乏远见,未能利用其在机器学习硬软件方面的巨大优势,让自己成为机器学习默认的编译器。而它对可用性与易用性的忽视,让 OpenAI 与 Meta 得以趁虚而入,其主导地位正在被打破。
选自horace博客 作者:Horace He 机器之心编译 编辑:Juniper 深度学习是门玄学?也不完全是。 每个人都想让模型训练得更快,但是你真的找对方法了吗?在康奈尔大学本科生、曾在 PyTorch 团队实习的 Horace He 看来,这个问题应该分几步解决:首先,你要知道为什么你的训练会慢,也就是说瓶颈在哪儿,其次才是寻找对应的解决办法。在没有了解基本原理(第一性原理)之前就胡乱尝试是一种浪费时间的行为。 在这篇文章中,Horace He 从三个角度分析可能存在的瓶颈:计算、内存带宽和额外开销
来源:机器之心本文约5200字,建议阅读10+分钟深度学习是门玄学?也不完全是。 每个人都想让模型训练得更快,但是你真的找对方法了吗?在康奈尔大学本科生、曾在 PyTorch 团队实习的 Horace He 看来,这个问题应该分几步解决:首先,你要知道为什么你的训练会慢,也就是说瓶颈在哪儿,其次才是寻找对应的解决办法。在没有了解基本原理(第一性原理)之前就胡乱尝试是一种浪费时间的行为。 在这篇文章中,Horace He 从三个角度分析可能存在的瓶颈:计算、内存带宽和额外开销,并提供了一些方式去判断当前处于哪
选自semianalysis.com 作者:Dylan Patel 机器之心编译 机器之心编辑部 CUDA 闭源库将和 TensorFlow 一样逐渐式微。 十年来,机器学习软件开发的格局发生了重大变化。许多框架如雨后春笋般涌现,但大多数都严重依赖于英伟达的 CUDA,并在英伟达的 GPU 上才能获得最佳的性能。然而,随着 PyTorch 2.0 和 OpenAI Triton 的到来,英伟达在这一领域的主导地位正在被打破。 谷歌早期在机器学习模型架构、训练、模型优化方面都具有很大优势,但现在却难以充分发挥
载入alexnet,draw_model函数需要传入三个参数,第一个为model,第二个参数为input_shape,第三个参数为orientation,可以选择'LR'或者'TB',分别代表左右布局与上下布局。
由于Xception和ResNeXt使用了大量1*1的卷积,浪费了大量计算资源,导致效率很低。论文提出了逐点群卷积(pointwise group convolution)帮助降低计算复杂度;但是这也会有副作用,会导致不同通道之间的信息很难交互,故又提出通道混排(channel shuffle)来帮助信息流通。相比于其他网络结构,ShuffleNet可以使用更多的特征映射通道,在小型网络上会更加有效。
那么一次3x3的卷积(求右图矩阵一个元素的值)所需运算量:(3x3)个乘法+(3x3-1)个加法 = 17
来源丨https://zhuanlan.zhihu.com/p/376925457
深度神经网络繁多,各自的性能指标怎样? 实际应用中,在速度、内存、准确率等各种约束下,应该尝试哪些模型作为backbone?
这篇文章将从一个证件检测网络(Retinanet)的轻量化谈起,简洁地介绍,我在实操中使用到的设计原则和idea,并贴出相关的参考资料和成果供读者参考。因此本文是一篇注重工程性、总结个人观点的文章,存在不恰当的地方,请读者在评论区指出,方便交流。
我们常常有一个概念,SSD 等单阶段目标检测器很快,但准确性比不上 Mask R-CNN 等两阶段目标检测器,尽管两阶段目标检测推断速度要慢许多。那么有没有一种兼顾两者的目标检测器?设计这样的检测器又会出现什么挑战?这就是该论文作者所关心的。
EfficientNet源自Google Brain的论文EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks. 从标题也可以看出,这篇论文最主要的创新点是Model Scaling. 论文提出了compound scaling,混合缩放,把网络缩放的三种方式:深度、宽度、分辨率,组合起来按照一定规则缩放,从而提高网络的效果。EfficientNet在网络变大时效果提升明显,把精度上限进一步提升,成为了当前最强网络。EfficientNet-B7在ImageNet上获得了最先进的 84.4%的top-1精度 和 97.1%的top-5精度,比之前最好的卷积网络(GPipe, Top-1: 84.3%, Top-5: 97.0%)大小缩小8.4倍、速度提升6.1倍。
这里硬件主要是指CPU和GPU, 计算机的计算能力主要依靠这两类硬件的支持, 下面以本地开发机的例子说明一下如何计算CPU和GPU的FLOPS。
神经网络的宽度很重要,因为增加宽度必然会增加模型的容量。但是,网络的性能不会随着宽度的增加而线性提高,并且很快就会饱和。
目前基于深度学习的目标检›测模型无不依赖CNN分类网络来作为特征提取器,如SSD采用VGG,YOLO采用DarkNet,Faster R-CNN采用ResNet,我们一般称这些网络为目标检测模型的backbone。ResNet是目标检测模型最常用的backbone,DenseNet其实比ResNet提取特征能力更强,而且其参数更少,计算量(FLOPs)也更少,用于目标检测虽然效果好,但是速度较慢,这主要是因为DenseNet中密集连接所导致的高内存访问成本和能耗。VoVNet就是为了解决DenseNet这一问题,基于VoVNet的目标检测模型性能超越基于DenseNet的模型,速度也更快,相比ResNet也是性能更好。
张量核心、显存带宽、16位能力……各种纷繁复杂的GPU参数让人眼花缭乱,到底怎么选?
谷歌上个月底提出的EfficientNet开源缩放模型,在ImageNet的准确率达到了84.1%,超过Gpipe,已经是当前的state-of-the-art了。
本文提出了一种用于三维卷积神经网络(3D CNN)的模型压缩和移动加速框架 RT3D,通过结合神经网络权重剪枝和编译器代码优化技术,使模型的端到端运行时间与目前支持 3D CNN 的移动框架相比速度提升高达 29.1 倍,准确性损失仅为 1%~1.5%。当在手机上采用 C3D 或 R(2+1)D 模型时,可以在 150ms 内完成 16 帧视频的计算。该工作由 CoCoPIE 团队:美国东北大学(Northeastern University)的王言治研究组、威廉与玛丽学院(William & Mary)的任彬研究组以及北卡罗来纳州立大学(North Carolina State University)的慎熙鹏研究组共同完成,发表于第 35 届美国人工智能协会年会(AAAI 2021)。
【新智元导读】Meta现实实验室(Meta Reality Lab)华人一作提出FBNetV5,这是一种在一次运行中同时为多个任务搜索架构的神经架构搜索(NAS)算法。针对三个基本的视觉任务:图像分类、物体检测和语义分割,FBNetV5搜索到的模型在所有三个任务中都超过了目前的SoTA水平。
GPipe是一个基于 Lingvo (Lingvo 是 Google 基于 TensorFlow 二次开发的重点针对序列模型的框架)开发的,支持超大规模模型的神经网络训练并行库,本文介绍其基本功能和流水线机制。
2021年提议的Vision Transformer(VIT)已成为计算机视觉深度学习领域的一个有前途的研究主题。随着VIT的研究变得更加深入,一些研究人员受到VIT的大型接收领域的启发,将卷积网络也改造成具有更大的接收场来提高效率。根据有效的接收场(ERF)理论,ERF的大小与内核大小和模型深度的平方根成正比。这意味着通过堆叠层来实现大ERF的有效性不如增加卷积内核大小。因此,研究人员提出了包含大型卷积内核新的CNN结构。该网络可以达到与VIT相同的准确性。“大内核的cnn可以胜过小内核的cnn”这可能是今年来对于CNN研究最大的成果了。
机器之心专栏 机器之心编辑部 今天跟大家分享一篇来自CMU等机构的论文《Sliced Recursive Transformer》,该论文已被 ECCV 2022 接收。 目前 vision transformer 在不同视觉任务上如分类、检测等都展示出了强大的性能,但是其巨大的参数量和计算量阻碍了该模型进一步在实际场景中的应用。基于这个考虑,本文重点研究了如何在不增加额外参数量的前提下把模型的表达能力挖掘到极致,同时还要保证模型计算量在合理范围内,从而可以在一些存储容量小,计算能力弱的嵌入式设备上部署。
神经网络模型经常被研究人员戏称为「堆积木」,通过将各个基础模型堆成更大的模型,更多的数据来取得更好的效果。
詹士 Alex 发自 凹非寺 量子位 | 公众号 QbitAI 英伟达的软件护城河正在逐渐消失。 随着PyTorch支持更多GPU厂商,再加上OpenAI的Triton搅局,英伟达手中的利器CUDA 逐渐锋芒不再。 上述观点来自Semi Analysis首席分析师Dylan Patel,相关文章已引发一波业内关注。 有网友看后评价: 英伟达沦落到此种境地,只因为了眼前利益,放弃创新。 Pytorch的作者之一Sasank Chilamkurthy还补刀: 当英伟达之前提出要收购Arm时,我就对潜在的垄断
点击上方↑↑↑“OpenCV学堂”关注我来源:公众号 机器之心 授权 今天跟大家分享一篇来自CMU等机构的论文《Sliced Recursive Transformer》,该论文已被 ECCV 2022 接收。 目前 vision transformer 在不同视觉任务上如分类、检测等都展示出了强大的性能,但是其巨大的参数量和计算量阻碍了该模型进一步在实际场景中的应用。基于这个考虑,本文重点研究了如何在不增加额外参数量的前提下把模型的表达能力挖掘到极致,同时还要保证模型计算量在合理范围内,从而可以在一些存储
模型的计算图:def print_autograd_graph():或者参见tensorboad
来源:DeepHub IMBA本文约3400字,建议阅读5分钟“大内核的cnn可以胜过小内核的cnn”这可能是今年来对于CNN研究最大的成果了。 2021年提议的Vision Transformer(VIT)已成为计算机视觉深度学习领域的一个有前途的研究主题。随着VIT的研究变得更加深入,一些研究人员受到VIT的大型接收领域的启发,将卷积网络也改造成具有更大的接收场来提高效率。根据有效的接收场(ERF)理论,ERF的大小与内核大小和模型深度的平方根成正比。这意味着通过堆叠层来实现大ERF的有效性不如增加卷积
近期关于无监督语言建模的研究证明,训练大型神经语言模型推动了自然语言处理应用中的 SOTA 结果。但是,对于非常大的模型而言,内存限制了实际训练的模型大小。模型并行化使得我们能够训练更大的模型,因为模型并行化可以将参数分割并分配至多个处理器。
视频已逐渐超过文字和图片,可以说成为了现在使用最广的媒体形式,同时也占据了用户更多的浏览时间,这就使得视频理解变得尤为重要。
本地版:https://github.com/lutzroeder/netron
大核卷积的实用往往伴随着性能与速度的下降,为此,我们总结了5条大核卷积高效使用的指标方针。
深度学习是一个对计算有着大量需求的领域,从一定程度上来说,GPU的选择将从根本上决定深度学习的体验。因此,选择购买合适的GPU是一项非常重要的决策。那么2022年,如何选择合适的GPU呢?这篇文章整合了网络上现有的GPU选择标准和评测信息,希望能作为你的购买决策的参考。
深度视频识别的计算成本比图像识别更高,尤其是在 Kinetics 等大规模数据集上。因此,为了处理大量视频,可扩展性训练是至关重要的。这篇论文研究了影响视频网络的可扩展性的因素。研究者认定了三个瓶颈,包括数据加载(从磁盘向 GPU 移动数据)、通信(在网络中移动数据)和计算速度(FLOPs)。
最近一些群友有询问我有没有哪些YOLO的算法推荐,考虑到现在Pytorch是做实验发论文最流行的深度学习框架,所以我就针对Pytorch实现的YOLO项目做了一个盘点和汇总,真心希望可以帮助到入门目标检测的同学。写作不易,要是觉得这篇文章有用就点个关注吧QAQ。
【GiantPandaCV导语】现在深度学习项目代码量越来越大,并且单个文件的量也非常的大。笔者总结了一些专家的经验并结合自己看的一些项目,打算总结一下如何探索和深入一个深度学习项目库。
工欲善其事必先利其器,今天聊一聊深度学习必备GPU如何去选,记得收藏哦! 深度学习是一个对计算有着大量需求的领域,从一定程度上来说,GPU的选择将从根本上决定深度学习的体验。因此,选择购买合适的GPU是一项非常重要的决策。那么2022年,如何选择合适的GPU呢?这篇文章整合了网络上现有的GPU选择标准和评测信息,希望能作为你的购买决策的参考。
以下文章来源于GiantPandaCV ,作者BBuf本文来自 @BBuf 的社区专栏 GiantPandaCV
领取专属 10元无门槛券
手把手带您无忧上云