楼主: 时光永痕
763 0

[数据挖掘新闻] 通过Blockdrop加速IBM Research的神经网络培训 [推广有奖]

  • 0关注
  • 14粉丝

svip3

学术权威

12%

(VIP/贵宾)三级

57%

威望
0
论坛币
26 个
通用积分
49.7576
学术水平
4 点
热心指数
4 点
信用等级
4 点
经验
34070 点
帖子
2731
精华
0
在线时间
316 小时
注册时间
2020-7-21
最后登录
2024-4-28

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
通过Blockdrop加速IBM Research的神经网络培训
神经网络中具有动态推理路径的AI扩展
介绍
在得克萨斯大学奥斯汀分校和马里兰大学的帮助下,IBM Research试图通过创建称为BlockDrop的技术来加快神经网络的性能。这项技术的设计背后的目标和前景是加速卷积神经网络操作而又不失任何保真度,这可以为ML社区节省大量成本。   
这可以“进一步增强和加快应用程序的使用和使用,以及提高神经网络的性能,从而特别是在计算能力和功率受限的地方以及云/边缘服务器上”。
准确性水平的提高伴随着日益复杂和深入的网络体系结构。这对于快速推理至关重要的领域提出了一个问题,尤其是在对延迟敏感的实时场景中,例如自动驾驶,机器人导航或移动设备上的用户交互应用程序。
进一步的研究结果表明,用于全连接层的正则化技术对卷积层的效果不佳,因为这些层中的激活单元在空间上是相关的,尽管丢失,信息仍可以流经卷积网络。
IBM Research推出的BlockDrop方法是对现有模型压缩技术的“补充方法”,因为这种形式的基于结构化NEURAL NETWORK的辍学操作会丢弃空间相关的信息,从而产生压缩的表示形式。神经网络的剩余块可以保留下来进行评估,并可以进一步修剪以提高速度”。
下图说明了将给定图像输入到卷积网络的分块机制。右侧2个图中的绿色区域包括激活单元,这些激活单元在输入图像中包含语义信息。随机丢弃的激活对删除语义信息无效。
对于在每个步骤都有迭代的NN,附近的激活包含紧密相关的信息。空间压缩算法中采用的最佳策略是删除连续区域,这些连续区域通过颜色或形状代表相似的区域和上下文。这样,它有助于去除某些语义信息(例如,头或脚),从而推动其余单元学习用于分类输入图像的详细功能。     
动态推理路径的策略网络
BlockDrop机制学习在推理期间动态选择要执行的深度网络的哪些层,以便在不降低预测精度的情况下最大程度地减少总计算量。它利用剩余网络(ResNets)由健壮性丢弃层,一个必要ren't来计算达到期望的精确水平,从而产生 所述  残余块的动态选择对于给定的新的图像。因此,它有助于:     
为了节省成本,可以更有效地分配系统资源。
促进对ResNet的进一步了解,例如,不同的块是否以及如何对有关对象的信息进行编码,并了解对对象级特征进行编码背后的动态。   
通过强调图像像素级别的决策,通过更多压缩表示来实现最小的块使用率。这些在隐藏神经元的不同层进行的特定于图像的决策(具有功能)有助于最佳地放下障碍物。   
例如,给定一个经过预训练的ResNet,一个策略网络将被训练为“ 联合强化学习设置,以获得在保留识别准确性的同时利用最少数量的块的双重奖励”。
在CIFAR和ImageNet上进行的实验表明,学到的策略不仅可以加速推理,还可以编码有意义的视觉信息。使用此方法的ResNet-101模型平均可实现20%的加速,对于某些图像可高达36%,同时在ImageNet上保持相同的76.4%top-1精度。     
BlockDrop策略学习一种称为策略网络的模型,给定一个新颖的输入图像,该模型将输出所有二元决策的后验概率,以将每个块放入或保留在经过预训练的ResNet中。   
使用课程学习对政策网络进行培训,以最大限度地提高奖励,从而在保持预测准确性的同时,鼓励使用尽可能少的块。  
此外,将经过预训练的ResNet与策略网络进一步联合微调,以生成针对块丢弃行为的功能转换。该方法表示关联强化学习的实例,其中所有决策均在给定上下文(即输入实例)的单个步骤中做出。这样可以执行轻量级策略,并可以扩展到非常深的网络。      
像递归模型(LSTM)之类的深度学习神经网络也可以用作策略网络,但是,研究发现表明CNN在具有类似性能的情况下效率更高。   
下图是BlockDrop的概念概述,它学习了一种策略,用于选择正确分类给定输入图像所需的最小块配置。在网络中生成的特定于实例的路径不仅反映了图像的难度,在已知的情况下,更简单的样本将使用较少的块。也可以使用与视觉特征簇相对应的块模式来编码有意义的视觉信息。     
来源-IBM
上图描述了Blockdrop的策略网络架构。在任何给定的新映像上,策略网络都会在经过预先训练的ResNet中输出丢弃并保留每个块的决策。保留的该最终活动块用于评估预测。     
众所周知,区块使用和预测准确性中的每一个都累积说明了政策奖励。进一步训练策略网络以使用课程学习策略来优化预期奖励,这有助于为非凸函数的全局优化提供通用算法。  
为了实现这一目标,政策网络与ResNet共同进行了微调。
来源-IBM
上图说明了ImageNet的示例。第一行包含通过消除冗余而以最少的块数进行高精度分类的图像  ,而下一行的样本  利用最多的块并占用更多空间。
使用较少块的样本确实更易于识别,因为它们包含   位于中心的单个前视图对象,而  在需要更多块的样本中会出现多个对象,遮挡或背景混乱 。
这是基于以下假设:“块使用情况是实例难易程度的函数,其中BlockDrop自动学习将图像“分类”为容易或困难的情况”。
用法(参考  https://github.com/Tushar-N/blockdrop.git
库和用法
git clone https://github.com/Tushar-N/blockdrop.git  
pip install -r requirements.txt  wget -O blockdrop-checkpoints.tar.gz
https://www.cs.utexas.edu/~tusha ... op-checkpoints.t...  
tar -zxvf blockdrop-checkpoints.tar.gz  
#Train a model on CIFAR 10 built upon a ResNet-110  python cl_training.py --model R110_C10 --cv_dir cv/R110_C10_cl/ --lr 1e-3 --batch_size 2048 --max_epochs 5000  #Train a model on ImageNet built upon a ResNet-101  python cl_training.py --model R101_ImgNet --cv_dir cv/R101_ImgNet_cl/ --lr 1e-3 --batch_size 2048 --max_epochs 45 --data_dir data/imagenet/  # Finetune a ResNet-110 on CIFAR 10 using the checkpoint from cl_training  python finetune.py --model R110_C10 --lr 1e-4 --penalty -10 --pretrained cv/cl_training/R110_C10/ckpt_E_5300_A_0.754_R_2.22E-01_S_20.10_#_7787.t7 --batch_size 256  --max_epochs 2000 --cv_dir cv/R110_C10_ft_-10/  # Finetune a ResNet-101 on ImageNet using the checkpoint from cl_training  python finetune.py --model R101_ImgNet --lr 1e-4  --penalty -5 --pretrained cv/cl_training/R101_ImgNet/ckpt_E_4_A_0.746_R_-3.70E-01_S_29.79_#_484.t7 --data_dir data/imagenet/ --batch_size 320 --max_epochs 10 --cv_dir cv/R101_ImgNet_ft_-5/  python test.py --model R110_C10 --load cv/finetuned/R110_C10_gamma_10/ckpt_E_2000_A_0.936_R_1.95E-01_S_16.93_#_469.t7  python test.py --model R101_ImgNet --load cv/finetuned/R101_ImgNet_gamma_5/ckpt_E_10_A_0.764_R_-8.46E-01_S_24.77_#_10.t7   R110_C10 Model Output  Accuracy: 0.936 Block Usage: 16.933 ± 3.717 FLOPs/img: 1.81E+08 ± 3.43E+07 Unique Policies: 469  Imagenet Model Output Accuracy: 0.764 Block Usage: 24.770 ± 0.980F LOPs/img: 1.25E+10 ± 4.28E+08Unique Policies: 10
结论
在此博客中,我们讨论了旨在加速神经网络训练的BlockDrop策略。具有以下特点:
加速基于AI的计算机视觉操作并节省服务器的运行时间。
每个像素的功耗大约比使用传统硬件的同类系统低200倍。
通过有效减少此类网络的存储和计算成本,促进在移动设备上部署性能最佳的深度神经网络模型。
确定正确分类给定输入图像所需的层或块的最小配置。图像的简单性有助于删除更多层并节省更多时间。
应用程序已扩展到ResNets,以便通过有选择地选择残差块来评估输入结果,从而以学习和优化的方式进行评估,从而加快推理速度。
在CIFAR和ImageNet上进行的大量实验表明,在效率和准确性之间进行权衡时,与现有方法相比有相当大的收益。

关注 CDA人工智能学院 ,回复“录播”获取更多人工智能精选直播视频!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Research Researc search block 网络培训

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 15:36