Page 487 - 《软件学报》2025年第10期
P. 487
4884 软件学报 2025 年第 36 卷第 10 期
其中, D(·) 计算训练集中所有样本特征之间的欧氏距离, γ 是用于平衡上述函数中的两项的超参数. 由于训练集中
的样本数量通常非常大 (如 ImageNet 中有百万量级的图片 [37] ), 所以 D(Y) 是一个非常大的矩阵 ( 10 ×10 ), 这在实
6
6
际操作中难以优化. 不过, 如果 P 是一个方阵且正交, 也就是 P P = I, 任意两个样本特征之间的欧氏距离可以完全
⊤
保持. 简单证明如下, 给定使用原始网络生成的任意两个样本 i 和 j 对应的特征 Y i 和 , 我们有:
Y j
⊤ 2
⊤
⊤
⊤
⊤
⊤
⊤
⊤
||Y i P −Y j P || = Tr(Y i P PY )−2Tr(Y i P PY )+Tr(Y j P PY )
F i j j
⊤
⊤
⊤
= Tr(Y i Y )−2Tr(Y i Y )+Tr(Y j Y )
j
j
i
2
= ||Y i −Y j || (4)
F
进而我们可以把公式 (3) 转化为:
1 γ
2
⊤
⊤
min P,B ||YP − B|| + ||P P− I|| 2 F (5)
F
2 2
这样, 我们可以利用公式 (5) 作为目标函数对给定的全精度网络进行二值化, 以保持其性能.
为了进一步探索二值化网络最高效的结构, 我们想找到特征图的二值化嵌入的下界, 这意味着二值化表示 B
m
的列稀疏性. 因此我们引入掩码 M ∈ {0,1} , 用来选择 B 中的特征. M ◦ B 表示 M 中的元素与 B 中的列的乘法. 我
们在目标函数中添加掩码 M L1 范数来求解其下界, 即:
的
1 γ
⊤ 2 ⊤ 2 (6)
min P,B,M ||YP − M ◦ B|| + ||P P− I|| +β||M|| 1
F
F
2 2
我们使用交替迭代优化算法 [38] 来求解目标函数 (6), 通过循环迭代如下 3 步即可得到目标函数的解.
1) 求解 B. 由于二值化特征 B 中的元素是独立的, 可以简单地由如下等式得到:
B = Sign(YP ) (7)
⊤
其中, Sign(·) 是符号函数.
2) 求解 M. 对于固定的二值化变量 B 和投影矩阵 P, M 的优化目标可表示为:
1
⊤ 2 (8)
L(M) = ||YP − M ◦ B|| +α||M|| 1
F
2
其目的是消除一些重构误差较大的列.
3) 求解 P. 根据解出的掩码 M 和二值化变量 B, 优化投影矩阵 P 的损失函数可写成:
1 γ
2
⊤
⊤
L(P) = ||YP − M ◦ B|| + ||P P− I|| 2 (9)
2 F 2 F
我们在 VGG-small 网络结构的实验表明, 上述算法能够得到二值神经网络每层所需通道数的下限, 并保持住
原全精度网络的准确率. 虽然这种求解方法提供了一种寻找二值化特征数量的方法, 但其很难优化, 因为我们必须
逐层优化所有卷积特征. 所以我们希望找到一种更简单而有效的方法.
3.2 端到端学习的网络宽度优化方法
根据上述分析, 我们希望使用尽可能少的量化特征来获得高精度的模型. 因此, 我们在加宽的量化网络基础上
接着使用收缩方法来搜索有效的结构. 在第 2.2 节, 我们实验分析了二值特征的表示能力并不强, 最好的解决方案
是加宽二值网络, 那么就出现了一个问题, 我们应该把网络加宽多少遍呢?
网络剪枝被广泛用于在低资源环境下降低深度神经网络模型的推理代价. 剪枝后的结构具有低计算量和高精
度的特点. 此外, 剪枝方法可以看作是一种架构搜索范式, 用来寻找最优、最高效的架构. 为了利用网络剪枝的优
势, 我们选择加宽 4 倍的量化网络为基础, 以获得更好的精度. 然后利用网络瘦身 [26] 方法对网络进行剪枝, 得到高
效的模型. 具体地, 我们对批归一化层中的比例因子 γ 施加了稀疏性惩罚. 剪枝过程中的训练目标为:
(10)
L pruning = L 0 +λ∥γ∥ 1
其中, L 0 为特定任务的原始损失函数, 例如分类任务的交叉熵损失和回归任务的均方误差 (MSE) 损失, λ 为稀疏
正则化超参数. 在训练过程中, 不重要的通道被自动识别并去除, 产生具有相当精度的紧凑模型. 然后对压缩模型

