百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

TPAMI2023|港中文自适应视角的知识蒸馏框架,提高语义分割性能

ccwgpt 2024-11-20 13:07 21 浏览 0 评论

论文标题:Adaptive Perspective Distillation for Semantic Segmentation
论文链接:https://ieeexplore.ieee.org/document/9736597
作者单位:香港中文大学(Jiaya Jia,IEEE Fellow)、牛津大学

关注 @CV顶刊顶会 微信公众号,严肃且认真的计算机视觉论文前沿报道~

强大的语义分割模型需要预训练的backbone才能实现高效的性能,因此很难适应需要有效实时算法的实际应用程序。知识蒸馏技术通过让较小的模型(学生)产生与较大模型(教师)相似的像素级预测来解决这个问题。然而,分类器可以被视为模型对编码特征进行感知并产生一种特定视角,这种视角由所有训练样本共享,符合通用的特征分布。但是这种对整个分布的泛化都良好的情况可能会给一些单个样本带来较差的学习效果,共享的通用视角往往会忽略每个样本中存在的细节,从而导致知识蒸馏的退化。这可以看做是传统蒸馏学习与语义分割相结合的缺陷所在。来自香港中文大学和牛津大学的研究者们针对此问题,提出了一种自适应视角蒸馏方法(Adaptive Perspective Distillation,APD),并发表在人工智能领域顶级期刊(IEEE Transactions on Pattern Analysis and Machine Intelligence,TPAMI)上。APD为每个单独的训练样本创建自适应局部视角,可以专门从每个训练样本中提取详细的上下文信息,以从教师模型中挖掘更多的细节,从而在学生模型上达到更好的知识蒸馏结果。APD对教师和学生模型都没有结构约束,因此可以很好地泛化到不同的语义分割模型中。作者在Cityscapes、ADE20K和PASCAL-Context等标准基线上进行的大量实验证明了APD的有效性。此外,APD还可以在目标检测和实例分割等方面为模型带来性能增益

1.引言

在本文中,作者将深度网络对图像进行感知编码和解码的过程比作为光的透视过程。光线从场景出发穿过平面到达观察者眼睛被定为透视过程,深度网络进行语义分割时也可以类比于此,我们可以将最终的分类器视为模型的一种透视形式。换句话说,分割模型的推理可以被视为透视(分类器)投射编码的高级语义信息以产生观察者的观察(预测)的过程,如下图所示。与学生模型相比,教师通常有更好的视角,因为大特征编码器可以产生高质量的特征来学习好的视角。

在蒸馏学习阶段,教师模型的特征编码器和视角是固定的。鉴于教师模型已经在整个训练集上接受了充分的训练,因此其固定的“普适视角”可以泛化到所有测试样本来获得高质量的评价结果,然而,高泛化能力可能会导致较差的模型规范性,因为即使是相同的对象也可能在不同的训练样本中以不同的共现信息出现,如果仅使用固定通用视角对于特殊的样本的学习能力较差。因此本文作者提出了一种基于语义分割视角视角的新知识蒸馏方法APD。APD使模型能够为每个输入图像形成自适应视角,即不同的图像根据其上下文内容由不同的视角处理。由于教师模型可以代表更好的普遍视角,作者也调整了教师和学生的适应性视角,这样使学生可以在教师的指导下形成更好的适应性视角,达到快速蒸馏的目的。

2.本文方法

对于语义分割模型,可以分解为两个部分:(1)特征编码器 和(2)分类器 。在蒸馏过程中, 都固定在教师模型中,教师模型的分类器 从 中提取特征 来作为蒸馏损失的soft label。上文提到 对整个数据集都适用,其为蒸馏学习提供了一个固定的通用视角。

上图为APD方法的整体框架,作者通过形成个体自适应视角 来仔细研究每个训练样本,这些视角由从编码特征中获得的语义原型(即个体语义类的代表向量)组成,它作为另一个辅助任务,为提炼知识提供局部视角。此外,辅助视角 由自适应视角 和编码特征 生成,用于将知识从教师转移到学生。学生特征编码器 通过模仿 以产生类似的自适应视角 ,以及从 获得的辅助视角结果 。

2.1 自适应视角生成

为了对训练样本进行自适应视角生成,作者首先设置两个映射层,由多层感知机构成,可以先对教师和学生网络提取的特征进行转换,形式化表示如下:

随后通过每幅图像的二进制类别标签 来计算每个类别的原型向量 和 ,计算公式如下:

作者将这些原型特征的集合命名为“自适应视角”,因为它们被放在一起可以构成一个分类器,其语义信息在不同的图像上有所不同,即“自适应”到不同的上下文。借助真实标签提供的语义信息,自适应视角可以更好地描述编码的语义类内和类间分布。

2.2 教师模型适应性视角的损失函数

由于教师模型的映射层 的参数是随机初始化的,因此在没有优化的情况下其会产生崩溃现象。为了确保 可以在 处提供具有代表性的视角,从而揭示每个图像的更多上下文细节,显式正则化是必不可少的一项步骤。因此,教师模型适应性视角的损失函数可以定义为:

2.3 教师模型适应性视角的损失函数

由于不一致的视角可能会导致不同的观察(预测)结果。因此,学生的特征编码器 和映射层 首先需要通过产生相似的视角来模仿教师模型。为了实现这一目标,作者使用 通过余弦相似测度来完成教师和学生适应性视角的调整。

此外,从学生的角度进行的预测结果也需要模仿教师模型的预测结果,这可以通过最小化他们的观察 和 之间的KLD来实现,如:

总体的损失函数由上述几种损失函数联合得到,共同优化APD框架。此外,作者还明确列出了APD的优化过程,如下图所示。

3.实验结果

作者在Cityscapes、ADE20K、COCO和PASCAL-Context四个数据及上进行了实验,下表展示了以PSPNet[1]作为backbone模型,APD与其他SOTA知识蒸馏方法的性能对比,可以看到APD在三个数据集上均取得了SOTA性能。

下图展示了在PSPNet和DeepLab-V3[2]上的跨模型蒸馏性能对比,作者还在其中尝试了多种不同的backbone网络,例如RN表示ResNet,MN2表示MobileNetV2,EN表示EfficientNet。

下图展示了APD框架在COCO数据集上目标检测和实例分割的可视化效果对比。

4.总结

本文提出的自适应视角蒸馏(APD)方法整体简单直观。与以往通过固定视角(即分类器)获得的像素级预测来提取知识的蒸馏方法不同,APD旨在为单个样本创建自适应视角,揭示编码特征的更多细节,以帮助学生模型获得更好的性能。APD对基本模型没有结构约束,因此可以很容易地应用于常见的语义分割框架。APD也可以作为一项对现有知识蒸馏方法在语义分割方面的补充工作。与最先进的语义分割知识蒸馏方法的广泛比较证明了APD的有效性和泛化能力。

参考

[1] H. Zhao, J. Shi, X. Qi, X. Wang, and J. Jia, “Pyramid scene parsing network,” in Proc. Conf. Comput. Vis. Pattern Recognit., 2017, pp. 2881–2890.

[2] L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L. Yuille, “DeepLab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected CRFs,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 40, no. 4, pp. 834–848, Apr. 2018.

相关推荐

腾讯开源框架TarsCpp-rpc设计分析-server(二)

2Tars协议2.1是什么借用官方说法:TARS编码协议是一种数据编解码规则,它将整形、枚举值、字符串、序列、字典、自定义结构体等数据类型按照一定的规则编码到二进制数据流中。对端接收到二进制数据流...

微服务调用为什么用RPC框架,http不更简单吗?

简单点,HTTP是协议,RPC是概念!实现RPC可以基于HTTP协议(Feign),TCP协议(Netty),RMI协议(Soap),WebService(XML—RPC)框架。传输过程中,也因为序列...

go-zero:开箱即用的微服务框架(gin框架微服务)

go-zero是一个集成了各种工程实践的Web和rpc框架,它的弹性设计保障了大并发服务端的稳定性,并且已经经过了充分的实战检验。go-zero在设计时遵循了“工具大于约定和文档”的理...

SOFARPC :高性能、高扩展性、生产级的 Java RPC 框架

#暑期创作大赛#SOFARPC是一个高性能、高扩展性、生产级的JavaRPC框架。在蚂蚁金服,SOFARPC已经使用了十多年,已经发展了五代。SOFARPC致力于简化应用程序之间的RPC...

自研分布式高性能RPC框架及服务注册中心ApiRegistry实践笔记

痛点1.bsf底层依赖springcloud,影响bsf更新springboot新版本和整体最新技术版本升级。2.eureka已经闭源,且框架设计较重,同时引入eureka会自行引入较多sprin...

Rust语言从入门到精通系列 - Tonic RPC框架入门实战

Rust语言是一种系统级语言,被誉为“没有丧失性能的安全语言”。Rust语言的优势在于其内存安全机制,在编译时就能保证程序的内存安全。Tonic模块是Rust语言的一个RPC(RemoteProce...

腾讯开源框架TarsCpp-rpc设计分析-client(一)

前言Tars是腾讯开源的微服务平台,包含了一个高性能的rpc框架和服务治理平台,TarsCpp是其C++版本。对于以C++为主要开发语言,同时还想深入了解rpc和微服务框架具体实现的同学来说,Tars...

设计了一款TPS百万级别的分布式、高性能、可扩展的RPC框架

为啥要开发RPC框架事情是这样的,在开发这个RPC框架之前,我花费了不少时间算是对Dubbo框架彻底研究透彻了。冰河在撸透了Dubbo2.x和Dubbo3.x的源码之后,本来想给大家写一个Dubbo源...

rpc框架使用教程,超级稳定好用,大厂都在使用

rpc是什么远程调用协议如何使用导入依赖<dependency><groupId>org.apache.dubbo</groupId><art...

Layui 框架实战:动态加载 Select 与二级联动全解析

在现代Web开发中,下拉选择框(Select)是用户输入数据时不可或缺的组件。很多时候,我们需要的选项并非静态写死在HTML中,而是需要根据业务逻辑从后端动态获取。更有甚者,我们可能需要实现“...

15个能为你节省数百小时的前端设计神器,从UI库到文档生成

无论你是刚开始开发之旅的新手,还是疲于应付生产期限的资深程序员,有一个真理始终不变:正确的工具能彻底改变你的工作流程。多年来,我测试了数百个开发工具——有些实用,大多数平庸。但有一批免费网站经受住了时...

Layui与WinForm通用权限管理系统全解析

嘿,小伙伴们,今天咱们来聊聊Layui和WinForm这两个框架在通用权限管理系统中的应用。别担心,我会尽量用简单易懂的语言来讲解,保证让大家都能跟上节奏!首先说说Layui。Layui是一个前端UI...

纯Python构建精美UI!MonsterUI让前端开发效率飙升

“无需CSS知识,告别类名记忆,11行代码实现专业级卡片组件”在传统Web开发中,构建美观界面需要同时掌握HTML、CSS、JavaScript三剑客,开发者不得不在多种语言间频繁切换。即使使用Boo...

WebTUI:将终端用户界面(TUI)之美带到浏览器的CSS库

在当今Web技术飞速发展的时代,界面设计愈发复杂多样。然而,随着现代化工具的广泛使用,一些开发者开始回归极简风格,追求一种简洁而富有韵味的设计。WebTUI正是这样一款CSS库,它将经典的终...

人教版二年级下册生字描红汇总(拼音+笔顺+描红),可打印!

可定制内容,评论区留言。本次整理的为人教版二年级下册所有生字,共计300个;写字是小学阶段一项重要的基本功训练,把汉字写得正确、工整、美观,可以提高运用汉字这一交际工具的准确性和效率。对小学生进行写字...

取消回复欢迎 发表评论: