2.Siamese Neural Networks for One-shot Image Recognition论文详读-PartⅠ(摘要、引言、方法、相关工作)

⭐原文链接:Siamese Neural Networks for One-shot Image Recognition (cmu.edu)

*黑字——原文翻译

*红字——存在问题

*蓝字——优势

*绿字——主观分析(未对全部细节进行分析,仅针对本文内容补充)

摘要

对于机器学习应用来说学习良好特征的过程可能Very computationally expensive,当数据很少的情况下可能很困难。这方面的一个典型例子是one-shot learning设置,在这种设置中,我们必须在each new class仅给sigle example的情况下做出正确的预测。

在这篇论文中,我们探索了一种孪生神经网络(siamese neural networks)的方法,它使用一个独特的结构来自然地将输入间的相似性进行排序。

*siamese neural networks主要学习:

(1) 特征提取网络的参数——即提取什么样的特征能够更好地区分两类事物;

(2) 两类事物提取特征后的参数。

一旦对网络进行了调优,我们就可以利用强大的判别特征,不仅将网络的预测能力用于新数据(new data)上,还可以泛化至来自未知分布的全新类(new classes)上

*由于siamese neural networks学习到的是如何区分两类事物,因此可以应用到未被训练的类中。

*如训练中仅有老虎和大象图片的分类,对于new data指的是再给一张老虎或者大象的图片能够区分出是老虎还是大象;对于new classes指的是,当引入一个长颈鹿和山羊的图片分类任务时,也可以用该模型进行分类。

使用卷积架构(convolutional architecture),我们能够获得比其他深度学习模型更好的结果,在one-shot分类任务上接近最先进的性能。

*one-shot指的是我们在训练样本只有一个的情况下,依旧能做预测。

引言

人类具有很强的获取和识别新模式的能力。特别是,我们观察到当面对刺激时,人们似乎能够快速理解新概念,然后再未来的感知中识别这些概念的变化。

机器学习已经成功地用于各种应用以实现最先进的性能。如网页搜索(web search),垃圾邮件检测(spam detection),标题生成(caption generation)以及语音和图像识别(speech and image recognition),

然而,当对几乎没有监督信息(supervised information)的数据进行预测时,这些算法往往会崩溃(break down)。我们希望推广到这些不熟悉的类别,而不需要大量的再训练,这可能由于有限的数据(limited data)或在线预测设置(online prediction setting)是昂贵的或不可能的(expensive or impossible),如网络检索(web retrieval)。

一个特别有趣的任务是在限制下进行分类,所谓限制即在对测试实例(test instance)进行预测之前,我们可能只观察到每个可能类(each possible class)的单个示例(single example)。这被成为one-shot learning,这是我们在这项工作中提出的模型的主要焦点(primary focus)。这应该和zero-shot learning区别开来,在zero-shot learing学习中,模型不能查看目标类(target classes)中的任何示例。

one-shot learning能够通过developing domain-specific features或者inference procedures直接解决,这些特征或推理过程对目标任务具有高度的鉴别性(highly discriminative properties)。因此,包含这些方法的系统往往在类似的示例中表现出色,但不能提供适用于其他类型问题的鲁棒性解决方案。

在本文中,我们提出了一种新的方法,它限制了对输入结构的假设(limits assumptions on the structure of the inputs),同时自动提取特征(automatically acquiring features),使模型能够成功地从少数示例中泛化。

我们以深度学习框架为基础,该框架使用多层非线性来捕获输入空间(input space)中转换的不变性(invariances to transformation),通常利用具有许多参数的模型,然后使用大量数据来防止过拟合。这些特征非常强大,因为我们能够在不强加先验的情况下学习它们,尽管学习算法本身的成本可能相当大。

1.方法

一般来说,我们通过使用孪生神经网络(siamese neural networks)的基于监督度量的方法(supervised metric-based approach)学习图像表示(image representations),然后重新使用该网络的特征进行one-shot learning,而无需任何再retraining。

在我们的实验中,我们将我们的注意力限制在字符识别(character recognition)上,尽管基本方法几乎可以用于任何模态(图2)。

Figure2. 我们的通用策略. 1)训练一个模型来区分相同/不同对的集合(discriminate between a collection of same/different pairs). 2)基于学习到的用于验证(verification)的特征映射(feature mappings)泛化至评估新的类别(Generalize to evaluate new categories)。

对于这个领域,我们采用了大型孪生卷积神经网络(large siamese convolutional neural networks),a)它能够学习用于预测未知类分布的通用图像特征,即使这些新分布的示例很少。b)可以使用从源数据中采样的数据对的标准优化技术轻松训练;c)不依赖于特定领域的知识(domain-specific knowledge),利用深度学习技术提供一个有竞争力的方法。

*即三个优点:

a) 能够预测未知分布且少数据的任务;

b) 易训练;

c) 不依赖于特定领域知识。

为了开发一个one-shot图像分类模型,我们的目标是首先学习一个可以区分图像对(image pairs)的类别特性(class-identity)的神经网络,这是图像识别的标准verification任务。

我们hypothesize,在验证方面表现良好的网络应该可以泛化至one-shot分类。

*这里加一个序号,用于说明下面内容是按顺序进行的

(1) 验证模型根据输入对属于同一类或不同类的概率来学习识别输入对。

*判断输入的一对数据是否属于同一类别,属于则标签为1,不属于标签为0。

(2) 然后,该模型可以用于评估新图像,每个新类恰好一个,以成对的方式(pairwise manner)与测试图像比较。

*将新类别中的一个新图像分别于测试图像进行比对。

(3) 根据验证网络,得分最高的配对将获得one-shot任务的最高概率。

*比对后得分最高的说明两个图像最相似,即最有可能是同一类。

如果验证模型(verification model)学习到的特征足以确认或否认一组字母(alphabets)中字符(characters)的identity,那么它们应该足以用于其他字母,前提是模型已经暴露在各种字母中(exposed to a variety of alphabets),以促进所学特征之间的差异。

2.相关工作

总的来说,对one-shot learning学习算法的研究相当不成熟(fairly immature),并且受到机器学习社区的关注有限(limited attention)。然而,在本文之前还有一些关键的工作。

one-shot learning的开创性工作(seminal work)可以追溯到2000年代初,由李飞飞等人完成。作者开发了一种用于one-shot分类的variational Bayesian framework,前提是当给定类的示例很少时,可以利用以前学习的类(learned classes)来帮助预测(forecast)未来的类。

最近,Lake等人从认知科学(cognitive science)的角度解决了one-shot learning的问题,用一种称为Hierarchical Bayesian Program Learning(HBPL)的方法解决了字符识别(character recognition)的one-shot learning。

在一系列的几篇论文中,作者模拟了生成绘制字符的过程(modeled the process of drawing characters generatively),将图像分解成小块(decompose the image into small pieces)。HBPL的目标是确定所观察像素的结构解释(structural explanation)。然而,由于联合参数空间(joint parameter space)非常大,在HBPL下的推断是困难的,这导致了一个棘手的积分问题(intractable integration problem)

一些研究人员考虑了其他模式或迁移学习(transfer learning)方法。Lake等人最近的一些工作使用generative Hierarchical Hidden Markov model,用于speech primitives,并结合Bayesian inference procedure来识别未知说话者的新词。

Maas和Kemp发表了一些使用贝叶斯网络(Bayesian networks)预测埃利斯岛旅客数据(Ellis Island passenger data)的论文。

Wu和Dennis在机器人驱动的路径规划算法(path planning algorithms for robotic actuation)的背景下解决了one-shot learning。

Lim专注于如何从训练集中的其他类中“借用(borrow)”示例,通过调整损失函数中的每个训练示例应该对每个类别进行多少加权的度量。对于某些类的示例很少的数据集,这种想法可能是有用的,它提供了一种灵活且连续(flexible and continuous)的将类间信息合并(incorporating inter-class information)到模型中的方法。


参考文献

Koch, Gregory R.. “Siamese Neural Networks for One-Shot Image Recognition.” (2015).

猜你喜欢

转载自blog.csdn.net/qq_41958946/article/details/128838895