IEEE | DSConv: Efficient Convolution Operator

news2024/11/23 15:44:23

论文标题 :DSConv: Efficient Convolution Operator

论文链接 :https://arxiv.org/abs/1901.01928v2

发表时间 :2019年11月


创新点

实现更低的内存使用,并且加快了计算速度


概要

引入了一种称为 DSConv(分布移位卷积)的卷积层变体

它可以很容易地替换到标准神经网络架构中,并实现更低的内存使用和更高的计算速度

DSConv 将传统的卷积核分解为两个组件:

  1. 可变量化核 (VQK)
  2. 分布偏移

通过在 VQK 中仅存储整数值来实现更低的内存使用和更高的速度

同时通过应用基于内核和通道的分布偏移来保留与原始卷积相同的输出

在 ResNet50 和 ResNet34 以及 AlexNet 和 MobileNet 上测试 ImageNet 中的 DSConv

通过将浮点运算替换为定点运算

将卷积核中的内存使用量减少了 14 倍,并将运算速度提高了 10 倍


方法

DSConv 的总体目标是通过使用量化和分布偏移来模拟卷积层的行为

在这里插入图片描述
DSConv 的设置如上图所示

原始卷积张量的大小为 (cho, chi, k, k),其中 cho 是下一层的通道数,chi 是当前层中的通道,k是内核的宽度和高度

DSConv 分为两个不同的组件:

在这里插入图片描述

  1. 可变量化内核 (VQK)

此张量将仅保存可变位长整数值,并且它具有与原始卷积张量相同的大小 (cho, chi, k, k)

参数值设置为从原始浮点模型量化,一旦设置就不能改变

这是 DSConv 的量化组件,它将允许执行更快且内存有效的乘法

  1. Distribution Shifts

这个组件的目的是改变 VQK 的分布以试图模仿原始卷积核的分布

通过使用两个张量在两个域中移动来做到这一点

“移位”是指缩放和偏置操作

第一个张量是 K e r n e l D i s t r i b u t i o n S h i f t e r ( K D S ) Kernel Distribution Shifter (KDS) KernelDistributionShifter(KDS),它移动 VQK 的每个 ( 1 , B L K , 1 , 1 ) (1, BLK, 1, 1) (1,BLK,1,1) 切片中的分布,其中 BLK 是块大小的超参数

这个想法是内核移位器的每个值都用于移位 VQK 的 BLK 深度值的值

那么这个张量的大小是 2 ∗ ( c h o , C E I L ( c h i / B L K ) , k , k ) 2* (cho, CEIL( chi/BLK ), k, k) 2(cho,CEIL(chi/BLK),k,k)

其中 CEIL(x) 是向上舍入运算符,它保存单精度值

第二个张量是 C h a n n e l D i s t r i b u t i o n S h i f t e r ( C D S ) Channel Distribution Shifter (CDS) ChannelDistributionShifter(CDS),它移动每个通道中的分布

换句话说,它改变了每个 ( 1 , c h i , k , k ) (1, chi, k, k) (1,chi,k,k) 切片中的分布

自然,这是一个大小为 2 ∗ ( c h o ) 2*(cho) 2(cho) 的单精度数张量


实验
在这里插入图片描述


总结

原论文中还有,量化程序、分配转变和优化推理等步骤,但是如果个人使用,可直接使用 DSConv 来替代传统卷积

DSConv 较于传统 Conv 的优势在于计算速度快,占用内存更少

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/154857.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【服务器数据恢复】服务器卷被误删除的raid5数据恢复案例

服务器数据恢复环境&故障: 某品牌服务器,搭建raid5磁盘阵列。 用户误操作删除服务器上的卷。 经过检测发现服务器不存在物理故障,可以从raid5磁盘阵列层面进行数据恢复。 服务器数据恢复过程: 1、对故障服务器所有硬盘以只读…

Chromedriver安装教程【无需翻墙】

第一步 查看你当前Chrome浏览器的版本,如下图所示: 第二步 查看当前Chrome浏览器的版本号,如下图所示,版本 108.0.5359.125(正式版本) (64 位)中的,108就是我们的版本号。 第三…

第47讲:SQL优化之主键优化

文章目录1.主键优化方面的概念1.1.数据的组织方式1.2.主键顺序写入的过程1.3.主键乱序写入引发页分裂的现象1.4.页合并的概念2.主键的设计原则1.主键优化方面的概念 1.1.数据的组织方式 在InnoDB存储引擎中,表的数据都是根据主键顺序组织然后存放的,这…

集成开发工具IDEA导入新项目,update index时间过长

集成开发工具IDEA导入新项目,update index时间过长,一般这种场景出现在: 1.继承开发工具比较新(使用了优化的索引算法,这种算法一般是前期编译比较慢,一旦编译完,存入缓存,后期搜索就…

为何国家应该大力推行IPV9而不是IPv6.md

不得不说,中国的发展突飞猛进,你看连神舟16号都已经提升了日程。 我们见证了中国的崛起,更见证了中国的力量,集中力量办大事的决心。 当然计算机网络体系也发生了很大的改变,从之前的IPv4到20年前的IPv6的提出,再到现在的IPV9技术的商业实施。 为何IPv6提出了20多年了,普及还是…

11点还不睡会错过肝脏排毒吗?

人体脏器有排毒时间这个说法由来已久,肝经循行时间为晚上11点-1点,这让很多人害怕自己在11点还没睡就会错过肝脏排毒的时间。这个说法是真的吗?肝脏作为人体的“生物加工厂”,24小时都在工作。工作内容包括调节代谢、合成、调节免…

JSONArray.parseArray

1. 需求 最近有个需求: 要接收某个接口的 JSON 数据,而这个JSON数据有可能是一个 JSON 对象,也有可能是一个 JSON数组。 "{name,王五,age:10}""[{name:张三,age:12},{name:李四,age:11}]"现在呢,我需要根据…

指令+运算=CPU

1 组合逻辑电路(Combinational Logic Circuit) 要实现完整CPU功能,除加法器这种电路,还需实现其他功能的电路。有这样一种电路,类似加法器,给定输入,就能得到固定输出。 但仅有组合逻辑电路还…

在风速、风向传感器中,比聚碳酸酯复合材料更好的壳体是哪个?

现如今,铝合金产品在电子行业,已经成为主流产品之一,适用范围广,在各个行业都有普及,其中就包括气象领域。其中,风速、风向变送器为气象仪器,也随着时代的发展,不断更新换代&#xf…

大一计算机新生,感觉什么都学不会怎么办?

虽然今天什么都没做,但是还是辛苦我了。。。刚开始难是正常现象,可以先梳理一下 计算基础基础很重要,实践为上 计算机组成与原理、数据结构、计算机网络、操作系统、编程语言 书看得越多,其实你越能找到自己的方向,一…

“数实融合” 新时代,解读数据治理的新风向

导语 | 数据作为国际数字主权竞争的核心资源,是国家明确增列的新型生产要素。数据质量的高低、数据价值的挖掘,是影响企业发展的关键要素之一。今天我们邀请到了中国信息通信研究院 大数据与区块链部副主任、腾讯云 TVP 姜春宇老师,带领我们解…

C 中的变量作用域 – 局部和全局作用域解释

在编程中,您经常需要处理变量的范围。变量的作用域决定了是否可以在特定代码块内访问和修改它。 在本教程中,你将了解 C 编程语言中的变量作用域。您将看到一些代码示例,以帮助您了解局部变量和全局变量之间的差异。 目录 变量的作用域是什…

react源码解析3.react源码架构

这一章的目的是让我们认识一下react源码架构和各个模块。 在真正的代码学习之前,我们需要在大脑中有一个react源码的地图,知道react渲染的大致流程和框架,这样才能从上帝视角看react是怎么更新的,来吧少年。 react的核心可以用u…

头条权重如何在线查询,头条权重为0怎么办

每个用心用自媒体的创作者们,都听说过权重一说,权重高,也就意味着你的这个账号属于优质账号,推荐量会相应增加,还有一些自媒体会有创作者账号的白名单,优质账号会放在白名单里。 头条权重如何在线查询&…

适用于校园学生公寓的联网智能门锁

常言道:365行,行行出状元。每一个行业都有其特色,每一个行业都离不开一个共同的话题——安全。以联网智能门锁为例,早期的普通智能门锁主要应用于家庭、酒店等场景,能够满足几口之间、小规模流动人员场景使用需求。随着…

yolov8训练自己的数据集

太卷了!!!! 太卷了!!!!太卷了!!!!!太卷了!!!!!太卷了&#xff…

【Nginx】Nginx简介

1. 什么是nginx2. 正向代理与反向代理 2.1 概念2.2 区别 正向代理:客户端 <一> 代理 一>服务端反向代理:客户端 一>代理 <一> 服务端 3. 负载均衡4. 动静分离 1. 什么是nginx Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少…

2022年度【产业数字化金铲奖】重磅来袭!

出品|产业家 第二届金铲奖来了&#xff01; 过去的一年时间里&#xff0c;产业家清晰地看到&#xff0c;数实融合的潮水更加汹涌澎湃且势不可挡&#xff0c;越来越多的企业开始寻求数字化转型&#xff0c;它们来自金融、工业、农业、医疗、能源等等。 产业数字化&#xff0…

ARM汇编 : 汇编指令,伪指令,汇编程序格式

ARM汇编指令ARM指令集特点ARM工作模式ARM寄存器ARM32ARM64ARM64汇编指令内存存储访问指令LDR /STR 指令LDP/STP指令&#xff08;LDR 的变种指令&#xff0c;能够同时操做两个寄存器&#xff09;LDRB /SDRB 指令(只操作一个字节)LDRH /STRH 指令(只操作两个字节)LDUR/STUR指令 (…

Flink之转换算子和一些计算案例(Transformation)

Flink之转换算子 &#xff08;Transformation&#xff09; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lcaNaXGY645b2f5adabd496ebbee9edfedad6437.png)null)] 数据源读入数据之后&#xff0c;我们就可以使用各种转换算子&#xff0c;将一个或多…