【CVPR2019 oral】Structured Knowledge Distillation for Semantic Segmentation

【CVPR2019 oral】Structured Knowledge Distillation for Semantic Segmentation

KD

知识蒸馏是什么?可以参考https://zhuanlan.zhihu.com/p/90049906,知识蒸馏是一种将知识从繁琐的模型转移到紧凑模型从而提高紧凑网络性能的方法。 它将繁琐的模型产生的类概率用作训练紧凑模型或传递中间特征图的软目标,从而应用于图像分类。

Intro

语义分割模型:

  • FCN
  • DeConvNet
  • U-Net
  • DeepLab : atrous spatial pyramid pooling(ASPP)
  • PSPNet : dilated convolutions, pyramid pooling modules
  • OCNet
  • RefineNet
  • DenseASPP

轻量型语义分割模型:

  • ENet
  • ESPNet
  • ERFNet
  • ICNet

出发点:知识蒸馏在分类任务中很成功,而语义分割是对每个像素的分类,所以结合一下。将原始繁琐的网络称为teacher,将生成的紧凑型的网络称为student,将每一个像素的类别可能性从teacher转移到student。

具体做法

  1. 提出结构化知识蒸馏
  2. 通过成对蒸馏整体蒸馏来传输结构信息

成对蒸馏: 受pair-wise马尔可夫随机场启发,目的是为了对齐teacher和student生成的像素之间的相似性。

整体蒸馏:目的是为了保证teacher和student生成的分割图之间的高阶一致性(??)。并采用GAN的训练方式,使两者生成的分割图不易被区分。

GAN:生成对抗网络(GAN)已在文本生成和图像合成中得到广泛研究。 conditional version已成功应用于图像到图像的翻译,包括样式转换,图像修复,图像着色和文本到图像。用GAN来做语义分割的话,目的也是为了让生成器的结果和ground truth没法被判别器区分出来,而生成器的结果是连续的,是0到1之间的值,而ground truth的值是离散的,这限制了判别器的发挥。

Approach

Structured Knowledge Distillation

如下图所示,(a)代表的是Pair-wise distillation,(b)代表的是Pixel-wise distillation,© 代表的是Holistic distillation。在训练阶段,将teacher网络固定,优化student网络和判别器网络。
在这里插入图片描述

  • Pixel-wise distillation
    在这里插入图片描述
    q i s q_i^s 代表student网络生成的分数图第i个像素的类别概率, q i t q_i^t 代表teacher网络第i个像素的类别概率。

  • Pair-wise distillation
    在这里插入图片描述
    在这里插入图片描述
    a i j s a_{ij}^s 代表的是student网络生成的特征图第i个像素和第j个像素的相似度, a i j t a_{ij}^t 代表的是teacher网络生成的特征图第i个像素和第j个像素的相似度。

  • Holistic distillation
    将student网络看作是生成器,将产生的分割图与原始的RGB图像(记为I)输入到判别器D中得到一个Fake embedding,同时将teacher网络也与I输入到判别器D中的到一个Real embedding。损失函数为Wasserstein distance,E代表期望操作,D是判别器也是一个embedding network,输入是分割图和原始图的一个拼接,有5层卷积层,后三层有自注意力模块。这样的结构可以代表真实图像与分割图的匹配程度。
    在这里插入图片描述

Optimization

最终的损失如下:
在这里插入图片描述
λ 1 = 10 \lambda_1=10 λ 2 = 0.1 \lambda_2=0.1 ,最小化目标函数的同时,最大化判别器的出错概率,使判别器不易分清真假。

训练步骤:

  1. 训练D
  2. 训练student net S
    在这里插入图片描述

实验

数据集:

  • Cityscapes:一共30类,19类用于评估,5000张高质量精标注的图片,训练集2975张,验证集500张,测试集1525张,另外还有2万张粗略标注的。
  • CamVid:367张训练集,233 测试集,11个类别。
  • ADE20K:ImageNet scene parsing challenge 2016 所用。150个类别,按照20K/2K/3K划分。

在这里插入图片描述

发布了86 篇原创文章 · 获赞 10 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_36530992/article/details/105139096
今日推荐