零样本图像识别 | Feature Generating Networks for Zero-Shot Learning简单论文笔记

创新:提出f-GAN 、 f-WGAN f-CLSWGAN、将WGAN的loss和Classficationloss结合去让generator生成的features更容易被鉴别出来。在本文中,提出了解决广义零镜头学习的方法:通过一个新的GAN模型给unseen类生成 CNN 特征。


问题定义:

可见类集合


零样本类集合

U中样本不可见,且 S\cap U=\oslash(可见类与零样本类不相交),ZSL任务学习 f_{zsl} =X \rightarrow Y^u,GZSL任务学习f_{gzsl} =X\rightarrow Y^s \cup Y^u

模型:

提出了三个有条件的GAN变种,即 f-GAN 、 f-WGAN f-CLSWGAN,来生成图像特征而不是图像像素。模型只是训练可见类数据,但也可以生成unseen类的图像特征,实验证明f-CLSWGAN效果最好

f-GAN

给出训练数据S,学习一个条件生成器G:Z\times C\rightarrow X,采用随机高斯噪声z和类嵌入(语义)c(y)作为输入,输出对应类别的CNN特征\tilde{x} ,训练后可以输入c(u)生成对应的零样本类别图像特征。优化目标为(1)

f-GAN loss

discriminator D是一个多层感知器,以 sigmoid 函数作为最后一层。 D让loss最大,G让其最小。

f-WGAN

WGAN与原始GAN第一种形式相比,只改了四点:

①判别器最后一层去掉sigmoid ②生成器和判别器的loss不取log ③每次更新判别器的参数之后把它们的绝对值截断到不超过一个固定常数c ④不用基于动量的优化算法(包括momentum和Adam),推荐RMSProp,SGD

通过将类嵌入 c (y) 集成到生成器和鉴别器中,改进的方法扩展了传统的WGAN。

f-WGAN loss

方程2中的前两个项近似 Wasserstein 距离,第三个项是梯度下降,强制梯度 D 沿直线在一对的真实和生成的点之间具有单位范数。\lambda 是梯度下降系数。

f-CLSWGAN

f-WGAN不能保证生成的 CNN 特征非常适合训练一个discriminative分类器。猜想这个问题可以通过鼓励生成器构造能够被训练在输入数据上的 discriminative 分类器正确分类的特征来解决。为此,我们提出了在 f-CLSWGAN 公式中,最大限度地减小classification loss。使用负log最大似然函数:

CLS loss

P(y|\tilde{x} ;\theta )\tilde{x} 被预测成正确标签y的概率,条件概率是由一个线性的被\theta 参数化的softmax 分类器计算的,softmax 分类器预先由真实的seen类的特征训练过。classification loss可以被认为是一个规则器去加强生成器来构造discriminative特征。优化目标变为:

f-CLSWGAN loss
f-CLSWGAN网络结构图

主要观点是,以类特定的语义向量(属性、语句描述)为条件,生成unseen类的图像特征,训练分类器使之可以分类零样本图像。这减轻了 seen 和 unseen 类之间的不平衡,可以生成的 CNN 特征数量是没有限制的。


实验:

数据集和预处理

在CUB、FLO、SUN、AWA1上进行了实验,从整个图像中提取了101层的ResNet 的2048维顶层池化单元CNN特征。不进行任何图像预处理,例如裁剪或使用任何其他数据增强技术。 ResNet在ImageNet 1K上经过预先培训,未经过微调。 作为嵌入类,使用AWA(85-dim),CUB(312-dim)和SUN(102-dim)的每类属性。此外,对于CUB和Flowers,提取1024-dim基于字符的CNN-RNN 具有细粒度的视觉描述(每个图像10个句子)。 在训练CNN-RNN期间没有看到任何u句子。 通过平均属于同一类的CNN-RNN特征建立每个类别的句子。

数据集 AWA,SUN,CUB和FLO

训练集即是seen类,测试集即是unseen类, 随机选择但测试集中不包含ImageNet中包含的类

在大规模的实验中使用ImageNet

AWA是粗粒度数据集共30,475张图片,50类,40个类用于训练(随机选择13个进行验证),10个进行测试。 AWA有85个属性。

Caltech-UCSD-Birds 200-2011(CUB)细粒度数据集,200类,11,788幅图像。 312个属性。150个训练类(50个验证类)和50个测试类。

 SUN细粒度数据集,717类,14340个图像,102个属性。645类进行训练(随机选择65表示val),72类测试。

Ox-ford Flowers(FLO)细粒度数据集,102类,8189张图像,没有属性注释。论文中说明使用《Learning Deep Representations of Fine-Grained Visual Descriptions》一文中收集的细粒度视觉描述。

关于stc:每张图片十个简单描述语句,由《Learning Deep Representations of Fine-Grained Visual Descriptions》一文标注,目前没有找到带描述的数据集,根据这篇论文所述方法提取1024维字符级别的CNN-RNN特征作为c(u)和c(s)。

大规模ImageNet。在总共21K类中,1K类用于训练(200个类进行验证),测试使用所有剩余的21K类或其子集,根据类和类的总体之间的层次距离来确定这些子集。


评价标准

在测试时,在ZSL设置中,目标是为测试图像分配一个unseen类标签,即u,在GZSL设置中,搜索空间包括seen或unseen类。使用“Zero-shot learning - the good, the bad and the ugly”中提出的统一评估协议。在ZSL设置中,在将累积和除以类的数量之前,为每个类独立计算平均准确度; 也就是说,测量平均每类top1精度(T1)。 在GZSL设置中,计算了所表示为s的所见类别(Ys)的平均每类top1精度,表示为u的未见类别(Yu)的平均每类top1精度及其调和平均值,即H = 2 *(s * u)/(s + u)。


实验配置

在所有f-xGAN模型中,发生器和鉴别器都是具有LeakyReLU激活的MLP。 该生成器由一个隐藏层组成,具有4096个隐藏单元。 它的输出层是ReLU,因为目标是学习ResNet-101的最大最大池化数。 虽然f-GAN的鉴别器有一个隐藏层,有1024个隐藏单元以稳定GAN训练,但f-WGAN和f-CLSWGAN的鉴别器有一个隐藏层有4096个隐藏单元,因为WGAN 没有不稳定性问题,因此可以在这里应用更强的判别器。 不应用batch normalization,经验评估表明,当使用batch normalization时,准确度会显着降低。 噪声z是从单位高斯绘制的,具有与类嵌入相同的维数。 λ= 10和所有数据集中的β= 0.01。


实验结果


ZSL任务与GZSL任务实验结果

在不同情况下分析f-xGAN

①稳定性和泛化性

数据集:FLO,CUB

比较的对象:Generative Moment Matching Networks

结果: 训练softmax分类器,生成seen类的特征并报告在测试集上的分类准确性。而不是使用Parzen基于窗口的对数似然,因为不稳定。在这两个数据集中,观察到稳定的训练趋势。在FLO上,与用真实图像获得的监督分类准确性相比(用虚线标记上限),f-GAN即使收敛后仍然很弱,这表明f-GAN有不足之处。

强有力的替代方案是f-GMMN导致显着的准确性提升,然而f-WGAN和f-CLSWGAN的改进超过f-GMMN并几乎达到监督上限。

在确定f-xGAN训练表现得很稳定,并产生高度概括的特征后,评估f-xGAN生成器对于unseen类的泛化能力。使用预先训练的模型,生成unseen的类的CNN特征。然后使用这些unseen类的合成的CNN特征以及seen类的真实特征训练softmax分类器 具有真实CNN功能的看不见的类的功能。

下图显示了随着unseen类生成特征从1到100的增加,准确率的显著提高,例如CUB为28.2%到56.5%,FLO为37.9%至66.5%。根据生成seen类特征的情况,顺序是 在CUB上,f-GAN<f-WGAN<f-GMMN<f-CLSWGAN

在FLO上,f-GAN<f-GMMN<f-WGAN<f-CLSWGAN。有了这些结果,认为如果生成模型可以很好地推广到以前unseen的数据分布,例如在GZSL任务上表现很好,则他们有实用性用于各种实际应用。因此,关于GZSL任务的生成模型,建议定量评估其性能。


四种模型效果对比
训练次数以及预测时生成unseen样本数量对结果的影响

②CNN架构的影响

数据集:CUB

比较对象:ResNet、GoogLeNet

结论: ResNet功能强于GoogLeNet。

此外,在CNN架构中,f-xGAN大幅超越“none”。GoogleNet特征的准确率从25.8%提高到36.9%,ResNet特征由34.4%到49.7%。 表示f-xGAN不仅适用于ResNet-101也适用于其他CNN特征架构。


使用不同CNN模型提取特征的效果对比

③class embedding的影响

数据集:CUB

比较对象:ATT和SRC

结论:CUB上评估两个不同的类嵌入,每类属性(att)和每类句子(stc),因为这是唯一同时具有这两者的数据集。在表4中,首先观察到以ATT作为class embedding时,f-CLSWGAN特征生成不仅精度更高(49.7%对34.4%),而且S和u更加平衡(57.7%和43.7%对62.8%和23.7%)。

最后,使用每类stc生成的f-CLSWGAN特征显着改善了att的结果,在H度量中达到54.0%,并且在不损害s精度(58.3%)的情况下得到了很好的u精度(50.3%)。这是由于STC能够得到更高品质的特征[35]反映了高度描述性的语义内容的语言需要,它表明f-CLSWGAN 能够学习更高质量的CNN特征给予了较高质量的调节信号。


class embedding的影响

大规模实验

数据集:ImageNet Att由Word2Vec来生成

比较对象:ALE

结论: 大规模实验遵循相同的ZSL数据分割。首先,在ImageNet 上进行了实验,它是最大规模的单标签图像数据集,即具有21K类和14M图像。其次,由于ImageNet不包含att,用(弱)调节信号Word2Vec [28]生成f-CLSWGAN特征。下图表明softmax作为分类器获得了在ImageNet上的ZSL和GZSL的现有技术,显著超越ALE [2]。这些结果表明f-CLSWGAN在Word2Vec作为类嵌入时也能够产生高质量的CNN特征。

对于ZSL,2H划分中,本方法的表现几乎是ALE的翻倍(5.38%至10.00%),在一个极端情况下,例如L1K划分,准确性从2.85%提高到3.62%。对于GZSL,同样的观察结果,即ALE与本方法之间的差距是2.18 vs 4.38,2H划分,1.21 vs 2.50,L1K划分。

请注意,[46]中表明SYNC [8]的结果最高,本方法也改善了SYNC,如2H划分,9.26%vs2.00%,L1K划分3.23%比3.56%。这些结果强调,在监督和Word2Vec信号一样弱的情况下,本模型能够生成unseen类的CNN特征,并在ImageNet这样大的规模运作。 本模型既适用于ZSL也适用于GZSL,适用于真实的图像分类。


ImageNet 上的实验效果

生成特征与图像的比较

数据集:CUB/FLO

比较对象:StackGAN【48】Stackgan: Text to photo-realistic image synthe- sis with stacked generative adversarial networks.

结论: 本文主要目标是解决缺乏视觉训练样本的GZSL任务,其中一个很自然想法是图像生成能够达到同样的目的。因此,这里比较在GZSL任务中生成图像和图像特征得到的精度。使用StackGAN [48]以句子为条件生成256×256的图像。

在表5中,比较了none获得的GZSL结果,即seen类在真实图像上训练的ALE模型 ,Image,即从StackGAN生成的256×256的合成图像中提取的图像特征[48],CNN特征,即由f-CLSWGAN生成。

在“none”和“Image”之间,观察到生成unseen类的图像提高了性能,即FLO上的调和平均值(“Image”为49.0%vs 21.9%对于“none”),但在CUB上的表现降低了(31:9%“Image”vs 45:1%“none”)。这是因为生成鸟类比生成花的图像更艰巨。观察到尽管许多图像具有像鸟或花那样的精确视觉外观,但是它们缺乏必要的辨别细节以被正确分类并且所生成的图像不是类一致的。另一方面,产生CNN特征可以显着提高准确度,例如: CUB为54.0%,FLO为65.6%,明显高于没有生成,即none,和生成图像。

本文认为图像特征生成具有以下优点: 首先,生成的图像特征的数量是无限的。 其次,图像特征生成从在大型数据集(如ImageNet)上训练的深度网络获得的紧凑不变表示中学习,因此特征生成网络可以非常简洁,因此计算效率高。 第三,生成的CNN特征是高度辨别的,即它们导致ZSL和GZSL的性能的显着提升。 最后,图像特征生成是一项更容易的任务,因为生成的数据比识别所需的高质量图像的维度低得多。


生成图像与生成特征的结果对比
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容