渣翻,轻喷。下次再也不玩 word 转 markdown 了,难受
摘要
让我们来介绍一下 YOLO9000,YOLO9000 是一个最先进的,能够检测超过 9000 个物体类别的实时物体检测系统。首先,我们提出许多新颖且取材自先前工作的方法去提升 YOLO 的检测效果。提升后的模型就是 YOLOv2,在标准的检测任务如 PASCAL VOC 和 COCO 中效果是最好的。通过使用新颖的多尺度训练方法,YOLOv2 模型可以在多种输入尺寸上运行,并且在速度和准确率上做到简单的折中。在速度 67 FPS 的时候,YOLOv2 在 VOC 2007 数据集上获得了 76.8 mAP 的效果。在 40 FPS 的时候,YOLOv2 获得了 78.6 mAP,性能优于最先进的方法,如 Faster R-CNN、ResNet 和 SSD,同时运行速度还快的明显。最后,我们提出一种方法可以联合训练物体检测和分类。通过使用这个方法,我们可以在 COCO 检测数据集和 ImageNet 分类数据集上同时训练 YOLO9000。我们的联合训练使得 YOLO9000 能够预测没有标签数据的目标类。我们在 ImageNet 检测任务上验证了我们的方法,YOLO9000 在 COCO 数据集上有的 44 个类中,获得了 19.7 mAP 的成绩。而在 COCO 训练集没有的 156 个类上,YOLO9000 获得了 16.0 mAP。而且,YOLO9000 可以在保持实时的情况下,识别超过 9000 个不同的类。
前言
物体检测算法通常要求快速、准确和有能力识别大量的物体。自从神经网络的引入,检测算法变得越来越快速、准确。然而,大多数检测方法仍然受限于少数物体。
当前的物体检测数据集与其他分类数据集和标注数据集,数据集的量很少。最常见的检测数据集含有数千到数十万张图片,包含几十到数百个标签。分类数据集含有百万张图片,包含数十或者数百或者数千个类别。
我们希望检测数据集的规模能达到分类数据集的规模。但是,为检测数据集打标签比分类或者标注(标注通常是用户免费提供)的数据集要花费更多。因此,我们不太可能在近未来看到检测数据集和分类数据集有相同的规模。
我们提出了一种新的方法利用已有的大量分类数据集,并使用其去拓展当前检测系统的规模。我们的方法使用了一个对象分类的层次视图,这使得我们能够将不同的数据集合起来。
我们还提出了一种联合训练算法,使得我们能够在检测数据和分类数据上训练我们的物体检测器。我们的方法利用已经打好标签的检测图像去学习定位物体的准确度,同时利用分类图像去提升其词汇量和鲁棒性。
通过使用这个方法,我们训练了一个实时的物体检测器 YOLO9000,它可以检测超过 9000 个物体类别。首先,我们基于 YOLO 检测系统进行提升并获得了一个最先进的实时检测器 YOLOv2。然后,我们使用我们的数据集组合方法和联合训练算法在超过 9000 个类的 ImageNet 和 COCO 的物体检测集上训练一个模型。
所有的代码和预训练模型在 http://pjreddie.com/yolo9000/。
更好
YOLO 与最先进的检测系统相比,有大量的缺点。与 Fast R-CNN 相比,YOLO 的误差分析表明 YOLO 产生了大量的定位错误。此外,与基于区域建议方法相比,YOLO 的召回率相对较低。因此,我们主要提升召回率和定位准确率同时保持分类的准确率。
计算机视觉通常倾向于更大,更深的网络。更好的表现通常取决于训练更大的网络或者将多个模型合在一起。但是,我们希望更准确的检测器同时检测依然速度很快。我们简化了网络,使其更容易训练,而不是扩大我们的网络。我们将过去工作中的大量想法和我们自己的新颖的思想结合起来去提升 YOLO 的表现。结果的概要在表 2 中。
Batch Normalization(批次归一化).
批次归一化使得模型在收敛性方面有显著的提升,同时消除了其他形式的正则化。通过在 YOLO 的全部卷积层中增加批次归一化,我们获得了超过 2%
mAP 的提升。批次归一化还有助于正则化模型。通过使用批次归一化,我们可以从模型中去除 dropout 层,同时不会过拟合。
High Resolution Classifier(高分辨率分类器).
所有最先进的检测方法都是使用在 ImageNet 上预训练好的分类器。从 AlexNet 开始,大多数分类器对输入大小小于 256×256 的图像进行操作。原始 YOLO 在 224×224 分辨率下训练分类网络,提升分辨率到 448 来训练检测网络。这意味着网络必须同时切换到学习物体检测并调整到新的输入分辨率。
对于 YOLOv2,我们首先在 ImageNet 上以 448×448 分辨率训练了 10 个时期进行微调,这给了网络时间去调整其卷积核,使其能够在更高的分辨率上表现的更好。然后根据检测结果对网络进行微调。这个高分辨率分类网络给了我们大概 4%
mAP 的提升。
Convolutional With Anchor Boxes(锚框卷积).
YOLO 直接使用全连接层在卷积特征提取器的顶端预测边框的坐标。Faster R-CNN 没有直接预测坐标,而是使用手选的先验框来预测边框。Faster R-CNN 中的区域建议网络(RPN)只使用卷积层来预测锚框的偏差值和置信度。因为预测层是卷积的,所以 RPN 在特征图的每个位置预测这些偏差。预测偏差而不是预测坐标简化了问题,并使得网络更容易学习。
我们使用锚框去预测边框,并去除了全连接层。首先,我们去除了一个池化层使得网络输出的卷积层有了更高的分辨率。我们还将网络的输入从 448×448 缩小到了 416。我们这么做是希望我们的特征图有奇数个位置,这样就有单个中心格。物体,特别是大物体,倾向于占据图像的中心,所以最好用中心的单个格子去预测这些物体而不是使用相邻的四个格子。YOLO 的卷积层使用因子 32 对图像进行降采样,所以通过输入分辨率为 416 的图像,我们可以得到 13×13 大小的特征图。
当我们移动锚框的时候,我们还将类预测机制从空间位置和每个锚框的预测类和物体性中解耦。继续 YOLO,物体性预测依然预测正确标签与建议框之间的 IOU,分类预测器去预测框中物体是什么类别的条件概率。
使用锚框使我们的准确率得到了小小的下降。YOLO 只能为每个图像预测 98 个框,但是使用锚框我们的模型可以预测超过 1000 个。不使用锚框,我们的中等模型获得 69.5 mAP 和 81% 的召回率。使用锚框,我们的模型获得 69.2 mAP 和 88% 的召回率。虽然 mAP 下降了,但召回率的上升意味着我们的模型有更多空间去提升。
Dimension Clusters(尺寸聚类).
当我们使用有锚框的 YOLO 时,我们遇到了两个问题。第一个问题是框的尺寸是手选的。神经网络可以学习适当的调整框,但是如果我们在开始的时候挑选更好的先验框,就可以使网络更容易学习去预测好的检测。
我们在训练集的边框上使用 k-means 聚类算法去自动寻找最佳先验而不是手动挑选。如果我们使用标准的使用欧几里德距离的 k-means 算法,更大的框会比小的框产生更多的错误。然而,我们真正想要的基于 IOU 分数的先验,而 IOU 分数独立于框的大小。因此,对于我们的距离度量,我们使用:
我们使用了不同的 k 值来跑 k-means 算法,并绘制最近质心的平均 IOU,见图 2。权衡模型复杂度和高召回率之间,我们选择了 k=5。聚类的质心与手工选取的锚框有显著差异。短而宽的框很少,而高瘦的框很多。
在表 1 中我们对比了我们聚类政策选择的最近质心和手选的锚框的平均 IOU。在只有 5 个先验质心的表现为平均 IOU 61.0 与 9 个锚框的表现平均 IOU 60.9 相似。这表明使用 k-means 来生成边框开始使得模型有更好的表现,并使任务更易于学习。
Direct location prediction(直接位置预测).
YOLO 使用锚框后,我们遇到的第二个问题是:模型不稳定,特别是在早期迭代的时候。大多数不稳定的原因来自预测框的(x,y)位置。在区域建议网络中,网络预测和,中心坐标(x,y)的计算如下:
比如,预测 时会向右移动一个锚框的宽度,预测 时会向左移动同样的一个锚框宽度。
这个公式并没有任何约束,所以任何一个锚框可以出现在图像的任何一个点,而不用管位置预测框。在随机初始化模型的情况下,模型要花很长时间才能稳定的去预测敏感偏差。
我们没有预测偏移量,而是采用 YOLO 的方法,预测相对于网格单元位置的位置坐标。这将正确标签的值限制在 0 和 1 之间。我们使用逻辑激活函数来限制网络的预测在这个范围内。
网络在输出特征图的每个单元格预测 5 个边框。网络为每个边框预测 5 个坐标,、、、和。如果单元格与图像左上角的偏移量为(,),且边框具有宽度和高度,,则预测值公式为:
因为我们约束了位置预测,所以参数更容易学习,使得模型更稳定。使用尺寸聚类和直接预测边框的中心位置比使用锚框的版本提升了 YOLO 大概 5% 的精确度。
Fine-Grained Features(细粒度特征).
这个改进的 YOLO 在 13×13 的特征图上进行检测。虽然这对大型物体充足,但更细的特征对小物体有好效果。Faster R-CNN 和 SSD 都在网络中的特征图上运行他们的区域建议网络以获得一系列分辨率。我们使用一种不同的方法,简单添加一个 passthrough 层从之前几层获得 26×26 分辨率的特征。
像 ResNet 的恒等映射一样,passthrough 层通过相邻的特征叠加到不同的通道而不是空间位置来连接更高分辨率的特征和低分辨率的特征。这将 26×26×512 的特征图转换层 13×13×2048 的特征图,这使得其可以被原先的特征图连接。我们的检测器在这个拓展后的特征图上运行,这样能获得更细的特征。这使得性能有 1% 的提升。
Multi-Scale Training(多尺度训练).
最初的 YOLO 使用 448×448 分辨率的输入。随着锚框加入网络,我们将分辨率改到 416×416。但是,由于我们的模型只使用卷积层和池化层,所以它可以被动态的调整。我们 YOLOv2 能够在不同大小的图像上运行,所以我们这样训练模型。
我们每隔几次小迭代就改变网络而不是固定网络的输入图像大小。我们的网络每 10 个批次就随机选择一个新的图像尺寸。因为我们的模型以 32 的倍率进行降采样,所以我们以 32 的倍数变化:{320,352,…,608}。因此,最小的可选输入时 320×320,最大的是 608×608。我们重设网络到那个尺寸并继续训练。
这种机制迫使网络学会在不同的输入尺寸上进行预测。这意味着同一个网络可以在不同的分辨率下预测检测。网络在更小的尺寸下运行得更快,所以 YOLOv2 在速度和准确性之间提供了一个简单的折衷。
在低分辨率下,YOLOv2 是一种廉价、相当精确的探测器。在 288×288 的分辨率下,其运行速度超过 90 FPS 而 mAP 和 Fast R-CNN 一样好。这使得其非常适合较小的 GPU、高分辨率视频或者多个视频流。
在高分辨率下 YOLOv2 是最先进的检测器,在 VOC2007 数据集上有 78.6 的 mAP 同时还保持着实时的速度。YOLOv2 与其他框架在 VOC2007 的比较见表 3 和图 4。
Further Experiments(进一步实验).
我们在 VOC2012 上训练了 YOLOv2 检测器。表 4 显示了 YOLOv2 与其他最先进的检测系统的性能比较。YOLOv2 实现 73.4 mAP,同时运行速度远远快于竞争的方法。我们还在 COCO 数据集上训练了我们的模型并和其他的方法进行比较,结果在表 5。在 VOC 评估(IOU=.5)上,YOLOv2 得到 44.0 mAP,与 SSD 和 Faster R-CNN 相当。
更快
我们希望检测能准确,但是我们也希望能够快。大多数用于探测的应用,如机器人或自动驾驶,依赖于低延迟预测。为了最大限度地提高性能,为了使 YOLOv2 快,我们从头开始设计。大多数检测框架都依赖 VGG-16 作为基本的特征提取器。VGG-16 是一个功能强大、准确的分类网络,但它不必要的复杂。VGG-16 的卷积层需要 306.9 亿个浮点运算去处理单个 224×224 分辨率的图像。
YOLO 框架使用基于 GoogLeNet 架构的定制网络。这个网络比 VGG-16 快,仅使用 85.2 亿个运算去前向传播。然而,它的准确度比 VGG-16 稍差。在 ImageNet 上,对于单张裁剪图像,224×224 分辨率下的 top-5 准确率,YOLO 的自定义模型获得了 88.0%,而 VGG-16 则为 90.0%。
Darknet-19.
我们提出了一个新分类模型作为 YOLOv2 的基础。我们的模型建立在先前的网络设计的工作以及该领域的共同知识的基础上。与 VGG 模型类似,我们主要使用 3×3 卷积核,并且在每次池化之后将通道数增加一倍。在网络中网络(NIN)的输出后,我们使用全局平均池化预测,把 1×1 的卷积核置于 3×3 的卷积核之间,用来压缩特征。我们使用批次归一化稳定模型训练,加速收敛和正则化模型。
我们最终的模型,叫 Darknet-19,拥有 19 个卷积层和 5 个最大池化层。完整的网络描述见表 6。Darknet-19 只需要 55.8 亿次运算去处理一张图像。但在 ImageNet 上却达到了 72.9% 的 top-1 准确率和 91.2% 的 top-5 准确率。
Training for classification(分类训练).
我们使用 Darknet 神经网络框架,在标准 ImageNet 1000 分类数据集上使用随机梯度下降(起始学习速率为 0:1)、多项式速率衰减(幂为 4)、权重衰减为 0:0005 和动量为 0:9 对网络进行 160 个时期的训练。在训练期间,我们使用标准的数据增强技巧,包括随机裁剪、旋转、色调、饱和度和曝光变化。
如上所述,在我们对 224×224 的图像进行初始训练之后,我们在更大的尺寸 448 上对模型进行微调。对于这次微调,我们训练了上述参数但是只使用了 10 个时期并且以的学习率开始。在这种更高分辨下,我们的网络达到了 top-1 准确率 76.5%,top-5 准确率 93.3%。
Training for detection(检测训练).
我们修改这个网络进行检测,删除了最后一个卷积层,作为替代添加了 3 个有 1024 个滤波器的 3×3 卷积层,然后再加上最后一个 1×1 的卷积层,输出与我们检测需要的输出一样。对于 VOC,我们预测 5 个框,每个框有 5 个坐标和 20 个类别,所以有 125 个滤波器。我们还在最后的 3×3×512 层和倒数第二个卷积层之间加了一个 passthrough 层,以便我们的模型可以使用细粒的特征。
我们训练网络 160 个时期,以学习率开始,并在第 60 和 90 个时期的时候除以 10。我们使用 0.0005 的权重衰减和 0.9 的动量。我们对 YOLO 和 SSD 进行类似的数据增强,随机裁剪,色彩偏移等。我们对 COCO 和 VOC 使用相同的训练策略。
更强
我们提出一种再分类数据和检测数据上联合训练的机制。我们的方法使用标记为检测的图像来学习边框坐标预测和目标之类的特定检测信息以及如何对常见目标进行分类。它使用仅具有类别标签的图像来扩展可检测类别的数量。
在训练期间,我们混合检测数据集和分类数据集的图像。当我们的网络看到了标记为检测的图像时,我们使用完整的 YOLOv2 loss 函数进行反向传播,当它看见一个分类图像时,我们只是用分类特定的 loss 函数进行反向传播。
这种方法遇到了一点挑战。检测数据集只有通用目标和通用标签,如 “狗” 或 “船”。分类数据集有更广更深的标签范围。ImageNet 有超过一百种品种的狗,包括 “诺福克㹴犬”,“约克夏㹴” 和 “贝林登犬”。如果我们想在两个数据集上训练,我们需要一个连贯的方式来合并这些标签。
大多数分类方法使用一个 softmax 层去计算所有可能类的最终概率分布。使用 softmax 假定类别之间时相互排斥的。这给数据集组合带来了问题,比如你不想用这个模型组合 ImageNet 和 COCO,因为 “诺福克㹴犬” 和 “狗” 不是互斥的。
我们可以使用一个多标签的模型来组合假定不互助的数据集。这个方法无视我们所知道的数据的全部结构,比如 COCO 中所有的类是互斥的。
Hierarchical classification(分层分类).
ImageNet 的标签从 WordNet 提取,这是一个用于构建概念及其关系的语言数据库。在 WordNet 中,“诺福克㹴犬” 和 “约克夏㹴” 都是 “㹴” 的下义词,“㹴” 是 “猎犬” 的一种,“猎犬” 是 “狗” 的一种,“狗” 是 “犬类动物” 的一种等等。绝大多数的分类方法假定标签是一个扁平结构,但是对于联合数据集,结构正是我们所需要的。
WordNet 的结构就像一个有向图,而不是树,因为语言是复杂的。比如 “狗” 既是 “犬科动物” 的一种,也是 “家畜” 的一种,这两个在 WordNet 中都是同义词。我们没有使用完整的图结构,而是通过 ImageNet 的概念构建一个分层树来简化问题。
为了构建这棵树,我们检测了 ImageNet 中的视觉名词,并查看它们通过 WordNet 图到根节点的路径,本例中为 “物理物体”。许多同义词在图中只有一条路径,所以我们先将所有这些路径添加到我们的树中。然后我们反复检查我们留下的概念,并在树上添加尽可能少的路径。因此,如果一个概念有两条路径到根节点,一条路径会给树增加三条边,另一条路径只增加一条边,那么我们选择更短的路径。
最终的结果就是 WordTree,一个视觉概念分层模型。为了使用 WordTree 进行分类,我们预测每个节点的条件概率,以得到同义词集合中每个同义词下义词的概率。比如,在 “㹴” 节点我们预测:
如果我们想要计算一个特定节点的绝对概率,我们只需要简单的随着通道到树的根节点,并乘以条件概率。所以,如果我们想要知道一张图是不是为 “诺福克㹴犬” 我们计算:
对于分类目的,我们假定图像含有一个目标:。
为了验证这种方法,我们在使用了 1000 类的 ImageNet 构建的 WordTree 上训练 Darknet-19。为了构建 WordTree1k,我们添加了所有将标签空间从 1000 扩展到 1369 的中间节点。在训练过程中,我们将正确标签向树后向传播,以便如果图像被标记为 “诺福克㹴犬”,则它也被标记为 “狗” 和 “哺乳动物” 等。为了计算条件概率,我们的模型预测一个有 1369 个值的向量,并且我们计算了相同概念的下义词在所有同义词集上的 softmax,见图 5。
使用与之前相同的训练参数,我们的分层 Darknet-19 达到了 top-1 71.9% 的准确性,top-5 90.4% 的准确性。尽管增加了 369 个额外概念,我们的网络预测了一个树形结构,我们的准确率仅下降了一点点。以这种方式进行分类也有一些好处。以这种方式进行分类也有一些好处。在新的或未知的目标类别上性能会降低。例如,如果网络看到一只狗的照片,但不确定它是什么类型的狗,它仍然会更高置信度地预测 “狗”,但是在下义位扩展之间有更低的置信度。
这个公式同样适用于检测,现在,我们使用 YOLOv2 的物体预测器给我们一个的值,而不是假定每张图都有一个物体。检测器预测一个边框和概率树。我们向下遍历树,我们取最高置信度的路径分割,直到达到一个阈值,然后我们预测物体类。
Dataset combination with WordTree(数据集与词语树结合).
我们可以使用合理的 WordTree 将多个数据集以合理的方式组合在一起。我们只需要将数据集中的类别映射到数中的语法集。图 6 展示了一个使用 WordTree 组合 ImageNet 和 COCO 的例子。WordTree 是非常多样化的,因此我们可以将此项技术用于大多数数据集。
Joint classification and detection(分类检测联合).
现在我们可以使用 WordTree 去组合数据集,我们可以在分类和检测数据集上训练我们的联合模型。我们想要训练一个非常大规模的检测器,所以我们使用 COCO 检测数据集和完整版本 ImageNet 的前 9000 个类创建我们的组合数据集。我们还想评估我们的方法,所以我们添加任意 ImageNet 挑战中未包含的类。相应的这个数据集的 WordTree 有 9418 个类别。ImageNet 是一个很大的数据集,所以我们通过对 COCO 进行过采样来平衡数据集,使得 ImageNet 只比 COCO 数据集大于 4 倍。
使用这个数据集,我们训练了 YOLO9000。由于受到输出大小的限制,我们使用 YOLOv2 的基础结构但是只有 3 个先验而不是 5 个。当我们的网络看到一个检测图像时,我们正常的反向传播 loss。对于分类 loss,我们只在标签更高等级上反向传播函数。例如,如果标签是 “dog”,我们会将任何错误分配给树下面的预测,“德国牧羊犬” 和 “金毛猎犬”,因为我们没有这些信息。
当它看到分类图像的时候,我们只反向传播分类 loss。要做到这点,我们只需要找到这个类最高概率的边框,然后计算预测树上的 loss。我们还假定预测框和标签框重叠至少 0.3 个 IOU,并基于此假设反向传播对象性 loss。
使用这种联合训练,YOLO9000 学习使用 COCO 中的检测数据来查找图像中的目标,并学习使用 ImageNet 的数据对这些目标进行分类。
我们在 ImageNet 检测任务上评估 YOLO9000。ImageNet 的检测任务与 COCO 共享 44 个目标类别,这意味着 YOLO9000 只能看到大多数测试图像的分类数据,而不是检测数据。YOLO9000 在从未见过任何标记的检测数据的情况下,整体上获得了 19.7 mAP,在不相交的 156 个目标类别中获得了 16.0 mAP。这个 mAP 高于 DPM 算法的结果,但是 YOLO9000 是在只有部分监督的不同的数据集上训练的。它也同时实时检测 9000 个其他类别。
当我们分析 YOLO9000 在 ImageNet 上的表现的时候,我们发现它很好的学习新的动物种类,但是学习如衣服、装备这种类别的时候比较困难。新动物容易学习是因为目标检测可以从 COCO 的动物类中得到很好的泛化。相反的,COCO 中没有任何衣服的边框标签,只有人的。所以 YOLO9000 很难对 “墨镜”、“泳裤” 等类建模。
结论
我们介绍了 YOLOv2 和 YOLO9000,两个实时系统。YOLOv2 是各种检测数据集上最先进的,比其他检测系统快。此外,它可以运行在各种图像大小,提供速度和准确性之间的平滑折衷。
YOLO9000 是一个通过联合优化检测、分类数据集检测超过 9000 个类的实时检测框架。我们使用 WordTree 将各种来源的数据和我们联合优化技术组合在一起,并同时在 ImageNet 和 COCO 上训练。YOLO9000 是缩小检测数据集和分类数据集之间大小差距的重要一步。
我们的许多技术都可以泛化到目标检测之外,我们在 ImageNet 上的 WordTree 为图像分类提供了更丰富,详细的输出空间。使用分层分类的数据集组合在分类和分割领域很有用。像多尺度训练这样的训练技术可以为各种视觉任务提供益处。
对于未来的工作,我们希望使用类似的技术来进行弱监督的图像分割。我们还计划在训练期间使用更强大的匹配策略为分类数据分配弱标签,以改善检测结果。计算机视觉受到大量标记数据。我们将继续寻找方法,将不同来源和不同结构的数据整合起来,形成更强大的视觉世界模型。
引用
[1] S. Bell, C. L. Zitnick, K. Bala, and R. Girshick. Insideoutside net: Detecting objects in context with skip pooling and recurrent neural networks. arXiv preprint arXiv:1512.04143, 2015. 6
[2] J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei. Imagenet: A large-scale hierarchical image database. In Computer Vision and Pattern Recognition, 2009. CVPR 2009. IEEE Conference on, pages 248–255. IEEE, 2009. 1
[3] M. Everingham, L. Van Gool, C. K. Williams, J. Winn, and A. Zisserman. The pascal visual object classes (voc) challenge. International journal of computer vision, 88(2):303–338, 2010. 1
[4] P. F. Felzenszwalb, R. B. Girshick, and D. McAllester. Discriminatively trained deformable part models, release 4. http://people.cs.uchicago.edu/pff/latent-release4/. 8
[5] R. B. Girshick. Fast R-CNN. CoRR, abs/1504.08083, 2015.4, 5, 6
[6] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. arXiv preprint arXiv:1512.03385, 2015. 2, 4, 5
[7] S. Ioffe and C. Szegedy. Batch normalization: Accelerating deep network training by reducing internal covariate shift. arXiv preprint arXiv:1502.03167,2015. 2, 5
[8] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems, pages 1097–1105, 2012. 2
[9] M. Lin, Q. Chen, and S. Yan. Network in network. arXiv preprint arXiv:1312.4400, 2013. 5
[10] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Doll´ar, and C. L. Zitnick. Microsoft coco: Common objects in context. In European Conference on Computer Vision, pages 740–755. Springer, 2014. 1, 6
[11] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, and S. E. Reed. SSD: single shot multibox detector. CoRR, abs/1512.02325, 2015. 4, 5, 6
[12] G. A. Miller, R. Beckwith, C. Fellbaum, D. Gross, and K. J. Miller. Introduction to wordnet: An on-line lexical database. International journal of lexicography, 3(4):235–244, 1990.6
[13] J. Redmon. Darknet: Open source neural networks in c. http://pjreddie.com/darknet/, 2013–2016. 5
[14] J. Redmon, S. Divvala, R. Girshick, and A. Farhadi. You only look once: Unified, real-time object detection. arXiv preprint arXiv:1506.02640, 2015. 4, 5
[15] S. Ren, K. He, R. Girshick, and J. Sun. Faster r-cnn: Towards real-time object detection with region proposal networks. arXiv preprint arXiv:1506.01497,2015. 2, 3, 4, 5, 6
[16] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, A. C. Berg, and L. Fei-Fei. ImageNet Large Scale Visual Recognition Challenge. International Journal of Computer Vision (IJCV), 2015. 2
[17] K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014. 2, 5
[18] C. Szegedy, S. Ioffe, and V. Vanhoucke. Inception-v4, inception-resnet and the impact of residual connections on learning. CoRR, abs/1602.07261, 2016. 2
[19] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich. Going deeper with convolutions. CoRR, abs/1409.4842,2014. 5
[20] B. Thomee, D. A. Shamma, G. Friedland, B. Elizalde, K. Ni, D. Poland, D. Borth, and L.-J. Li. Yfcc100m: The new data in multimedia research. Communications of the ACM, 59(2):64–73, 2016. 1