前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >加法神经网络--AdderNet: DoWe Really Need Multiplications in Deep Learning?

加法神经网络--AdderNet: DoWe Really Need Multiplications in Deep Learning?

作者头像
用户1148525
发布2020-06-16 17:52:56
6440
发布2020-06-16 17:52:56
举报

AdderNet: DoWe Really Need Multiplications in Deep Learning? CVPR2020 https://arxiv.org/abs/1912.13200

当前主流的CNN网络使用了大量的乘法运算来计算 输入特征层和卷积滤波器的相似性(cross-correlation),由于乘法运算耗时明显大于加法运算耗时,所有本文提出一个加法神经网络,使用 l1 范数来计算 输入特征层和卷积滤波器的相似性。这样在计算滤波器的输出响应时基本不用乘法运算。针对该加法神经网络,对网络的训练优化深入分析,根据其实际情况做出相应的调整。最后通过实验数据验证了该加法网络的有效性。

  1. Related works 2.1. Network Pruning 网络裁剪 基于裁剪的方法主要思路是去除冗余的网络连接从而实现压缩和加速原始网络 2.2. Efficient Blocks Design 该方法主要是针对 传统卷积滤波器 conventional convolution filters 进行优化,设计简洁的模块以降低卷积运算量(降低滤波器数量) 2.3. Knowledge Distillation 简单的说就是用一个小网络去逼近一个复杂网络,minimizing the Kullback-Leibler divergence between their outputs

上面各种方法只是减少了乘法运算量,但是还是有很多乘法运算,这里我们提出一个基本没有乘法的加法网络

  1. Networks without Multiplication 传统卷积模块可以用下面公式表达
在这里插入图片描述
在这里插入图片描述

这里的 S 是一个预定义的相似性度量,大多数相似性度量都涉及到乘法,运算量较大。

3.1. Adder Networks 这里我们主要寻找一个不用乘法的相似性度量,l1 距离 没有乘法

在这里插入图片描述
在这里插入图片描述

l1 距离 和 cross-correlation 具有一定的差异性,主要是输出的取值范围。我们使用 batch normalization 对输出响应进行归一化,这样传统卷积网络中的激活响应函数就可以在加法神经网络中使用 。 batch normalization 虽然也有乘法运算,但是这个乘法运算量和 卷积响应的乘法运算量相比较来说很小。

3.2. Optimization 这里我们采用了 full-precision gradient 进行梯度更新

3.3. Adaptive Learning Rate Scaling 不同的网络层采用了不同的学习率 By using the proposed adaptive learning rate scaling, the adder filters in different layers can be updated with nearly the same step

在这里插入图片描述
在这里插入图片描述
  1. Experiment 实验数据
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

希望移动端的CNN模型能够早日得到大规模应用

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-06-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
批量计算
批量计算(BatchCompute,Batch)是为有大数据计算业务的企业、科研单位等提供高性价比且易用的计算服务。批量计算 Batch 可以根据用户提供的批处理规模,智能地管理作业和调动其所需的最佳资源。有了 Batch 的帮助,您可以将精力集中在如何分析和处理数据结果上。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档