多任务之间的任务亲密度MTI-Net

论文《MTI-Net: Multi-Scale Task Interaction Networks for Multi-Task Learning》提出了任务亲密度的概念。MIT-Net 核心立足点是:和通常大家认为的不同,两个任务在某一个尺度上关系很密切(可以互相帮助),并不代表它们在别的尺度上也同样密切;反过来也成立。

一、任务亲密度

任务亲密度,tast affinity 是指任务如果使用同类型的特征,则任务亲密度高,如何不同任务使用完全不同的特征,则任务亲密度低。

例如:对于如下类型的图片,图片内容是一辆车停在路边

任务A分割: 找到car/ road/ sky

任务B轮廓: 找到物体边界

  • 在高分辨率尺度(浅层特征),类似FPN的P2/P3特征,可以看到轮胎边缘、车窗边界、车身轮廓,把任务B比较关系,哪里亮度变化大,哪里就有边界;任务A也同样需要物体边界,否则车和背景会混在一起,所以这个时候两个任务高度一致,所以task affinity 比较高,共享feature 很有帮助;
  • 在低分辨率尺度(高层特征),类似FPN的P4/P5,例如原图是512x512,变成了16x16,很多细节都没有了,车辆边缘早就模糊成一团,任务A分割关系的是,这个区域像不像car,那块区域想不想road,所以需要global semantics 和 scene contex 特征;
  • 这里延伸理解下,global semantics和scene contex特征,global semantics是模型理解整张图的大概语义,例如看到一张图:马路、汽车、天空、建筑,形成高层理解:这是街景。所以global semantics需要类别信息,例如car, person, road, dog,场景类型:indoor, outdoor, street, kitchen, railawy, 整体结构,所以这些信息一般出现在深层feature,例如P5,因为感受野大;
  • 再说下scene contex特征,场景上下文,不是问:图里是什么,而是问:这个东西通常出现在什么环境里,比如看到一个模糊小块,红色矩形,很难判断,但周围有马路,车辆,路口,于是模型推断是traffic sign,这就是scene contex,利用的是co-occurrence prior共现规律,例如人通常在哪里,船通常在哪里,天空通常在图像的哪里,所以这个特征也是在高层。

二、之前多任务结构的问题

  • 之前比较经典的多任务结构,输入,共享编码,然后每个任务每个头,有几个任务,就有几个头,这种结构,默认,每个任务在所有层都适合共享,例如P2到P5都共享,共享程度100%。
  • 还有一种结构,是在固定某个层分叉,例如在P4层分叉,然后开始每个任务每个头;
  • UberNet的问题是,虽然这个结构每个任务都有自己的decoder,但是每个任务都共享C1到C5,这种共享就是任务的冲突点,C5是高层语义的主要冲突点,因为C5通常编码目标语义,场景理解和比较大的感受野,但是不同任务对高层语义要求不同,这就容易冲突。
  • C5是高层语义瓶颈,分割希望C5保留空间信息,分类希望C5压缩空间信息,边缘检测希望C5突出边界信息,所以C5会出现多个任务的冲突

三、量化像素亲密度

一中说是理论上的不一致,MIT-NET论文中量化了这种像素亲密度

  • 每个任务在标签空间计算局部像素亲密度,例如选择核3x3大小,在标签空间,比较中心点像素i和每个path内像素j的标签是否一直,如果一直,为,不一致,为0;核在整张图片上滑动,可以得到整张图片中,像素对pair(i,j)的亲密值;
  • 改 dilation,扩大 receptive field,再重新统计,3x3核大小不变,开始dilation=1,2,3,4.。。。;
  • 跨任务比较同一个 pixel pair 的 affinity 是否一致,对于同一个 pixel pair (i,j),看不同任务是否给出同样判断,例如A_seg(i,j)=1,A_depth(i,j)=1,两个任务在pair(i,j)上match。

四、进一步思考

因为最近也在做多任务,但是我的这个多任务和MIT-net中的不太一样,MIT-NET中的多任务是分割、深度估计、边缘识别,这三种任务都是像素级别的,所以这三个任务都关系的是dense prediction ,就是每个像素都要输出结果,语义分割(semantic segmentation):每个像素预测类别,深度估计(depth estimation):每个像素预测距离,边缘检测(edge detection):每个像素预测是不是边缘。但是我的多任务,一个任务A是车轮检测,这个任务B需要位置和局部纹理,一个任务是是否有车,这任务需要全局语义,所以三种的像素亲密度的计算,不适合我这个多任务的评估。

我的任务A和任务B是天然相关的。

相关推荐
码农幻想梦2 小时前
深度学习与神经网络(二)
人工智能·深度学习·神经网络
空奈qwq5 小时前
ANN 全连接神经网络入门指南:从神经元到深度学习的第一步
人工智能·python·深度学习·神经网络·算法·机器学习
千里码aicood6 小时前
基于CNN的陕西降雨量气象分析
人工智能·神经网络·cnn
richard_yuu7 小时前
Hopfield 网络:联想记忆的「鼻祖」,为什么它能「回忆」?
深度学习·神经网络·yolo·机器学习
程序猿编码8 小时前
不用 PyTorch!纯 C 实现 N 维张量 + 反向传播,完成手写数字识别训练
c语言·人工智能·pytorch·神经网络·卷积神经网络·大模型推理
kali-Myon11 小时前
定向 FGSM 攻击:让神经网络《指猫为狗》
图像处理·python·神经网络·安全·机器学习·fgsm
魔猴疯猿13 小时前
智能体三大范式详解
人工智能·深度学习·神经网络·自然语言处理
海海不掉头发1 天前
阶段五_实验34-38_学习总结
深度学习·神经网络·学习·机器学习
XLYcmy1 天前
基于图神经网络的物联网固件漏洞静态挖掘技术方案 上
神经网络·物联网·网络安全·二进制·elf·漏洞检测·固件
XLYcmy2 天前
基于图神经网络的物联网固件漏洞静态挖掘技术方案 下
神经网络·物联网·二进制·poc·漏洞检测·静态检测·acfg