美文网首页深度学习
SAD---Learning Lightweight Lane

SAD---Learning Lightweight Lane

作者: 逆风g | 来源:发表于2019-11-12 20:42 被阅读0次

    概括

    这篇论文用于检测车道线,作者提出Self Attention Distillation(SAD)模块,可用于现有任何网络结构,提升检测效果但不增加inference time。在模型ENet-SAD上的结果,与现有方法有可比性,但是参数量小于1/20,并且速度快于20倍。

    1. 已验证网络结构有:ENetResNet-18ResNet-34ResNet-101
    2. 测试数据集:TuSimpleCULaneBDD100K

    动机

    作者发现当网络学习到一定程度,不同特征层都会对车道线附近的区域产生更多兴趣。如图在block2、block3、block4中,车道线附近区域特征已被高亮显示:



    给已训练好一半的模型添加SAD模块,让浅层特征来学习(mimic)高层特征的表达,从而加强网络的整体特征表达能力。从图中显示,添加SAD后(after SAD),浅层block的特征表达得到加强,继而高层block的征表达也得到加强。这种底层特征模仿高层特征的学习过程,属于自注意力蒸馏(Self Attention Distillation)。

    • 知识蒸馏(Knowledge distillation):用于把大网络学习到的内容(knowledge)迁移到小网络中。具体有两个目标要学习,一是小网络输出与真值的相似,二是让小网络与大网络的输出相似。
    • 注意力蒸馏(Attention distillation):用于把大网络学习到的注意力特征图(attention map)迁移到小网络中。具体在知识蒸馏基础上,再对网络中间层特征进行迁移,以保证大小网络中间的注意力特征图相似。
    • 自注意力蒸馏(Self Attention Distillation):抛弃大网络,单独在小网络中对不同层学习到的注意力特征图进行迁移学习。

    Self Attention Distillation

    1. 注意力特征图包含两种类型:一种是activation-based attention maps,另一种是gradient-based attention maps,二者区别为是否使用激活函数。
    2. Activation-based attention distillation,主要是把长、宽、通道三维特征转换为长、宽两维特征,其中m代表第m个卷积层:



      通过考虑各通道上激活后的特征值,来确定空间上特征的分布状况,获得attention map。主要方式有三种:



      作者发现第二种方式获取的attention map更好,并设置p的值为2:
    3. 作者基于SAD(Self Attention Distillation),得到AT-
      GEN(attention generator),把它引入到网络的个层级上:



      其中AT-GEN,先把网络中的指定特征经过G得到attention map,再上采样(Bilinear)到目标大小,最后通过softmax激活。


    损失函数

    1. 相邻层attention map的损失函数:



      这里使用的是L2函数。

    2. 网络总损失函数:



      segmentation loss由交叉熵函数和IoU组成;existence loss为二分类交叉熵函数。

    实验

    1. 是否使用自注意力蒸馏效果图对比:


    2. 可视化结果的后处理:

      对输出的概率图先进行9x9卷积的光滑处理,显示取阈值大于0.5的像素,然后每隔20行取最大响应值,最后连接这些最大响应值。
      具体参考论文X.Pan,J.Shi,P.Luo,X.Wang,andX.Tang.Spatialasdeep: Spatial CNN for traffic scene understanding. In Association for the Advancement of Artificial Intelligence, 2018.
    3. 与其它方法对比:
      三个指标,accuracy、F1-measure、IoU


    • TuSimple


    • CULane(F1-measure)


    • BDD100K


    1. 消融实验
    • SAD路径:



      证明相邻层的蒸馏效果最好。

    • 蒸馏方向对比,作者发现自低向上效果好于自顶向下。
    • SAD vs Deep Supervision:
      block2-4



      即使深监督有明显效果提升,但是SAD效果更好。

    • 何时加入SAD:



      SAD加入太早,网络学习效率低。但是不管何时加入,最终效果都差不多。

    1. 可视化结果对比:
    • 在TuSimple(a)和CULane(b)上效果,其中底下数字为accuracy:


    • 在BDD100K上效果,其中底下数字为accuracy,线条亮度值与概率值大小相关:


    相关文章

      网友评论

        本文标题:SAD---Learning Lightweight Lane

        本文链接:https://www.haomeiwen.com/subject/aqmqictx.html