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

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

3天内不再提示

关于驭势通往深度学习之路的分析和介绍

VtWH_驭势未 来源:djl 2019-09-19 17:43 次阅读

AI天团出道已久,成员都是集颜值和才华于一身的男纸,之前我们已经见过其中三位了,压轴出场的到底是谁?

更为重要的是,他会带给我们关于人工智能的什么新鲜东东呢?

王宇航,博士毕业于中国科学院自动化研究所,现阶段主要研究方向包括:深度学习、图像语义分割、目标检测网络模型压缩与加速等。

宇航告诉我们,深度神经网络也可以是一个“Transformer”,它可以在使用时根据输入数据动态地调整自己的结构。至于为什么要设计这样的网络结构,宇航用“杀鸡焉用牛刀”来形容它。

随着近年来深度学习的快速发展,我们已经能够获得越来越精确的模型实现对图像目标的识别,而相应地,模型的体积也在成倍地增长,这给模型的部署和应用带来了很大的麻烦。因此,很多学者一直致力于给深度神经网络模型“减重”,从而实现效果和速度的平衡。

其中的主要方法包括对模型和知识进行蒸馏,对模型进行剪枝,以及对模型参数进行分解和量化等等。这些方法都能够提高模型中“有效计算”的密度,从而使模型变得更加高效。如果说这些方法是获得了更加高效的“静态”模型的话,另一类方法则采用“动态”的模型来提高应用端的计算效率,它们针对不同的输入数据动态地调整网络的前向过程,去除不必要的计算,从而达到加速的目的。

首先,我们可以分析一下深度神经网络模型在训练和预测过程中的不同:在训练的过程中,我们要求模型对来自不同场景不同类别的目标都进行学习和辨别,以丰富其“知识储备”,并因此不得不引入更多的神经元和网络连接。

而在预测阶段,我们的需求往往集中于个体图像的识别,而应对这样相对单一的场景和目标,往往不需要我们使出全部的“看家本领”,只需要使用一部分相关知识针对性地去解决就可以了。

对于深度神经网络模型,参数,或者说神经元之间的连接,就是它的“知识”,而针对不同的数据对网络连接进行选择, 就可以动态地调整网络的计算过程,对于比较容易辨认的图像进行较少的编码和计算,而对于比较难以辨认的图像进行较多的编码和计算,从而提高网络预测的整体效率。

本文介绍的这两篇文章都是基于这样的出发点,而它们的关注点又各自不同。

“Runtime” 一文主要关注于减少网络中卷积层的channel数量,如下图所示:

关于驭势通往深度学习之路的分析和介绍

为了简化模型,他们将网络中每一个卷积层的卷积核分为k组,根据网络各前层的输出特征决定在本层中使用的卷积核数量m(1≤m≤k),并仅使用前m组卷积核参与运算,从而通过减小m来削减层与层之间的连接,达到channel pruning的效果。

而 “SkipNet”一文则主要关注网络中layer的数量,其主要思想如下图所示:

关于驭势通往深度学习之路的分析和介绍

他们为网络中的每一个层(或每一组层)学习一个“门”,并基于网络各前层的输出特征进行判断,是将前一层输出的特征图输入本层进行计算还是直接越过本层将其送入后续网络,从而通过“skip”掉尽可能多的层来实现加速的目的。

从直观上来讲,这两篇文章分别从动态削减模型的“宽度”和“深度”的角度,实现了对预测过程中网络计算的约减。

那么如何实现对网络连接方式的动态调整呢?

在网络由浅至深的过程中,对于网络中每一层连接方式的选择(对于“Runtime” 一文是选择该层使用的卷积核数量,而对于 “SkipNet”一文是选择该层参与计算与否)可以看作一个序列决策过程,因此,这两篇文章均选择了强化学习的方式建模这一过程。将原始的主体CNN网络作为“Environment”,学习一个额外的轻量的CNN或RNN网络作为“Agent”来产生决策序列。其中,对于原CNN网络每一层的决策,作为一个“Action”都将带来相应的“Reward”。

为了在最大限度地压缩网络计算的同时最大化网络的分类精度,在构建“Reward”函数的过程中,需要同时考虑两个部分:1.对“Action”约减计算量的奖励,即prune掉的channel越多或skip掉的layer越多,获得奖励越大;2.网络最终的分类预测损失,即最终分类预测的log损失越小,获得奖励越大。由于这两部分的梯度计算方式不同,因此在对模型目标函数进行优化的过程中,会构成一个“强化学习+监督学习”的混合学习框架。

在具体的算法实现中,这两篇文章对于“Reward”函数的设计和优化策略的选择各有不同。“Runtime”一文采取了交替更新的方式,而“SkipNet”一文则采用了混合优化的方式,具体的细节我们就不在这里详述了。

对于方法的效果,这两篇文章都给出了严谨的数据对比和可视化结果分析,大家可以根据兴趣进行更深入的阅读和研究。而动态网络结构的意义,可能也不止于单纯的约减计算。网络连接的改变实际上影响着整个特征编码的过程,以“SkipNet”为例,对n个网络层的选择可能会带来2^n种不同的特征编码方式,而在训练这种动态选择策略的过程中,可能也会一定程度地解耦层与层之间的依赖关系,这也会为我们日后设计更具“自适应性”的网络结构和研究网络中信息的传递及融合方式带来更多的启发。

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

    关注

    42

    文章

    4767

    浏览量

    100668
  • 可视化
    +关注

    关注

    1

    文章

    1190

    浏览量

    20924
  • 深度学习
    +关注

    关注

    73

    文章

    5497

    浏览量

    121076
收藏 人收藏

    评论

    相关推荐

    NPU在深度学习中的应用

    随着人工智能技术的飞速发展,深度学习作为其核心驱动力之一,已经在众多领域展现出了巨大的潜力和价值。NPU(Neural Processing Unit,神经网络处理单元)是专门为深度学习
    的头像 发表于 11-14 15:17 440次阅读

    GPU深度学习应用案例

    GPU在深度学习中的应用广泛且重要,以下是一些GPU深度学习应用案例: 一、图像识别 图像识别是深度学习
    的头像 发表于 10-27 11:13 357次阅读

    AI大模型与深度学习的关系

    AI大模型与深度学习之间存在着密不可分的关系,它们互为促进,相辅相成。以下是对两者关系的介绍: 一、深度学习是AI大模型的基础 技术支撑 :
    的头像 发表于 10-23 15:25 545次阅读

    FPGA做深度学习能走多远?

    的发展前景较为广阔,但也面临一些挑战。以下是一些关于 FPGA 在深度学习中应用前景的观点,仅供参考: • 优势方面: • 高度定制化的计算架构:FPGA 可以根据深度
    发表于 09-27 20:53

    卡特彼勒推出“通往可持续发展之路”计划

    近日,卡特彼勒宣布推出一项名为“通往可持续发展之路”(Pathways to Sustainability)的全新教育计划,旨在助力采矿、采石场和骨料行业客户的能源转型之旅。该计划为期四年,将为参与者提供全面、多元的学习机会、能
    的头像 发表于 09-18 17:43 516次阅读

    中科分析DPU在云原生网络与智算网络中的实际应用

    CCF Chip 2024,精彩不能停!7月21日下午,中科数在第二届中国计算机学会(CCF)芯片大会的“数专属时刻”仍在继续,数组织承办“DPU技术趋势和应用——DPU在云原生与智算网络中
    的头像 发表于 08-02 11:21 679次阅读

    深度学习中的无监督学习方法综述

    应用中往往难以实现。因此,无监督学习深度学习中扮演着越来越重要的角色。本文旨在综述深度学习中的无监督
    的头像 发表于 07-09 10:50 627次阅读

    深度学习与nlp的区别在哪

    深度学习和自然语言处理(NLP)是计算机科学领域中两个非常重要的研究方向。它们之间既有联系,也有区别。本文将介绍深度学习与NLP的区别。
    的头像 发表于 07-05 09:47 867次阅读

    深度学习常用的Python库

    深度学习常用的Python库,包括核心库、可视化工具、深度学习框架、自然语言处理库以及数据抓取库等,并详细分析它们的功能和优势。
    的头像 发表于 07-03 16:04 613次阅读

    TensorFlow与PyTorch深度学习框架的比较与选择

    深度学习作为人工智能领域的一个重要分支,在过去十年中取得了显著的进展。在构建和训练深度学习模型的过程中,深度
    的头像 发表于 07-02 14:04 940次阅读

    深度学习模型训练过程详解

    详细介绍深度学习模型训练的全过程,包括数据预处理、模型构建、损失函数定义、优化算法选择、训练过程以及模型的评估与调优。
    的头像 发表于 07-01 16:13 1185次阅读

    深度学习的模型优化与调试方法

    深度学习模型在训练过程中,往往会遇到各种问题和挑战,如过拟合、欠拟合、梯度消失或爆炸等。因此,对深度学习模型进行优化与调试是确保其性能优越的关键步骤。本文将从数据预处理、模型设计、超参
    的头像 发表于 07-01 11:41 750次阅读

    深度学习与传统机器学习的对比

    在人工智能的浪潮中,机器学习深度学习无疑是两大核心驱动力。它们各自以其独特的方式推动着技术的进步,为众多领域带来了革命性的变化。然而,尽管它们都属于机器学习的范畴,但
    的头像 发表于 07-01 11:40 1272次阅读

    深度践行“IaaS on DPU”理念,中科数正式发布“云”高性能云异构算力解决方案!

    ®高性能云异构算力解决方案,为企业提供更快部署、更强性能和更高吞吐的云算力解决方案。 在发布环节,张宇表示:“云®高性能云异构算力解决方案是中科深度洞察算力技术发展趋势,精准把握云平台业务需求,致力于解决云基础
    的头像 发表于 05-14 17:04 480次阅读
    <b class='flag-5'>深度</b>践行“IaaS on DPU”理念,中科<b class='flag-5'>驭</b>数正式发布“<b class='flag-5'>驭</b>云”高性能云异构算力解决方案!

    详解深度学习、神经网络与卷积神经网络的应用

    处理技术也可以通过深度学习来获得更优异的效果,比如去噪、超分辨率和跟踪算法等。为了跟上时代的步伐,必须对深度学习与神经网络技术有所学习和研究
    的头像 发表于 01-11 10:51 1994次阅读
    详解<b class='flag-5'>深度</b><b class='flag-5'>学习</b>、神经网络与卷积神经网络的应用