Page 489 - 《软件学报》2025年第10期
P. 489
4886 软件学报 2025 年第 36 卷第 10 期
化网络的宽度与标准网络相同. 对于所有基线实验, 我们将权重衰减设为 5E–5. 对于 CIFAR-10 和 CIFAR-100, 选
[3]
[3]
[2]
择 ResNet-20 作为基准网络结构. 而 ResNet-18 和 VGG16 网络结构用于测试 ImageNet 的性能. 在目标检测任
务上, 我们采用以 VGG16 为骨干网络的 SSD [42] 检测模型作为基础模型.
4.3 CIFAR-10 实验
(1) 逐层二值特征宽度求解方法的有效性
我们在 CIFAR-10 上使用 VGG-small 结构, 逐层优化每层卷积特征, 结果如表 2 所示. SGD 用于求解 P 和 M.
为了充分挖掘表征能力, 我们初始设置 m 为 n 的 8 倍. 第 3 行显示了优化后的通道数. 在较低的层中, 需要更多的
特征, 而在较深的层中需要更少的特征. 然后对优化后的二值网络进行再训练, 得到 92.44% 精度. 这表明了我们的
逐层二值特征宽度求解方法的有效性, 但是其求解过程较为复杂, 后续我们使用端到端学习的加宽和收缩机制进
行网络优化.
表 2 CIFAR-10 数据集上逐层二值特征宽度求解方法的结果
方法 第2层 第3层 第4层 第5层 第6层 准确率 (%)
全精度网络 128 256 256 512 512 93.94
二值化网络 (逐层) 410 332 614 420 25 92.44
(2) 不同宽度的结果
我们在 1 比特和 4 比特量化网络上进行了实验. 在表 3 中, 基线网络 (n=32) 的 top-1 准确率为 92.19%. 对于
1 比特二值网络, 准确率随着网络宽度的增加而提高. 当宽度为 4 时, 二值网络的准确率超过基线. 对于 4 比特量
化网络, 当宽度为 2 时, 准确率超过基线. 结果表明, 当量化网络的比特数较少时, 需要更多的特征来达到原始网络
一样的准确率.
表 3 CIFAR-10 数据集上加宽不同宽度的结果
比特数 宽度 参数量 (M) 准确率 (%)
32 1 0.27 92.19
1 1 0.27 84.14
1 2 1.07 90.34
1 3 2.41 91.98
1 4 4.28 92.98
1 8 17.12 94.22
4 1 0.27 90.23
4 2 1.07 93.01
4 4 4.28 94.39
(3) 加宽和收缩机制的结果
虽然加宽可以让量化网络达到原始网络的准确率, 不过我们希望使用尽可能少的量化特征来获得更高的精
度. 我们提出的加宽和收缩机制可以获得小而精确的量化网络. 图 3 为 CIFAR-10 数据集上, ResNet-20 不同正则
λ 收缩后每层的通道数结果. 在本实验中, 我们使用二值化网络, 并设置网络宽度为 4, 并将通道去除的阈
化系数
值设置为 0.01. 从表 4 和图 3 可以看出, 随着正则化系数 λ 的增大, 被去除的通道越多, 准确率就越低. 对于每个残
差块, 有 2 个卷积层和 1 个残差连接. 第 1 个卷积层能够去除更多的通道, 原因是残差连接防止了过多的信息被丢弃.
由于正则化系数为 0.000 65 的结果与加宽 2 倍的量化网络具有相同数量的参数, 我们尝试用知识蒸馏的方法
来提高其准确性. 教师模型分别选择全精度网络 (92.19% 的准确率) 和宽度为 8 的二值网络 (94.22% 的准确率).
我们在全连接层后使用 KD 知识蒸馏 [12] . 结果如表 5 所示, 其中 τ 为温度系数, µ 为知识蒸馏与交叉熵的平衡系数.
可以看出宽度为 8 的二值网络作为教师的结果和全精度网络作为教师相比准确率更高. 通过知识蒸馏, 将收缩后
的二值网络精度提高 1%–91.39%, 接近全精度的 92.19%. 因此, 通过使用 2 倍的参数数量, 使用我们方法的二值
化 ResNet-20 的性能可以非常接近全精度 ResNet-20.

