Zero-Shot Learning论文阅读笔记(第二周)
第一篇:DeViSE: A Deep Visual-Semantic Embedding Model
主要贡献
本文解决了“视觉识别系统在对象类别庞大时的处理能力不足”这一问题。对于传统视觉识别系统,对于10000类物体的大型识别应用,可能需要在最后一层添加10000个神经元。而且假如这时候检测出还有一个类别没训练,可能需要添加新的神经元重新训练,这无疑是非常低效冗余的。
摘要
文章提出了DeVISE的概念,即一种深度视觉语义嵌入模型,该模型利用标记图像数据和未标记文本的语义信息来识别视觉对象。文章证明,该模型在处理拥有1000类ImageNet对象识别任务时产生的不合理语义错误大大减少。同时也表明,语义信息可以用来对训练过程中未观察到的数万个图像标签进行预测,语义知识可以将这种零样本学习的预测准确率提高65%,在视觉模型从未见过的数千个新标签中,达到10%的命中率。
简单来说,文章糅合了传统视觉神经网络和词向量(word2vec)处理中的Skip-gram模型,从而实现了一个视觉和语义兼顾的模型。
算法简介
算法思想:
分别预训练一个视觉网络(Visual Model Pre-training)和词向量网络(Language Model Pre-training),再结合两网络进行训练。
Skip-gram算法简介:
在许多自然语言处理任务中,许多单词表达是由他们的tf-idf(词频-逆文本指数)分数决定的。即使这些分数告诉我们一个单词在一个文本中的相对重要性,但是他们并没有告诉我们单词的语义。Word2vec是一类神经网络模型——在给定无标签的语料库的情况下,为语料库中的单词产生一个能表达语义的向量。这些向量通常是有用的,而Skip-gram算法就是Word2vec其中一个模型。
对于skip-gram模型,输入一个单词 w I w_I wI,它的输出是 w I w_I wI的上下文 w 1 , w 2 , . . . , w C w_1,w_2,...,w_C w1,w2,...,wC,其中上下文的窗口大小为 C C C。举个例子,这里有个句子“I drive my car to the store”。如果把”car”作为训练输入数据,单词组{“I”, “drive”, “my”, “to”, “the”, “store”}就是输出。所有这些单词,需要进行one-hot编码。skip-gram模型图如下所示:

算法核心框架

该结构图可以概括论文的核心思想,作者使用word2vec做NLP的向量,将CNN的最后一层softmax 替换为transformation(这里为linear transformation)做图像的特征向量, 这里要保证特征向量和 word2vec产生的向量维度一致,最后做特征向量和标签向量的相似度计算。
论文的另一个亮点是使用了hinge rank loss作为loss得计算,公式如下:
l o s s ( i m a g e , l a b e l ) = ∑ j ≠ l a b e l max [ 0 , m a r g i n − t l a b e l ⃗ M v ⃗ ( i m a g e ) + t ⃗ j M v ⃗ ( i m a g e ) loss(image,labe l ) = \sum _ { j \neq l a b e l } \operatorname { max } [ 0 , margin - \vec { t _ { l a b e l } } M \vec { v } ( i m a g e ) + \vec { t } _ { j } M \vec { v } ( i m a g e ) loss(image,label)=j=label∑max[0,margin−tlabel

最低0.47元/天 解锁文章
6020

被折叠的 条评论
为什么被折叠?



