这篇论文主要使用位宽(Bitwidth)和小数偏移(Fractional Offset)这两个参数来表征定点数,其中总位宽又由符号(S)位数、整数(I)位数以及小数(F)位数所组成(如图1)。论文的整一个叙述过程就是教我们如何找出最优的位宽和小数偏移的过程。
图1 定点表示因为这篇文章涉及到大量数学公式,在这里编写不方便,我直接在word上写好截图过来了。
image.png 算法1
这个算法里边有两种子算法:独立量化和依赖量化。
1.独立量化是指,每次只量化一层的参数,其他参数使用浮点的,然后跟浮点模型进行精度损失计算,通过这种方式,量化对其他参数的影响被有效地忽略了,因为它们在评估推理精度损失时保持全精度。因此,在评估[图片上传失败...(image-e68008-1663570863874)] 时,不考虑其他量化参数引起的量化误差;
2.依赖量化是指,一次对所有层进行量化,然后跟浮点模型进行精度损失计算;
注意:论文并没有说明哪种方式更好,可能需要根据不同的模型进行测试。
2.算法2:OptSearchCNN
算法2 image.png上图放大看,不然很模糊
算法2流程中的第14到20行,应该是固定了F,继续减小BW来进一步减小精度损失。
网友评论