Trained Ternary Quantization
本文是在TWQ(Ternary Weight Quantization)的基础上做出的改进,其流程可以简单概括为:
首先将全精度权重正则化到[-1,1]之间,然后根据一个每层相同的阈值t来进行量化(这里使用统一的t是为了缩小搜索空间,用每个通道不同的t应该能得到更好的表现,但感觉会增加过多的计算消耗)为-1,0和1,最后分别乘以Wn和Wp作为结果计算loss,再通过梯度下降更新Wn、Wp和原始梯度(这里使用了STE)。
Wp和Wn的更新方法是,将所有量化为它们的参数的梯度加和作为它们的梯度的变化:
而原始全精度参数由于再最后乘了Wn或Wp,所以要在反向传播时乘以它们:
这里的Δl的定义并不清楚,应该是和TWQ的一样:
TWQ的Δ的优化值是靠减小量化参数和全精度参数的L2距离优化的,但作者没说这一过程是自动的还是靠人工调整。作者在这里提出了两种求得Δl的方法:
用t乘以所有层权重的最大值;简单粗暴地使用一个常量。很明显前者更灵活,作者于是选取了前者。
最终在ImageNet比TWQ高了三个点,算是比较大的提升。
Trained Ternary Quantization相关推荐
- 三值网络--Trained Ternary Quantization
Trained Ternary Quantization ICLR 2017 https://github.com/TropComplique/trained-ternary-quantization ...
- 闲话模型压缩之量化(Quantization)篇
1. 前言 这些年来,深度学习在众多领域亮眼的表现使其成为了如今机器学习的主流方向,但其巨大的计算量仍为人诟病.尤其是近几年,随着端设备算力增强,业界涌现出越来越多基于深度神经网络的智能应用.为了弥补 ...
- 深度学习模型压缩与优化加速
1. 简介 深度学习(Deep Learning)因其计算复杂度或参数冗余,在一些场景和设备上限制了相应的模型部署,需要借助模型压缩.优化加速.异构计算等方法突破瓶颈. 模型压缩算法能够有效降低参数冗 ...
- 5种小型设备上深度学习推理的高效算法
[导读]文中为AI实践者和研究者们介绍了5种高效模型推断算法,希望这篇文章能够帮助大家更清楚地认识到,在我们所使用的深度学习库的背后,有多少优化正在被应用,从而在像移动电话等小型边缘设备上实现越来越多 ...
- 深度神经网络压缩与加速总结
深度神经网络压缩与加速综述 1. 深度神经网络压缩与加速的任务 2. 模型压缩与加速方法 (1) 参数剪枝 (2) 参数共享 (3) 低秩分解 (4) 紧性滤波设计 (5) 知识蒸馏 3. 深度神经网 ...
- 深度学习模型压缩与优化加速(Model Compression and Acceleration Overview)
1. 简介 深度学习(Deep Learning)因其计算复杂度或参数冗余,在一些场景和设备上限制了相应的模型部署,需要借助模型压缩.系统优化加速.异构计算等方法突破瓶颈,即分别在算法模型.计算图或算 ...
- 深度学习模型压缩与加速技术(二):参数量化
目录 总结 参数量化 参数量化定义 参数量化特点 1.二值化 二值化权重 二值化权重与激活函数 2.三值化 3.聚类量化 4.混合位宽 手工固定 自主确定 训练技巧 参考文献 深度学习模型的压缩和加速 ...
- 【嵌入式AI】CNN模型压缩(剪枝,量化)详解与tensorflow实验
1,CNN模型压缩综述 1 模型压缩的必要性及可行性 (1)必要性:首先是资源受限,其次在许多网络结构中,如VGG-16网络,参数数量1亿3千多万,占用500MB空间,需要进行309亿次浮点运算才能完 ...
- 【AI视野·今日CV 计算机视觉论文速览 第162期】Fri, 27 Sep 2019
AI视野·今日CS.CV 计算机视觉论文速览 Fri, 27 Sep 2019 Totally 55 papers ?上期速览✈更多精彩请移步主页 Interesting: TODO(rjj): de ...
- 【今日CV 计算机视觉论文速览】Wed, 20 Mar 2019
今日CS.CV计算机视觉论文速览 Wed, 20 Mar 2019 Totally 30 papers Daily Computer Vision Papers [1] Title: Corners ...
最新文章
- 打造 AI Beings,和微信合作…第七代微软小冰的成长之路
- SSM项目的数据库密码加密方案
- 动态标题_动态打印区域和打印标题
- 马明哲新年内部讲话透露新战略:全面开启3.0时代
- JVM 中的守护线程
- java swt 菜鸟教程_编程基础学习JS的入门教程
- 深入理解javascript原型和闭包(18)——补充:上下文环境和作用域的关系
- opencv python 多帧降噪算法_实战 | OpenCV实现视频防抖
- Fiddle改包场景01——拦截请求,修改请求,放行请求
- 经典问题解析五(五十五)
- 获取a标签的文本 asp.net_Python小程序2获取href的值
- vue移动端小说阅读器vue全家桶项目,已部署到服务器可访问预览
- 南京中山陵环卫工和游客当众互殴(图)
- wex5 ajax,关于Ajax请求 - WeX5开发者论坛 - 起步软件技术论坛 - Powered by Discuz!
- 10g gtx 光纤通信测试_10G光模块知识问与答
- 【论文阅读笔记】Autoencoder as Assistant Supervisor
- 【图像分类损失】PolyLoss:一个优于 Cross-entropy loss和Focal loss的分类损失
- vue如何新建一个项目(详细步骤)
- 全国青少年软件编程等级考试Python标准解读(1_6级)
- 视觉进阶笔记开源 | AI计算机视觉全栈知识总结