理论学习 特征融合

1 低层/高层特征

图像处理中,融合不同尺度的特征是提高图像效果的重要手段,在卷积中:

**低层特征:**低层特征分辨率更高,包含更多位置、细节信息,但是由于经过的卷积更少,其语义性更低,噪声更多。

**高层特征:**高层特征具有更强的语义信息,但是分辨率很低,对细节的感知能力较差。

如何将两者高效融合,是改善模型的关键。

2 早/晚融合-Concat/Add

很多工作通过融合多层来提升性能,按照融合与预测的先后顺序,分类为早融合(Early fusion)和晚融合(Late fusion)。

早融合(Early fusion): 先融合多层的特征,然后在融合后的特征上训练预测器(只在完全融合之后,才统一进行检测)。这类方法也被称为skip connection,即采用concat、add操作。这一思路的代表是Inside-Outside Net(ION)和HyperNet。 两个经典的特征融合方法:

  • Concat:系列特征融合,直接将两个特征进行连接。两个输入特征x和y的维数若为p和q,输出特征z的维数为p+q;
  • Add:并行策略,将这两个特征向量组合成复向量,对于输入特征x和y,z = x + iy,其中i是虚数单位。

晚融合(Late fusion):通过结合不同层的检测结果改进检测性能(尚未完成最终的融合之前,在部分融合的层上就开始进行检测,会有多层的检测,最终将多个检测结果进行融合)。这一类研究思路的代表有两种:

  • Feature不融合,多尺度的feture分别进行预测,然后对预测结果进行综合,如Single Shot MultiBox Detector (SSD) , Multi-scale CNN(MS-CNN)
  • Feature进行金字塔融合,融合后进行预测,如Feature Pyramid Network(FPN)等。

3 Attention特征融合

Attention机制:

学习权重分布:输入数据或特征图上的不同部分对应的专注度不同,对此Jason Zhao在知乎回答中概括得很好,大体如下:

  • 这个加权可以是保留所有分量均做加权(即soft attention);也可以是在分布中以某种采样策略选取部分分量(即hard attention),此时常用RL来做。这个加权可以作用在原图上,也就是《Recurrent Model of Visual Attention》(RAM)和《Multiple Object Recognition with Visual Attention》(DRAM);也可以作用在特征图上,如后续的好多文章(例如image caption中的《 Show, Attend and Tell: Neural Image Caption Generation with Visual Attention》)。这个加权可以作用在空间尺度上,给不同空间区域加权;也可以作用在channel尺度上,给不同通道特征加权;甚至特征图上每个元素加权。 这个加权还可以作用在不同时刻历史特征上,如Machine Translation。

任务聚焦:通过将任务分解,设计不同的网络结构(或分支)专注于不同的子任务,重新分配网络的学习能力,从而降低原始任务的难度,使网络更加容易训练。

目前,利用注意力的方法进行特征融合的方法屡见不鲜,此处重在罗列一些思路:

  • SENet:计算attention的方式,将每个通道的像素值做一个平均后,经过一系列操作,用sigmoid函数归一化。优缺:大尺度目标有效,小尺度目标效果差。
  • MS-CAM:计算attentionde方式,提出的多尺度通道注意力模块用于更好地融合语义和尺度不一致的特征;通过添加另一个注意力级别(称为迭代关注特征融合)来缓解特征图的初始集成可能带来的问题。
相关推荐
gbase_lmax1 小时前
gbase8s存储学习一 rootdbs存储结构以及寻址分析
数据库·学习
guts3502 小时前
【pytorch学习】土堆pytorch笔记1
pytorch·笔记·学习
笺上山河梦2 小时前
C++ 的 输入输出流(I/O Streams)
开发语言·c++·学习·算法
zhuyixiangyyds2 小时前
day35图像处理OpenCV
图像处理·笔记·学习
小浪学编程4 小时前
C#学习1_认识项目/程序结构
开发语言·前端·学习·c#·游戏引擎
狗屁不会还不知上进的咸鱼4 小时前
LitJson
学习
2301_797604244 小时前
学习记录:DAY16
学习
FL171713146 小时前
基于MuJoCo物理引擎的机器人学习仿真框架robosuite
学习
淮北4947 小时前
ROS机器人开发实践->机器人建模与仿真
学习·机器人·自动驾驶·信息与通信·信号处理
FAREWELL0007513 小时前
C#进阶学习(十)更加安全的委托——事件以及匿名函数与Lambda表达式和闭包的介绍
开发语言·学习·c#·事件·lambda表达式·匿名函数·闭包