• 售前

  • 售后

热门帖子
入门百科

对深度网络模子量化工作的总结

[复制链接]
123457399 显示全部楼层 发表于 2022-1-16 15:21:58 |阅读模式 打印 上一主题 下一主题
择要
由于工作的关系,搞了半年模子量化工作,本日想对这半年来的量化工作做一个小小的总结。
在这里我就不叙述量化的原理和盘算方式,网上一搜一大把。(主推商汤的量化哦~~)
这里重要是我对量化工作做些总结。(和各人分享一下)

模子为什么要量化
平常我们在举行模子forward和backward的时间,大多接纳的是可以或许支持32bit盘算的装备。
在举行模子生存的时间,我们通常得到的是参数,其范围也是32bit的浮点范围
固然模子的精度很高,但是模子通常很大,参数盘算的速率也会略有些慢
而且对于芯片行业,很少一部分芯片是搭载32bit盘算的(我所认知里)
现在,芯片支持8bit和16bit的照旧较多些。
为了能让芯片更加的AI化,也就是说模子在8bit大概16bit的参数范围内也能举行正常推理,而且保持肯定的精度。
为此,量化的工作是很须要的。

量化的本质
着实量化的本质就是:
在可以或许镌汰精度丧失的情况下(可以明确为浮点数转定点数的精度丧失)
将连续取值的浮点型模子权重大概流经模子的张量数据举行定点化,近似为有限多个离散值的过程
量化重要是以更少位数的数据范例如8bit或16bit来映射32bit的数据范围
留意的是,模子的输入和输出仍然是浮点范例(这里重要是将参数举行量化后在举行反量化的过程)
从而镌汰模子尺寸,到达模子内存斲丧小,以及加速了模子的推理速率等目的。(现在我知道的商汤对模子量化这里很有研究)

对于我工作中所打仗的模子量化,其优缺点总结如下
长处

  • 模子尺寸的镌汰,对应的内存空间以及存储空间的占用量少了。(好比将32bit模子量化到8bit模子,其空间就节省了近4倍数)
  • 进步了模子在线升级的速率,固然这也归功于模子小,其传输的时间也就小了很多
  • 加速了模子的推理速率,好比访问一次32bit的参数量,可以访问4次8bit的参数量,而且整型可比浮点范例运算快的多(但是,之前到场过一次商汤的分享会,曾提到过量化不肯定可以或许使模子的推理速率增长,当时也只听了一个结论。现在我是没有遇到过)
  • 可以或许支持微型处理惩罚器,现在AI芯片支持8bit和16bit的范例较多些,这也是模子量化的一个上风
缺点
模子量化的缺点,模子的精度相比量化前的精度要低沉
我曾遇到的是对分割模子的量化,量化前的分割边沿和量化后的分割边沿会有一些差异,该怎样办理的题目
固然后期会对模子量化举行微调
但是推理的精度照旧会降落。不外同样的模子QAT的量化方式大概会比PTQ好,但是利用的复杂度也会略高些

END

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作