AI 课程网站首页
返回知识库

从固定特征到可训练卷积网络

把特征提取纳入优化,理解端到端训练。

本篇目录
  1. 两个优化问题
  2. 多通道卷积
  3. 共享系数的梯度
  4. 单系数更新
  5. 特征学习与结构约束
  6. 参考文献

固定边缘滤波器预先规定了应关注的局部模式。对于预测任务,有用模式可能取决于数据。将滤波系数设为可训练参数,便可以让最终任务误差影响表示本身,把特征提取与预测连接到同一优化过程。

从固定特征流程到端到端卷积网络的过渡,改变的是计算流程中哪些部分参与优化。该差异可以通过训练目标明确表达:预测器可以建立在固定表示上,也可以与表示共同训练。

1. 两个优化问题

对于固定表示 ϕ\phi,预测参数对应的优化问题为:

β∗∈arg⁡min⁡β1n∑iℓ(gβ(ϕ(xi)),yi)\beta^*\in\arg\min_\beta \frac1n\sum_i\ell(g_\beta(\phi(x_i)),y_i)

若表示 ϕα\phi_\alpha 本身包含可训练参数,目标则变为:

(α∗,β∗)∈arg⁡min⁡α,β1n∑iℓ(gβ(ϕα(xi)),yi)(\alpha^*,\beta^*)\in\arg\min_{\alpha,\beta} \frac1n\sum_i\ell(g_\beta(\phi_\alpha(x_i)),y_i)

第二种形式将可调整参数集合从 β\beta 扩展为 (α,β)(\alpha,\beta)。两种流程都学习预测参数,第二种还学习表示。预训练的深度表示也可以保持固定,形成混合流程。[1]

2. 多通道卷积

设输入为 X∈RH×W×CinX\in\mathbb R^{H\times W\times C_{\rm in}},卷积核与偏置为:

K∈Rkh×kw×Cin×Cout,b∈RCoutK\in\mathbb R^{k_h\times k_w\times C_{\rm in}\times C_{\rm out}}, \qquad b\in\mathbb R^{C_{\rm out}}

在步幅为一、填充后输入记为 X~\widetilde X 时,空间位置 (i,j)(i,j)、输出通道 oo 的激活前数值为:

Zi,j,o=bo+∑u=0kh−1∑v=0kw−1∑c=0Cin−1Ku,v,c,oX~i+u,j+v,cZ_{i,j,o}=b_o+ \sum_{u=0}^{k_h-1}\sum_{v=0}^{k_w-1} \sum_{c=0}^{C_{\rm in}-1} K_{u,v,c,o}\widetilde X_{i+u,j+v,c}

对于这种普通的非分组卷积,每个输出通道都组合全部输入通道。因此,一个滤波器同时跨越局部空间邻域与输入通道轴,随后产生激活值 Ai,j,o=σ(Zi,j,o)A_{i,j,o}=\sigma(Z_{i,j,o})。[2]

若每个输出通道具有一个偏置,参数量为 khkwCinCout+Coutk_hk_wC_{\rm in}C_{\rm out}+C_{\rm out}。采用 3×33\times3 核、由三个通道映射到六个通道时,共有 162+6=168162+6=168 个参数,与这些参数被重复应用的空间位置数量无关。

3. 共享系数的梯度

定义传至激活前数值的梯度为 δi,j,o=∂L/∂Zi,j,o\delta_{i,j,o}=\partial\mathcal L/\partial Z_{i,j,o}。对在多个位置重复使用的系数应用链式法则,得到:

∂L∂Ku,v,c,o=∑i,jδi,j,oX~i+u,j+v,c,∂L∂bo=∑i,jδi,j,o\frac{\partial\mathcal L}{\partial K_{u,v,c,o}} =\sum_{i,j}\delta_{i,j,o}\widetilde X_{i+u,j+v,c}, \qquad \frac{\partial\mathcal L}{\partial b_o}=\sum_{i,j}\delta_{i,j,o}

空间求和来自权重共享。处理一个批次时,还需对样本求和;如果损失已经按样本平均,其缩放已包含在 δ\delta 中,不应再次平均。

对于 ReLU,有 δ=(∂L/∂A)⊙1[Z>0]\delta=(\partial\mathcal L/\partial A)\odot\mathbf1[Z>0],并通常在不可导的零点将反向传播乘数约定为零。随后可通过 K←K−η∇KLK\leftarrow K-\eta\nabla_K\mathcal L 或其他指定优化器更新核系数。优化目标是任务损失,而不是预先规定的 Sobel 等目标核。[3]

4. 单系数更新

标量情形 z=kxz=kx 可以单独展示更新机制。设 x=2x=2、目标 y=6y=6,损失为 ℓ=(z−y)2/2\ell=(z-y)^2/2。当 k=1k=1 时,输出为二,残差为 −4-4,并有:

∂ℓ∂k=(kx−y)x=−8\frac{\partial\ell}{\partial k}=(kx-y)x=-8

取学习率 η=0.1\eta=0.1,得到 k′=1.8k'=1.8、z′=3.6z'=3.6,损失由八降至 2.882.88。这一计算只涉及一个位置上的一个系数;对于实际共享卷积核,上述梯度公式会累加该系数影响的所有位置。

5. 特征学习与结构约束

多次可训练卷积与非线性变换共同构成表示 ϕα\phi_\alpha。训练目标决定哪些响应有用,因此学习后的通道可以组合比前一篇固定边缘响应更复杂的模式。

预训练参数 α\alpha 也可以保持固定,只更新 β\beta。这种流程仍然使用 CNN 特征。冻结表示当前优化器不修改某些参数,并不意味着这些参数在数学上对输出或损失没有影响。

端到端学习在给定结构、目标与训练配置中,同时拟合特征提取和预测。 [1]

参考文献