论文阅读

文章地址

ImageNet Classification with Deep Convolutional Neural Networks

  • 论文阅读
  • 摘要
  • 一、Introduction
    • 1.1 论文贡献
  • 二、ImageNet数据集
  • 三、The Architecture
    • 3.1 激活函数
    • 3.2 多种GPU的训练
    • 3.3 本地响应标准化
    • 3.4 重叠池化
    • 3.5 总体结构
  • 四、减少过拟合
    • 4.1 方法一:数据增强
    • 4.2 方法二:Dropout
  • 五、Details of learning
  • 六、结论
    • 6.1 评估
  • 7、成果
  • 参考文献


摘要

  作者训练了一个大型深度卷积神经网络来将ImageNet LSVRC-2010竞赛的120万高分辨率的图像分到1000不同的类别中。在测试数据上,我们得到了top-1 37.5%, top-5 17.0%的错误率,这个结果比目前的最好结果好很多。这个神经网络有6000万参数和650000个神经元,包含5个卷积层(某些卷积层后面带有池化层)和3个全连接层,最后是一个1000维的softmax。为了训练的更快,我们使用了非饱和神经元并对卷积操作进行了非常有效的GPU实现。为了减少全连接层的过拟合,我们采用了一个最近开发的名为dropout的正则化方法,结果证明是非常有效的。我们也使用这个模型的一个变种参加了ILSVRC-2012竞赛,赢得了冠军并且与第二名 top-5 26.2%的错误率相比,我们取得了top-5 15.3%的错误率。

一、Introduction

  目前的对象识别方法基本使用了机器学习方法。为了证明其性能,我们可以收集更大的数据集,学习更强大的模型,并使用更好的技术来防止过拟合。直到最近,有标记的图像的数据集是相对的小-在数以万计的图像(例如,NORB [16], Caltech-101/256[8,9],和CIFAR-10/100[12])。这种规模的数据集可以很好地解决简单的识别任务,特别是如果它们是用保标号变换扩充的。例如,MNIST数字识别任务的当前最佳错误率(<0.3%)接近人类性能[4]。但是现实环境中的物体表现出相当大的可变性,所以要学会识别它们是很困难的需要使用更大的训练集。的确,小图像数据集的缺点已经被广泛认可(例如,Pinto等[21]),但直到最近它才成为可能收集有数百万张图像的标记数据集。新的更大的数据集包括LabelMe [23]ImageNet[6]由成千上万完全分割的图像组成在超过22000个类别中超过1500万标记高分辨率图像。
  要从数百万张图像中学校几千个对象,我们需要一个具有较大学习能力的模型。然而,对象识别任务的巨大复杂性意味着,即使这个问题由像ImageNet这样大的数据集也无法指定,因此我们的模型也应该有大量的先验知识来补偿我们所没有的所有数据。卷积神经网络(CNNs)构成了这样一类模型[16,11,13,18,15,22,26]。它们的能力可以通过改变深度和宽度来控制,它们也对图像的性质(即统计的平稳性和像素依赖的局部性)做出强烈和基本正确的假设。因此,与具有相似大小层的标准前馈神经网络相比,CNNs的连接和参数要少得多,因此它们更容易训练,而它们理论上最好的性能可能只是稍微差一些。
  尽管CNNs的质量很有吸引力,而且尽管它们的本地建筑相对高效,但它们大规模应用于高分辨率图像仍然令人望而却步。幸运的是,目前的GPU结合高度优化的二维卷积实现,足够强大到促进有趣的大型CNNs的训练,而最近的数据集如ImageNet包含足够的标记例子,在没有严重的过拟合的情况下训练这类模型。

1.1 论文贡献

  我们在迄今为止ILSVRC-2010和ILSVRC-2012竞赛[2]中使用的图像网子集上训练了最大的卷积神经网络之一,并取得了迄今为止在这些数据集上报道的最佳结果。我们编写了一个高度优化的GPU实现的二维卷积和训练卷积神经网络中固有的所有其他操作,我们将其公开使用我们的网络包含了许多新的和不寻常的特性,它们提高了其性能,减少了其训练时间,我们的网络的规模使过拟合成为一个重要的问题,即使有120万标记的训练例子,所以我们使用了几种有效的技术来防止过度拟合,我们最终的网络包含五个卷积层和三个全连接层,这个深度似乎很重要:我们发现,删除任何卷积层(每个层包含不超过模型参数的1%)会导致性能的下降。
  最后,网络的大小主要受到当前GPU上的可用内存量和我们愿意容忍的训练时间量的限制。我们的网络需要5到6天的时间来训练两个GTX5803GB的GPU。我们所有的实验都表明,只要等待更快的GPU和更大的数据集,就可以改进我们的结果。

二、ImageNet数据集

  ImageNet是一个包含超过1500万张被标记的高分辨率图像的数据集,属于大约22,000个类别。这些图片是从网上收集到的,并由人类标签者使用亚马逊的机械土耳其人众包工具贴上标签。从2010年开始,作为帕斯卡视觉目标挑战的一部分,一个名为ImageNet大规模视觉识别挑战(ILSVRC)的年度比赛已经举行。ILSVRC使用ImageNet的一个子集,在1000个类别中大约有1000张图像。总共大约有120万张训练图像、5万张验证图像和15万张测试图像。
  ILSVRC-2010是唯一可用于设置测试集标签的ILSVRC版本,所以这是我们进行大部分实验的版本。由于我们也在ILSVRC-2012竞赛中进入了我们的模型,在第6节中,我们也报告了这个版本的数据集的结果,其中测试集标签不可用。在ImageNet上,通常会报告两种错误率:前1和前5,其中前5个错误率是测试图像的比例,而正确的标签不在模型认为最有可能的五个标签中。
  ImageNet由可变分辨率的图像组成,而我们的系统需要一个恒定的输入维数。因此,我们将图像向下采样到256×256的固定分辨率。给定一个矩形图像,我们首先重新标准图像,使较短的边长度为256,然后从结果图像中剪切出中央256×256补丁。我们没有以任何其他方式预处理图像,除了从每个像素中减去训练集的平均活动。所以我们用像素的(中心)原始RGB值来训练我们的网络。

三、The Architecture

  下图总结了我们的网络架构。它包含8个学习层——五个卷积和三个完全连接的。下面,我们将描述我们的网络体系结构的一些新颖或不寻常的特征。第3.1-3.4节根据我们对其重要性的估计进行排序,最重要的是首先。
在这里插入图片描述

3.1 激活函数

  f(x)=tanh(x)和f(x)=sigmoid(x)在梯度下降的训练时间方面,这些饱和非线性比非饱和非线性f(x)=max(0,x)要慢得多。在Nair和Hinton[20]之后,我们将具有这种非线性的神经元称为正直线性单位(ReLUs)。ReLUs的深度卷积神经网络训练速度比大单位要快几倍。图1证明了这点,它显示了特定四层卷积网络在CIFAR-10数据集上达到25%训练误差所需的迭代次数。这个图表明,如果我们使用传统的饱和神经元模型,我们就无法为这项工作实验如此大的神经网络。
  我们并不是第一个在CNNs中考虑替代传统神经元模型的人。例如,贾勒特等人。[11]声称,非线性f(x)=|tanh(x)|特别适合它们的对比度归一化类型,然后是加州理工学院-101数据集上的本地平均池。然而,在这个数据集上,主要关注的是防止过拟合,所以它们观察到的效果不同于我们在使用ReLUs时报告的适应训练集的加速能力。更快的学习对在大型数据集上训练的大型模型的性能有很大的影响。

3.2 多种GPU的训练

  单个GTX580GPU只有3GB的内存,这限制了可以在其上训练的网络的最大大小。结果证明,120万个训练示例足以训练太大而无法安装一个GPU的网络。因此,我们将网络分散到两个GPU上。当前的GPU特别适合跨GPU并行化,因为它们能够直接读取和写到彼此的内存,而不通过主机内存。我们使用的并行化方案基本上是将一半的内核(或神经元)放在每个GPU上,还有一个技巧:GPU只在特定的层中进行通信。这意味着,例如,第3层的内核从第2层中的所有内核映射中获取输入。然而,第4层中的内核只从第3层中位于同一GPU上的内核映射中获取输入。选择连接模式是交叉验证的问题,但这允许我们精确地调整通信量,直到它是计算量的可接受部分。
  由此产生的建筑与Cire¸san等人使用的“柱状”CNN有些相似。[5],除了我们的列不是独立的(见图2)。与在一个GPU上训练的每个卷积层中内核有一半的网络相比,该方案将我们的前1和前5的错误率分别降低了1.7%和1.2%。双GPU网络所花费的训练时间略少于单GPU网络2

3.3 本地响应标准化

  ReLU具有一个理想的特性,即它们不需要输入标准化来防止它们饱和。如果至少有一些训练例子对ReLU产生了积极的输入,学习就会发生在那个神经元中。然而,我们仍然发现以下局部归一化方案有助于泛化。用aix,y表示通过应用核i在位置(x,y)然后应用ReLU非线性计算的神经元的活性,响应标准化活性bix,y由表达式给出
在这里插入图片描述
  其中,和在同一空间位置的n个“相邻”内核映射上运行,而N是图层中的内核总数。内核映射的顺序当然是任意的,并且是在训练开始之前确定的。这种响应标准化实现了一种横向抑制的形式,灵感来自于在真实神经元中发现的类型,在使用不同核计算的神经元输出之间创造了对大活动的竞争。常数k、n、α和β是超参数,其值使用验证集确定;我们使用了k=2、n=5、α=10−4和β=0.75。我们在某些层中应用ReLU非线性后应用了这一标准化(见第3.5节)。
  该方案与Jarrett等人的局部对比归一化格式有一定的相似性。[11],但我们的将被更正确地称为“亮度正常化”,因为我们不减去平均活动。响应标准化将我们的前1名和前5名的错误率分别降低了1.4%和1.2%。我们还在CIFAR-10数据集上验证了该方案的有效性:四层CNN在没有标准化的测试错误率为13%,标准化3为11%。

3.4 重叠池化

  CNNs中的池化层总结了同一核图中相邻神经元群的输出。传统上,由相邻池单元汇总的邻域不重叠(例如,[17,11,4])。更准确地说,池化层可以被认为是由一个间隔为s像素的池化单元网格组成,每个网格总结了以集中单元位置为中心的大小为z×z的邻域。如果我们设置了s=z,我们将得到CNNs中常用的传统局部池。如果我们设置了s<z,我们就得到了重叠的池。这是我们在整个网络中使用的,使用s=2和z=3。与非重叠方案的=2,z=2相比,该方案将前1名和前5名的错误率分别降低了0.4%和0.3%。我们通常在训练过程中观察到,具有重叠池的模型发现过度拟合稍微困难一些。

3.5 总体结构

  现在我们已经准备好描述我们的CNN的整体架构了。如图2所示,网络包含八层重量层,前五层为卷积,其余三层全连接。最后一个全连接层的输出输入1000路软最大,产生1000类标签的分布。我们的网络最大化多项逻辑回归目标,相当于在预测分布下正确标签对数概率的训练情况的平均最大化。
  第二、第四和第五卷积层的内核仅连接到位于同一GPU上的上一层中的内核映射(见下图)。第三个卷积层的内核连接到第二层中的所有核映射。完全连接层中的神经元与前一层中的所有神经元相连。响应归一化层遵循第一和第二卷积层。第3.4节中所述的最大池化层同时遵循响应归一化层和第五卷积层。ReLU非线性应用于每个卷积和全连接层的输出。
  第一卷积层过滤具有4像素的96粒内核11×11×3的224×224×3输入图像(这是邻近的接收场中心之间的距离核映射中的神经元)。第二卷积层以第一卷积层的(响应归一化和汇集)输出作为输入,并用256个大小为5×5×48的核对其进行过滤。第三、第四和第五卷积层相互连接,没有任何干预池或归一化层。第三卷积层有384个大小为3×3×256的内核,连接到第二卷积层的(标准化的、汇集的)输出。第四个卷积层有384个大小为3×3×192的内核,第五个卷积层有256个大小为3×3×192的内核。全连接的层各有4096个神经元。
在这里插入图片描述

四、减少过拟合

  我们的神经网络架构有6000万个参数。虽然1000类ILSVRC使每个训练示例对从图像到标签的映射施加了10位的约束,但这被证明不足以在没有相当大的过拟合的情况下学习这么多的参数。下面,我们描述了我们对抗过度拟合的两种主要方法。

4.1 方法一:数据增强

  减少对图像数据的过拟合的最简单和最常见的方法是使用标签保留转换(如[25,4,5])人为地放大数据集。我们使用了两种不同形式的数据增强方法,这两种形式都允许从原始图像中生成转换后的图像,因此转换后的图像不需要存储在磁盘上。在我们的实现中,转换后的图像是在CPU上用Python代码生成的,而GPU正在对上一批图像进行训练。因此,这些数据增强方案实际上是没有计算量的。
  数据增强的第一种形式包括生成图像转换和水平反射。我们通过从256张×256张图像中随机提取224张×224张补丁(及其水平反射)来实现这一点,并在这些提取的补丁上训练我们的网络4。这使我们的培训集的规模增加了2048的一倍,尽管由此产生的训练例子当然是高度相互依赖的。如果没有这个方案,我们的网络就会遭受严重的过拟合,这将迫使我们使用更小的网络。在测试时,网络通过提取5个224×224补丁(四个角补丁和中心补丁)以及它们的水平反射(因此总共有十个补丁)进行预测,并对网络在10个补丁上的软最大层的预测进行平均。
  第二种形式的数据增强包括改变训练图像中RGB信道的强度。具体地说,我们在整个ImageNet训练集的RGB像素值集上执行主成分分析。在每个训练图像中,我们添加了多个找到的主要组件,当其大小与相应的特征值成正比时,乘以从平均为零、标准差为0.1的高斯值中提取的随机变量。因此,对于每个RGB图像像素Ixy=[IRxy、IGxy、IBxy]T,我们将添加以下数量:
在这里插入图片描述
  其中,pi和λi分别是RGB像素值的3×3协方差矩阵的特征向量和特征值,而αi是上述随机变量。每个αi只为特定训练图像的所有像素绘制一次,直到该图像再次用于训练,然后重新绘制。该方案近似地捕获了自然图像的一个重要特性,即物体身份对光照强度和颜色的变化是不变的。该方案将最高1错误率降低了1%以上。

4.2 方法二:Dropout

  结合许多不同模型的预测是一种非常成功的减少测试错误[1,3]的非常成功的方法,但对于已经需要几天时间训练的大型神经网络来说,它似乎太昂贵了。然而,有一个非常有效的模型组合版本,在训练过程中只花费大约两倍。最近引入的技术被称为“退出”[10],包括将每个隐藏神经元的输出设置为零,概率为0.5。以这种方式“退出”的神经元不参与正向传递,也不参与反向传播。因此,每次提出输入时,神经网络都会采样一个不同的架构,但所有这些架构都共享权重。这种技术减少了神经元复杂的协同适应,因为一个神经元不能依赖于特定的其他神经元的存在。
  因此,它被迫学习更健壮的特征,这与其他神经元的许多不同的随机子集一起有用。在测试时,我们使用所有的神经元,但将它们的输出乘以0.5,这是一个合理的近似,以取由指数多退出网络产生的预测分布的几何平均值。

五、Details of learning

   我们使用随机梯度下降来训练我们的模型,批量大小为128个例子,动量为0.9,重量衰减为0.0005。我们发现,这种少量的重量衰减对模型的学习很重要。换句话说,这里的重量衰减不仅仅是一个规则化器:它减少了模型的训练误差。重量w的更新规则为:
在这里插入图片描述
其中i是迭代索引,v是动量变量,是学习速率,D∂L∂wwiEDi是目标对w的导数的ith批Di上的平均值,在wi上计算。
  我们从一个标准偏差为0.01的零平均高斯分布中初始化了每一层的权值。我们初始化了第二、第四和第五卷积层以及完全连接的隐藏层中的神经元偏差。这种初始化通过向ReLUs提供积极的输入,加速了学习的早期阶段。我们用常数0初始化了其余层中的神经元偏差。
  我们对所有层使用了相同的学习率,并在整个训练过程中手动调整。我们遵循的启发式是,当验证错误率随着当前学习率而停止提高时,将学习率除以10。学习率在0.01处初始化,在终止前减少了三次。我们通过120万张图像的训练集,对这个网络训练了大约90个周期,在两个NVIDIAGTX5803GBGPU上花费了5到6天的时间。

六、结论

  我们关于ILSVRC-2010的结果总结见表1。我们的网络达到了37.5%和17.0%5的前第一名和前5名的测试集错误率。最好的性能在ILSVRC-2010竞争是47.1%和28.2%的方法,平均预测产生六个稀疏编码模型训练不同的特性[2],从那时起,最好的发表结果是45.7%和25.7%的方法平均预测在费舍尔向量(FVs)计算从两种类型的密集采样特征[24]。
  我们还参加了ILSVRC-2012年的比赛,并在表2中报告了我们的研究结果。由于ILSVRC-2012测试集标签不公开,我们不能报告我们尝试的所有模型的测试错误率。在本段的其余部分中,我们交替使用验证和测试错误率,因为根据我们的经验,它们的差异不超过0.1%(见表2)。本文中描述的CNN达到了前5%的18.2%的错误率。平均对5个类似的CNNs的预测,错误率为16.4%。训练一个CNN,在最后一个池层上有额外的第六个卷积层,将整个ImageNet2011秋季发布(1500万幅图像,22K类别)进行分类,然后在ILSVRC-2012上进行“微调”,给出错误率为16.6%的结果。平均在整个2011年秋季版本中预先训练的两个CNN与上述的五个CNN的预测,错误率为15.3%。第二好的比赛入口获得了26.2%的错误率,该方法平均了分类器在从不同类型的密集采样特征[7]计算的FV上训练的几个分类器的预测。
  最后,我们还报告了我们在2009年秋季版本的ImageNet上的错误率,其中有10,184个类别和890万张图像。在这个数据集上,我们遵循文献中的惯例,使用一半的图像进行训练,一半图像进行测试。由于没有已建立的测试集,我们的分割必然与以前的作者所使用的分割不同,但这并不会有明显的影响结果。我们在这个数据集上的前1和前5的错误率是67.4%和40.9%,由上面描述的网络获得,但在最后一个池层上有一个额外的第六卷积层。在这个数据集中发表的最佳结果是78.1%和60.9%的[19]。
在这里插入图片描述

6.1 评估

  图3显示了由网络的两个数据连接层学习到的卷积内核。该网络已经学习了各种频率和定向选择核,以及各种彩色斑点。注意两个GPU的专门化,这是第3.5节中描述的连接受限制的结果。GPU1上的内核在很大程度上是颜色不可知的,而GPU2上的内核在很大程度上是特定于颜色的。这种专门化会在每次运行中发生,并且独立于任何特定的随机权值初始化(模化GPU的重新编号)。
在这里插入图片描述
  在图4的左面板中,我们定性地评估了网络通过计算其对8个测试图像的前5个预测所学到了什么。请注意,即使是偏离中心的物体,如左上角的螨虫,也可以被网络识别。大多数排名前5名的标签看起来都很合理。例如,只有其他类型的猫被认为是豹子的合理标签。在某些情况下(格栅,樱桃)对照片的预期焦点有真正的模糊性。
  探测网络视觉知识的另一种方法是考虑在最后一个4096维隐藏层的图像引起的特征激活。如果两幅图像产生具有小欧几里得分离的特征激活向量,我们可以说,更高水平的神经网络认为它们是相似的。图4显示了测试组的五幅图像和训练组的六幅图像根据这个测量的结果最相似。注意,在像素级,检索到的训练图像在L2中通常不接近第一列中的查询图像。例如,被找回的狗和大象会呈现出各种各样的姿势。我们在补充材料中展示了更多的测试图像的结果。
  利用两个4096维实值向量之间的欧几里得距离计算相似度的效率很低,但通过训练自动编码器将这些向量压缩为短二进制码,可以提高效率。这应该会产生一种比将自动编码器应用于原始像素[14]更好的图像检索方法,原始像素[14]不使用图像标签,因此倾向于检索具有相似边缘模式的图像,无论它们在语义上是否相似。

7、成果

  我们的结果表明,一个大型的、深度的卷积神经网络能够在一个使用纯监督学习的高度具有挑战性的数据集上实现记录打破结果。值得注意的是,如果删除了单个卷积层,我们的网络的性能就会下降。例如,删除任何中间层会导致网络的顶级性能损失约2%。所以深度对于实现我们的结果真的很重要。
  为了简化我们的实验,我们没有使用任何无监督的预训练,即使我们期望它会有帮助,特别是如果我们获得足够的计算能力,在没有获得相应的标记数据数量的情况下显著增加网络的大小。到目前为止,我们的结果已经改进,因为我们使网络更大,训练的时间更长,但我们仍然有许多数量级,以匹配人类视觉系统的时间论路径。最终,我们希望在视频序列上使用非常大的深度卷积网,其中时间结构提供了非常有用的信息,但在静态图像中丢失或远不那么明显。

参考文献

[1] R.M. Bell and Y. Koren. Lessons from the netflix prize challenge. ACM SIGKDD Explorations Newsletter,
9(2):75–79, 2007.
[2] A. Berg, J. Deng, and L. Fei-Fei. Large scale visual recognition challenge 2010. www.imagenet.org/challenges. 2010.
[3] L. Breiman. Random forests. Machine learning, 45(1):5–32, 2001.
[4] D. Cire¸san, U. Meier, and J. Schmidhuber. Multi-column deep neural networks for image classification.
Arxiv preprint arXiv:1202.2745, 2012.
[5] D.C. Cire¸san, U. Meier, J. Masci, L.M. Gambardella, and J. Schmidhuber. High-performance neural
networks for visual object classification. Arxiv preprint arXiv:1102.0183, 2011.
[6] J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. ImageNet: A Large-Scale Hierarchical
Image Database. In CVPR09, 2009.
[7] J. Deng, A. Berg, S. Satheesh, H. Su, A. Khosla, and L. Fei-Fei. ILSVRC-2012, 2012. URL
http://www.image-net.org/challenges/LSVRC/2012/.
[8] L. Fei-Fei, R. Fergus, and P. Perona. Learning generative visual models from few training examples: An
incremental bayesian approach tested on 101 object categories. Computer Vision and Image Understanding, 106(1):59–70, 2007.
[9] G. Griffin, A. Holub, and P. Perona. Caltech-256 object category dataset. Technical Report 7694, California Institute of Technology, 2007. URL http://authors.library.caltech.edu/7694.
[10] G.E. Hinton, N. Srivastava, A. Krizhevsky, I. Sutskever, and R.R. Salakhutdinov. Improving neural networks by preventing co-adaptation of feature detectors. arXiv preprint arXiv:1207.0580, 2012.
[11] K. Jarrett, K. Kavukcuoglu, M. A. Ranzato, and Y. LeCun. What is the best multi-stage architecture for
object recognition? In International Conference on Computer Vision, pages 2146–2153. IEEE, 2009.
[12] A. Krizhevsky. Learning multiple layers of features from tiny images. Master’s thesis, Department of
Computer Science, University of Toronto, 2009.
[13] A. Krizhevsky. Convolutional deep belief networks on cifar-10. Unpublished manuscript, 2010.
[14] A. Krizhevsky and G.E. Hinton. Using very deep autoencoders for content-based image retrieval. In
ESANN, 2011.
[15] Y. Le Cun, B. Boser, J.S. Denker, D. Henderson, R.E. Howard, W. Hubbard, L.D. Jackel, et al. Handwritten digit recognition with a back-propagation network. In Advances in neural information processing
systems, 1990.
[16] Y. LeCun, F.J. Huang, and L. Bottou. Learning methods for generic object recognition with invariance to
pose and lighting. In Computer Vision and Pattern Recognition, 2004. CVPR 2004. Proceedings of the
2004 IEEE Computer Society Conference on, volume 2, pages II–97. IEEE, 2004.
[17] Y. LeCun, K. Kavukcuoglu, and C. Farabet. Convolutional networks and applications in vision. In
Circuits and Systems (ISCAS), Proceedings of 2010 IEEE International Symposium on, pages 253–256.
IEEE, 2010.
[18] H. Lee, R. Grosse, R. Ranganath, and A.Y. Ng. Convolutional deep belief networks for scalable unsupervised learning of hierarchical representations. In Proceedings of the 26th Annual International Conference
on Machine Learning, pages 609–616. ACM, 2009.
[19] T. Mensink, J. Verbeek, F. Perronnin, and G. Csurka. Metric Learning for Large Scale Image Classifi-
cation: Generalizing to New Classes at Near-Zero Cost. In ECCV - European Conference on Computer
Vision, Florence, Italy, October 2012.
[20] V. Nair and G. E. Hinton. Rectified linear units improve restricted boltzmann machines. In Proc. 27th
International Conference on Machine Learning, 2010.
[21] N. Pinto, D.D. Cox, and J.J. DiCarlo. Why is real-world visual object recognition hard? PLoS computational biology, 4(1):e27, 2008.
[22] N. Pinto, D. Doukhan, J.J. DiCarlo, and D.D. Cox. A high-throughput screening approach to discovering
good forms of biologically inspired visual representation. PLoS computational biology, 5(11):e1000579,
2009.
[23] B.C. Russell, A. Torralba, K.P. Murphy, and W.T. Freeman. Labelme: a database and web-based tool for
image annotation. International journal of computer vision, 77(1):157–173, 2008.
[24] J. Sánchez and F. Perronnin. High-dimensional signature compression for large-scale image classification.
In Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on, pages 1665–1672. IEEE,
2011.
[25] P.Y. Simard, D. Steinkraus, and J.C. Platt. Best practices for convolutional neural networks applied to
visual document analysis. In Proceedings of the Seventh International Conference on Document Analysis
and Recognition, volume 2, pages 958–962, 2003.
[26] S.C. Turaga, J.F. Murray, V. Jain, F. Roth, M. Helmstaedter, K. Briggman, W. Denk, and H.S. Seung. Convolutional networks can learn to generate affinity graphs for image segmentation. Neural Computation,
22(2):511–538, 2010.