概述
Abstract
- 本文的目的:提高目标检测网络跨域的鲁棒性
- 通过两方面解决domain shift的问题:
(1)图像level的shift,例如图像的风格,关照强度等
(2)实例level的shift,例如目标的外观,大小等 - 解决方法:
(1)在Faster-RCNN中添加了2个DA组件,这2个组件都是基于H-divergence理论的,组件的实现方法是通过对抗学习的方式训练domain分类器。
(2)通过一致性正则化(cosistency regularization)去训练Faster-RCNN中的RPN网络,在增强不同级别(level)的分类器。
1.Introduction
实际应用中的目标检测,使用情况下的数据,无论是在拍摄角度,目标的外观,背景,光照强图还是图像质量都和训练时使用的数据有很大的偏差
文中解决cross-domain的方法采用非监督的方式:在源域进行监督训练,在目标目标进行无监督训练(不需要打标签)
分别对image-level和instance-level做了2个组件(domain shift component),每个组件都是一个domain分类器,并应用对抗学习的方式来学习不根据域发生变化的(domain-invariant)的特征图
本文的贡献如下:
- 从概率的角度提供了了cross-domain目标检测中的domain-shift的理论分析
- 分别在image和instance层次提出了一个DA组件,来缓解两个domain之间的差异性
- 进一步提出了一致性正则化(cosistency resularization),使RPN网络不受domain变化影响(domain-invariant)
- 将提出的组件合并到了Faster-RCNN中,并实端到端的训练
3.Preliminaries
3.1Faster-RCNN
网络包含3个重要的组件:底层共享的卷积层(shared bottom convolutional layers)、RPN以及ROI
步骤:
(1)首先通过共享卷积层得到一个feature map
(2)RPN通过feature map产生候选框
(3)之后通过ROI pooling得到的特征向量经过ROI分类器得到类别标签
训练损失包含RPN的损失和ROI分类器的损失:
L
d
e
t
=
L
r
p
n
+
L
r
o
i
L_{det}=L_{rpn}+L_{roi}
Ldet=Lrpn+Lroi
不管是RPN损失还是ROI损失都包含两个部分:一部分是分类器的分类准确度,另一部分是狂的回归损失
3.2 Distribution Alignment with H-divergence
H散度(H-divergence)用来测量两组分布不同的样本之间的距离
如果用
x
x
x表示一个特征向量,则原域用
x
s
x_s
xs表示,目标域用
x
t
x_t
xt表示,定义一个domain分类器,使得
x
s
x_s
xs样本输出的结果为0,
x
t
x_t
xt的样本输出的结果为1,H-divergence定义如下:
如果训练出来的domain classifler,error越高说明两domain越难分辨,因此可以判断两个domain就非常接近。在深度神经网络中,经过一些层之后,特征向量x就包含一些激活信息。定义网络结构为
f
f
f,为了使两个domain接近,需要加强网络结构的输出(也就是x),使使出能够最小化domain之间的距离。
可以通过对抗学习的方式训练
有人设计出梯度反转层(Gradient Reverse Layer)GRL,并且融合到CNN用来做DA的无监督图像分类
4.Domain Adaption for Object Detection
在目标域使用监督学习(样本有标签),在目标域使用无监督学习
4.1 A Probabilistic Perspective
Image_Level Adaption:
用
P
T
(
C
,
B
,
I
)
P_T(C, B, I)
PT(C,B,I)表示目标domain联合概率,用
P
S
(
C
,
B
,
I
)
P_S(C, B, I)
PS(C,B,I)表示源域的联合概率,联合概率可以作如下分解:
两个domain的条件概率是一样的,导致联合概率不一样是因为 P S ( I ) P_S(I) PS(I)和 P T ( I ) P_T(I) PT(I)不等。也就是说两个domain的detector是一致的,给一个图片,输出结果应该是相同的,不管是哪个domain。I代表经过通过卷积层输出的feature map,为了解决domain shift的问题,应该使两个domain的feature map相同,即 P S ( I ) = P T ( I ) P_S(I)=P_T(I) PS(I)=PT(I)
Instance-Level Adaption
联合概率也可以被分解为如下:
同理使 P S ( B , I ) = P T ( B , I ) P_S(B, I)=P_T(B, I) PS(B,I)=PT(B,I)其中(B, I)表示ground truth中的bounding box中抽取出来的features。虽然在目标域中没有ground truth,但是 P ( B , I ) = P ( B ∣ I ) P ( I ) P(B, I) = P(B|I)P(I) P(B,I)=P(B∣I)P(I),其中 P ( B , I ) P(B, I) P(B,I)为边界框的预测器,也就是Faster-RCNN中的RPN,只有当 P ( B , I ) P(B, I) P(B,I)使domain-invariant的时候,上述观点才成立。
Joint Adaption
以上可知
P
(
B
,
I
)
=
P
(
B
∣
I
)
P
(
I
)
P(B, I) = P(B|I)P(I)
P(B,I)=P(B∣I)P(I),如果
P
(
B
∣
I
)
P(B|I)
P(B∣I)在两个domain是相同的,因此以下式子成立
但是实际预测
P
(
B
∣
I
)
P(B|I)
P(B∣I)是很难的,因为:
(1)很难完全对其边缘分布
P
(
I
)
P(I)
P(I)(即
P
T
(
I
)
P_T(I)
PT(I)不等于
P
S
(
I
)
P_S(I)
PS(I)),因此通过
P
(
I
)
P(I)
P(I)估计出来的
P
(
B
∣
I
)
是
有
偏
差
的
P(B|I)是有偏差的
P(B∣I)是有偏差的
(2)只有source domain有标注信息,在训练的过程中只是用source domain的数据,会使得这个偏差更加偏向于source domain
3.2部分提出的domain分类器h(x),其中x可以是image-level的
I
I
I也可以是instance-level的
(
B
∣
I
)
(B|I)
(B∣I)
将domain的标签标示为D,image-level的domain分类器可以看作是估计
P
(
D
∣
I
)
P(D|I)
P(D∣I)的过程,instance-level的分类器可以看作是估计
P
(
D
∣
B
,
I
)
P(D|B, I)
P(D∣B,I),通过贝叶斯可以得到:
P ( B ∣ I ) P(B|I) P(B∣I)是一个domain-invariant(不受domain影响)的bbox预测器, P ( B ∣ D , I ) P(B|D, I) P(B∣D,I)是一个domain-dependent的bbox预测器。在实际情况下,我们只能得到 P ( B ∣ D , I ) P(B|D, I) P(B∣D,I),因为目标domain没有标注信息。 因此可以通过增强两个domain分类器之间的一致性即, P ( D ∣ B , I ) = P ( D ∣ I ) P(D|B, I) = P(D|I) P(D∣B,I)=P(D∣I), 我们就可以学习到 P ( B ∣ D , I ) P(B|D, I) P(B∣D,I) t去逼近 P ( B ∣ I ) P(B|I) P(B∣I).
4.2 Domain Adaption Components
Image-level Adaption
在FAster-RCNN中,image-level代表经过底层卷积之后得到的特征图,为了消除image-level的分布不一致,作者采用的做法是一个patch-based的domain分类器,好处是:
(1)缩小image-level的表示之间的discrepancy可以减少由于全局图像不同造成的shifit(例如图像风格,图像尺寸,光照等)一个patch-based的loss对于style transfer很有效。
(2)由于高分辨率的输入,目标检测网络使用的batchsize都非常小;patch-based可以帮助增加样本量
其中 p ( u , v ) p^{(u, v)} p(u,v)表示经过base-convlution-layers输出的特征图, D i D_i Di表示domain的标签,类似于生成对抗网络,要实现两个过程,一个是训练domain分类器来最小化分类的损失,一个是训练base-network来最大化分类损失。采用gradient reverse layer(GRL)来实现上述功能。当通过GRL来优化base-network的参数时,就需要转话题度
Instance-lavel Adaption
instance-level的表示之输入到最后分类网络之前的基于ROI的特征向量,与image-level的原理相似:
Consistency Resularization
目的是训练RPN中的cross-domian的鲁棒性,由于图像级域分类器为Image-level表示i的每次激活生成一个输出,因此我们将图像中所有激活的平均值作为其图像级概率。一致性调整器可以写为:
总的损失函数为:
第一次写文章,有错误还请大家多多指正。
最后
以上就是欢呼花生为你收集整理的Domain Adaptive Faster R-CNN for Object Detection in the Wild域自适应在目标检测中的应用的全部内容,希望文章能够帮你解决Domain Adaptive Faster R-CNN for Object Detection in the Wild域自适应在目标检测中的应用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复