Attribute Mix: Semantic Data Augmentation for Fine-grained Recognition
文章目录
0 摘要
- Attribute Mix,属性级别的数据增广策略,用于扩展细粒度样本。原理在于,属性特征在细粒度子类别之间共享,可在图像之间转移
- 自动属性挖掘方法,发现属于同一超类的属性,将两个图像语义上有意义的属性特征进行属性混合
- 由于属性可以在同一超类的图像共享,使用来自通用域的图像进一步用属性级标签丰富训练样本
1 引言
传统定位-表示方法:定位区分区域、裁剪、放大;注意力机制;特征更强表示。
数据增广
本文认为,细粒度识别的关键挑战在于受到训练样本的限制,很难扩展到大规模,因此很容易过拟合。所以,本文就通过低成本的方法丰富训练样本,一种简单有效的数据增广方法避免过拟合提高模型性能。
属性混合 Attribute Mix
动机:属性级特征是区分不同子类别的关键,因为所有子类共享相同的属性(比如鸟类都有头、翅膀、尾巴等),可以转移。因此,提出了一种自动属性学习方法来发现属性特征。multi-hot(与one-hot对应)属性级深度分类网络通过迭代掩盖最有区别的部分,使网络专注于对象的不同部分。新生成的图像,加上按比例混合的属性标签(两个属性融合在一起的程度),可以在保持判别性语义含义的同时丰富训练样本。
属性混合在属性级别上融合了两图像,产生了更具语义意义的图像,有助于提高模型的泛化性能
Attribute Mix+
受益于发现的属性,能够仅使用通用标签在属性级别引入更多训练样本。将通用标签表示为一位二进制位监督,表明对象是否来自一般类别(例如,对象是否为鸟)。文章声称,可以在不知道对象的细粒度子类别标签的情况下,将属性特征从通用域无缝转移到细粒度域。通过在属性级别挖掘样本的标准半监督学习策略实现。
贡献
- Attribute Mix,一种数据增强策略
- Attribute Mix +,在属性级别上挖掘细粒度的样本,并且不需要知道所挖掘样本的具体子类别标签
- 三个数据集(CUB-200-2011,FGVC-飞机,斯坦福汽车)上评估,最好性能。
2 相关工作
细粒度分类
- 定位方法:利用额外信息定位目标的区分区域 → \to → 弱监督定位方法
- 特征方法:双线性结构(高阶特征交互使特征更有区别)、注意力机制、度量学习、空间加权
- 额外数据:Earth Mover’s Diatance、Web data、迁移学习
数据增广
- 朴素变换:水平翻转、颜色、随机裁剪
- 自动数据增广
- Mixup:像素级混合、标签是独热标签的线性组合,对人类来说没有意义;Cutmix、
3 方法
该方法的核心要素包括三个模块:
- 自动属性挖掘,旨在仅使用图像级标签发现属性
- Attribute Mix 数据增广,混合两图像的属性特征生成新图像
- Attribute Mix+,通过在属性级挖掘来自相同通用域的图像丰富训练样本
3.1 属性挖掘
如何仅使用图像级标签获得属性级特征
将 { x , y } , y ∈ { 0 , 1 } C \{x,y\},y\in\{0,1\}^C {x,y},y∈{0,1}C表示为训练图像,并用 y c = 1 y_c = 1 yc=1表示其对应的独热向量标签,其中 C C C是细粒度子类数量,假设属性有 k k k个(超类含有,每个子类都有的属性),将 C C C类级别标签 y y y转换为更详细的 k × C k×C k×C属性级别标签 y A y_A yA以进行属性发现。按照含义, y y y是代表类别的独热向量,有 ∑ i = 1 C y i = 1 \sum_{i=1}^Cy_i=1 ∑i=1Cyi=1, y A y^A yA代表多热属性级别标签,有 ∑ i = 1 k C y i A = k \sum_{i=1}^{kC}y_i^A=k ∑i=1kCyiA=k,为 1 1 1的位置代表了含有特定类别的属性。
移除所有的全连接层,图像经过CNN得到特征图,再经过 1 × 1 1\times1 1×1卷积得到特征图 f ∈ R h × w × k C f\in\mathbb R^{h\times w\times kC} f∈Rh×w×kC,再经过GAP得到属性级特征向量。原论文中没有提这样的到的属性级别特征向量如何是10的,如何保持和为k,都没有讲。
属性挖掘的流程如下:
-
用原始图像和multi-hot标签( y c k : ( c + 1 ) k − 1 A = 1 y^A_{ck:(c+1)k-1}=1 yck:(c+1)k−1A=1,对应类的所有 k k k个属性都为 1 1 1)训练多热属性级别分类网络。这样做,使模型能够提取出图像的属性级别标签。
-
对于标签为 y c A y^A_c ycA的图像,在第 k c kc kc通道 f ( : , : , k c ) f(:,:,kc) f(:,:,kc)上选择相应的特征图,根据激活生成关注图,并向上采样至原始图像尺寸,从而获得图像的最高判别性区域掩模 M c , 1 M_{c,1} Mc,1。
-
M c , 1 M_{c,1} Mc,1用于擦除原始图像 x x x以获得擦除后图像 x M c , 1 x^{M_{c,1}} xMc,1,并且相应的multi-hot标签 y c k A y^A_{ck} yckA从1变为0。
-
使用 x M c , 1 x^{M_{c,1}} xMc,1,1作为新的训练样本,并执行上述三个步骤以获得所有剩余属性的蒙版 M c , i , = 2 , . . . , k M_{c,i},=2,...,k Mc,i,=2,...,k。
这一块很懵,从论文中的图1的cd来看(结合自己理解),掩模和原图像相乘后得到的某个属性特征,但是上面又说是擦除,我的理解如下:分成两部分,一块是直接逐元素相乘得到属性特征(这块没什么用,重点是掩模M),另一块是删掉了这一块,那就是剩余的属性特征用以继续提取。擦除操作以均值作阈值。
3.2 Attribute Mix
Attribute Mix操作通过混合来自两个图像的相应属性区域来构造合成样本
给定两个样本
(
x
a
,
y
a
A
)
(x_a,y_a^A)
(xa,yaA)和
(
x
b
,
y
b
A
)
(x_b,y_b^A)
(xb,ybA),其中
x
a
,
x
b
∈
R
×
W
×
H
×
3
x_a,x_b\in\mathcal R^{\times W\times H\times3}
xa,xb∈R×W×H×3,并随机选取属性掩模
M
a
,
k
,
M
b
,
k
∈
{
0
,
1
}
W
×
H
M_{a,k},M_{b,k}\in\{0,1\}^{W\times H}
Ma,k,Mb,k∈{0,1}W×H,则生成的训练样本
(
x
~
,
y
~
)
(\tilde x,\tilde y)
(x~,y~)通过以下方式获得:
x
~
=
(
1
−
M
~
b
,
k
)
⊙
x
a
+
λ
M
~
b
,
k
⊙
x
a
+
(
1
−
λ
)
M
~
b
,
k
⊙
x
b
y
~
=
λ
y
a
A
+
(
1
−
λ
)
y
b
A
\tilde x = (\mathbf1-\tilde M_{b,k})\odot x_a + \lambda \tilde M_{b,k}\odot x_a + (1-\lambda) \tilde M_{b,k}\odot x_b \\ \tilde y = \lambda y^A_a+(1-\lambda)y^A_b
x~=(1−M~b,k)⊙xa+λM~b,k⊙xa+(1−λ)M~b,k⊙xby~=λyaA+(1−λ)ybA
其中
M
~
b
,
k
\tilde M_{b,k}
M~b,k是从
x
b
x_b
xb到
x
a
x_a
xa的转换后的二进制掩模,其中心与
M
a
,
k
M_{a,k}
Ma,k对齐,表示需要混合的区域。
1
\mathbf1
1是全1掩模,
⊙
\odot
⊙是逐元素乘法。
λ
\lambda
λ是从
B
e
t
a
(
α
,
α
)
Beta(α,α)
Beta(α,α)中采样(在实验中,
α
α
α设置为1,即服从均匀分布)
引入时间衰减学习策略来限制应用属性混合运算的概率,通过控制 λ \lambda λ实现。引入变量 γ ( t ) \gamma(t) γ(t),随训练进行从0增加到1,并且极限 γ ( t ) ≤ λ ≤ 1 \gamma(t)\le\lambda\le1 γ(t)≤λ≤1。随着训练过程的进行,两个图像之间的混合操作逐渐衰减,最终退化为使用原始图像
3.3 Attribute Mix+
在本部分中,仅用通用标签也就是只知道超类不知道子类在图像中转移属性。这是通过标准的半监督学习策略在大量具有低成本通用标签的图像上生成软属性级别标签来实现的。
使用经过属性混合策略训练的模型,我们可以对来自通用域的图像进行推理,并通过使用softmax层来产生属性级别的概率。 模型输出表示为
z
∈
R
k
C
z\in R^{kC}
z∈RkC,reshape为
z
~
∈
R
k
×
C
\tilde z\in R^{k\times C}
z~∈Rk×C,其中每一行对应于不同子类别中的相同属性。 在行维度上进行softmax以获得概率:
p
i
,
j
=
exp
(
z
~
i
,
j
/
T
)
∑
c
=
1
C
exp
(
z
~
i
,
c
/
T
)
p_{i,j}=\frac{\exp(\tilde z_{i,j/T})}{\sum_{c=1}^C\exp(\tilde z_{i,c/T})}
pi,j=∑c=1Cexp(z~i,c/T)exp(z~i,j/T)
使用通用标签收集的数据会包含噪音,并且其中一些标签的标签过于平滑,无法提供任何有价值的信息。所以,提出了一种熵排序策略来自适应地选择图像。给定来自通用域的具有软属性标签
p
p
p的图像
x
g
x_g
xg,其熵:
H
(
x
g
)
=
−
∑
i
=
1
k
∑
c
=
1
C
p
i
,
c
log
2
p
i
,
c
H(x_g)=-\sum_{i=1}^k\sum_{c=1}^Cp_{i,c}\log_2p_{i,c}
H(xg)=−i=1∑kc=1∑Cpi,clog2pi,c
p
i
,
c
p_{i,c}
pi,c表示图像
x
g
x_g
xg包含细粒度子类别
c
c
c的属性
i
i
i的概率。如果属性分布是平滑的,则
H
(
x
g
)
H(x_g)
H(xg)会很大;当所有属性获得相同的概率时达到最大值(没有任何价值)。当高于阈值
τ
\tau
τ时过滤掉。
4 实验
4.1 数据集、实现细节
对于multi-hot属性级别分类,使用标准的二进制交叉熵损失。引入“属性混合”样本后,需要更多轮才能收敛。当从通用域中挖掘属性时,使用经过属性混合预训练的模型来推断通用域中的数据以生成软属性级别标签。 在推理过程中,多热点属性级别分类网络输出k * C个属性的预测分数,将每个子类别的k个属性的预测分数进行组合。
4.2 消融实验CUB
k
k太小,模型无法挖掘对象的适当属性,k太大,该模型存在包括背景噪声,优化困难。
α \alpha α
控制来自两个训练样本的属性之间插值的强度
adaptive Attribute Mix
时间衰减策略减轻增强样本的过拟合。应用属性混合的概率作为余弦曲线从1衰减到0。
图像级别样本挖掘
4.3 SOTA比较
5 结论
- 提出通用数据增广框架——Attribute Mix,在属性级混合两个图像进行数据增强,提高性能
- 基于属性级特征可以很容易地从通用域转移到细粒度域的原理,而不管特定标签如何
- 是低成本的通用数据增强框架,可以与大多数最新的细粒度识别方法结合使用