• Spiking-YOLO: Spiking Neural Network for Energy-Efficient Object Detection


    Spiking-YOLO: Spiking Neural Network for Energy-Efficient Object Detection

    2021-04-19 21:18:15

     

    Paperhttps://ojs.aaai.org/index.php/AAAI/article/view/6787/6641 

    Code (Un-Official)https://github.com/cwq159/PyTorch-Spiking-YOLOv3 

     

    1. Background and Motivation: 

    本文提出一种基于 SNN 的物体检测方法,即从 ANN 到 SNN 的转换,从而实现低功耗的物体检测。为了解决在 ANN2SNN 转换过程中存在的如下两点问题:

      a). Inefficiency of conventional normalization methods; 

      b). Absence of an efficient implementation method of leaky-ReLU in an SNN domain. 

    作者提出了两种对应的方法进行应对:Channel-wise normalization and signed neuron with an imbalanced threshold

     

    2. Our Approach: 

    2.1. Channel-wise data-based normalization 

      常规的脉冲神经元中,用到阈值的方法进行脉冲发放的控制。但是如何设置该阈值,是一个头大的问题,设置的太低和太高会导致过发放、欠发放的问题。为了解决该问题,权重和阈值权重,均需要仔细的选择,以进行充分平衡的激活。前人也提出了很多归一化的方法,其中,较为著名的是 Layer-wise normalization。但是,作者的实验表明,在 deep SNN 中采用这些方法进行归一化,会在物体检测任务上得到严重降低的结果。然后作者对这种现象进行了分析,如图1所示:

     

    其中,x 轴是 channel index,y 轴是 normalized maximum activation values. 绿色和红色的线分别表示每一层归一化之后的激活 average 和 minimum values。可以发现,被处理后的激活值变得非常小,这使得在物体检测任务上,效果变得很差。为了解决该问题,作者提出了一个更加细粒度的归一化方法,称为 channel-wise normalization 来确保快速和高效的信息传递。与常规 layer-wise 的方式不同,作者这里用的是 channel-wise 的方式:

     

    其中,i 和 j 均为 channel 的索引。

      

     

    从具体做法的角度来说,第 l 层的权重 w,会被每一层的最大激活 lambda_j^l 进行归一化。最大激活是从 training dataset 中计算得到的。在紧跟着的 layer,被归一化的激活再乘以上一层的最大激活,以得到归一化前的原始激活先验。算法的细节如 算法1  和 图2 所示。

    关于为何会改善发射率,作者专门进行了分析,如图3  和 图4 所示,在多个卷积层上均得到了明显的改善。

     

    2.2. Signed Neuron Featuring imbalanced threshold

    作者提到在 SNN 领域中,有效地 leaky-ReLU 方法并没有得到广泛的讨论。作者提出了一种新的方法来达到 leak-ReLU 的效果(signed neurons with IBT, imbalanced threshold):

     

    如图 6 所示,

     

     

     

    3. Experimental results

     

     

     

     

      

     

      

    ==

    Stay Hungry,Stay Foolish ...
  • 相关阅读:
    C++程序代写实现HashSet class
    EL表达式
    Hibernate的事务管理
    ThreadLocal理解
    SOA框架
    JVM垃圾回收机制
    Htpp通讯协议详解
    Android模拟器使用SD卡
    android 开发-HttpClient状态码定义
    android 开发-文件存储之读写sdcard
  • 原文地址:https://www.cnblogs.com/wangxiaocvpr/p/14678742.html
Copyright © 2020-2023  润新知