Advertisement

【CVPR 2020】蒸馏篇(四):Online Knowledge Distillation via Collaborative Learning

阅读量:

CVPR 2020

CVPR 2020

CVPR 2020

CVPR 2020

  • 论文地址:

  • 代码地址:

  • 主要问题:

  • 主要思路:

  • 具体实现:

    • 基本符号:
    • KDCL:
  • 实验结果:

论文地址:

This paper introduces a novel online knowledge distillation framework based on collaborative learning, which demonstrates strong performance in both image classification and object detection tasks. Experimental results indicate that, compared to existing methods, the proposed approach achieves a significant improvement in accuracy, with an average enhancement of approximately 15% to 25% on the test set.

代码地址:

https://github.com/shaoeric/Online-Knowledge-Distillation-via-Collaborative-Learning

主要问题:

深度相互学习(DML)中学生模型的产出可能呈现多样化的特征或出现矛盾的关系,在各子模型之间性能存在较大差异的情况下,则可能会对该方法产生不利影响

该算法能够在建立教师的同时进行多分支网络的训练;然而模型不得不共享低级层参数;从而限制了额外的知识获取与性能提升;此外门控模块无法确保高质量的软目标输出

在这里插入图片描述

主要思路:

本文对一种新型在线知识蒸馏方法进行了详细阐述。这种基于协同学习的方法被称为"在线知识蒸馏技术"。它能够通过系统性的soft target supervision机制为每个学生提供额外的学习资源。其中该系统的soft target supervision模块旨在帮助表现水平较低的学生通过提升泛化能力实现更快且更稳定的收敛。

具体实现:

基本符号:

基本的知识蒸馏损失可以写作:

L_{K D}=\frac{1}{n} \sum_{i=1}^{n} T^{2} K L\left(\mathbf{p}_{i}, \mathbf{q}_{i}\right)

其中 \mathbf{p},\mathbf{q} 分别是教师模型和学生模型预测的概率分布,例如:

\mathbf{p}=\operatorname{softmax}\left(\mathbf{z}_{t} / T\right)

改写说明

L=\sum_{i=1}^{m} L_{C E}^{i}+\lambda L_{K D}^{i}

一种高质量的教师模型对于优化学生的各个方面至关重要,因为它能够确保教学活动的有效实施.然而,如果教师未能有效地实施噪声监督以促进学习目标的一致性,这可能导致软目标与真实目标之间产生矛盾.

KDCL:

该框架本质上是由多个独立的子网络整合而成的一个超级网络,并用不同的随机种子分别提升各子网输入的原始图像以生成软目标来指导所有网络

在这里插入图片描述

教师模型的输出基于模型集成来进行表示。为了简化起见,我们可以假设第 k 个教师网络的输出定义为 \mathbf{z}_k, 则可得出其概率分布预测即可表示为:

\mathbf{z}_{t}=h\left(\mathbf{z}_{1}, \mathbf{z}_{2}, \ldots, \mathbf{z}_{m}\right)

我们可以考虑不同的组合函数 h

一种朴素的组合方法 h 是在所有学生中选择交叉熵损失最小的 logit:

\mathbf{z}_{t}=\mathbf{z}_{k}, k=\underset{i}{\arg \min } L_{C E}\left(\mathbf{z}_{i}, \mathbf{y}\right)

或者使用能够使交叉熵损失最小的 logit 的线性组合:

\min _{\boldsymbol{\alpha} \in \mathbb{R}^{m}} L_{\text{CE}}(\boldsymbol{\alpha}^{\top}\mathbf{Z},\,\mathbf{y}), 满足约束条件\sum_{i=1}^{m}\boldsymbol{\upalpha}_i = 1, 其中满足约束条件\forall i,\,\boldsymbol{\upalpha}_i\geqslant 0

此外作者还开发了 KDCL-MinLogit 方法以设计软目标,并基于 logit 值间的差异性来确定这一机制的概率分布。

The vector \mathbf{p} is computed as the softmax of \mathbf{z}, which is equivalent to applying the softmax function to \mathbf{z}-z^{c}. This further simplifies to \operatorname{softmax}\left(\mathbf{z}^{c}\right).

那么教师模型的 logits 就可以选择为矩阵 \mathbf{Z}^{c} 的每一行的最小元素:

z_{t, j}=\min \left\{Z_{j, i}^{c} \mid i=1,2, \ldots, m\right\}

在此基础上,作者进一步阐述了一种更具普适性的方法,在该方法中假设我们验证集D_v中包含N个实例x_i(i=1,2,...,N),对于每个输入x_i按照w集成的教师模型的泛化误差E_T(w)被定义为:

\begin{aligned} E & \text{被定义为累积量}\left(\sum_{i=1}^{m}\left(w_i f_i(\mathbf{x}) - t\right)^2 p(\mathbf{x}) d\mathbf{x}\right) \\ & \text{等于总和}_{i=1}\text{至}_{m}\text{和}_{j=1}\text{至}_{m}\text{的乘积项 }w_i w_j C_{ij} \end{aligned}

其中 p(\mathbf{x}) 是数据分布,并且有:

\begin{aligned} C_{i,j}被定义为函数f_if_j在分布p(\mathbf{x})下的协方差积分,
即:

C_{i,j}$ ≈ $\frac{1}{N}$ ∑$_{k=1}^{N}$ (f$_i$(x$_k$)−t)(f$_j$(x$_k$)−t) 其中, 右侧的表达式代表从样本集$\{\mathbf{x}_k\}_{k=1}^N$中计算得到的平均值。

通常情况下,数据集的分布特性难以预先确定(或不易解析求解)。因此,在缺乏先验知识的情况下,常用经验分布来近似描述数据特征。满足约束条件 \sum_{i=1}^{m} w_{i}=1 的最优权重 w 可以通过拉格朗日乘子法进行求解。

w_{k}=\frac{\sum_{j=1}^{m} C_{k j}^{-1}}{\sum_{i=1}^{m} \sum_{j=1}^{m} C_{i j}^{-1}}

此外,在增强模型对数据领域扰动的抗干扰能力方面,我们可以采用基于统一的数据增强策略处理的不同子网络图像,并通过随机采样方法进行有效采样操作;将这些学习到的知识点整合到现有集成模型中以提升其泛化性能。

实验结果:

在这里插入图片描述
在这里插入图片描述

全部评论 (0)

还没有任何评论哟~