ImageNet数据集
ImageNet与ILSVRC简介
ImageNet是一种数据集,而不是神经网络模型。斯坦福大学教授李飞飞为了解决机器学习中过拟合和泛化的问题而牵头构建的数据集。该数据集从2007年开始手机建立,直到2009年作为论文的形式在CVPR 2009上面发布。直到目前,该数据集仍然是深度学习领域中图像分类、检测、定位的最常用数据集之一。基于ImageNet有一个比赛,从2010年开始举行,到2017年最后一届结束。该比赛称为ILSVRC,全称是ImageNet Large-Scale Visual Recognition Challenge,每年举办一次,每次从ImageNet数据集中抽取部分样本作为比赛的数据集。ILSVRC比赛包括:图像分类、目标定位、目标检测、视频目标检测、场景分类。在该比赛的历年优胜者中,诞生了AlexNet(2012)、VGG(2014)、GoogLeNet(2014)、ResNet(2015)等耳熟能详的深度学习网络模型。“ILSVRC”一词有时候也用来特指该比赛使用的数据集,即ImageNet的一个子集,其中最常用的是2012年的数据集,记为ILSVRC2012。因此有时候提到ImageNet,很可能是指ImageNet中用于ILSVRC2012的这个子集。ILSVRC2012数据集拥有1000个分类(这意味着面向ImageNet图片识别的神经网络的输出是1000个),每个分类约有1000张图片。这些用于训练的图片总数约为120万张,此外还有一些图片作为验证集和测试集。ILSVRC2012含有5万张图片作为验证集,10万张图片作为测试集(测试集没有标签,验证集的标签在另外的文档给出)。
ILSVRC2012训练集 | 1000个分类 | 约120万张图片 |
---|---|---|
ILSVRC2012验证集 | 1000个分类 | 5万张图片 |
ILSVRC2012测试集 | 1000个分类 | 10万张图片 |
ILSVRC2012是ImageNet的子集,而ImageNet本身有超过1400多万张图片,超过2万多的分类。其中有超过100万张图片有明确类别标注和物体位置标注。
对于如基于ImageNet的图像识别的结果评估,往往用到两个准确率的指标,一个是top-1准确率,一个是top-5准确率。Top-1准确率指的是输出概率中最大的那一个对应的是正确类别的概率;top-5准确率指的是输出概率中最大的5个对应的5个类别中包含了正确类别的概率。
数据集的下载与处理
前面提到过ImageNet的比赛包含多个项目,如果只考虑图像识别的话,训练集只需要上图中Task1&2部分那个(大小138G)。下面是两个下载方法:
1). 官网下载:https://image-net.org/
可以点上面的链接也可以百度直接搜索。如图需要点Download,但是没有登录的话就算点了也无法进入下载页面,需要先注册登录。右上角sign up和log in。注册的邮箱必须是学校邮箱,即edu的邮箱。注册登录成功后就可以点积Download进入下载页面,进入了选择2012。然后就能看到前面1里面出现的那个图了,可以自己下载训练集、验证集和测试集。
2). 官网可能会经常卡住,我自己下的时候就老是失败,因此在网上找了个种子链接,用迅雷啥的下起来挺快的。该链接是在参考文献里面看到的:https://hyper.ai/datasets/4889。
需要注意的是测试集没有相应的标注,因为比赛的时候会用这些测试数据来检测参赛者的神经网络精度,因此不会公开。所以我们常用验证集来进行自己的网络自测。然而上面所示的验证集解压后也是没有标注的,全是.JPEG图片,因此需要额外下载对应的标注。无论是从官网还是方法2的网站,都可以下载到ILSVRC2012对应的文件:Development kit (Task 1 & 2)。该文件里面含有验证集的标注。