什么是 ImageNet 以及为什么 ImageNet 对计算机视觉领域如此重要
当你使用先进的 GenAI 工具为研究论文创造图片,或乘坐旧金山的自动驾驶出租车时,您可能没有意识到这些技术的进步归功于一个精心准备的数据集——ImageNet。
ImageNet是一个大规模的公开可用图片数据库,旨在推进视觉目标识别的研究。它包含超过 1400 万张图片,每张图片都附有 WordNet 同义词集的标签。这些详细的注释对于确保图片的准确识别和分类至关重要,使 ImageNet 成为训练和评估各种计算机视觉任务深度学习模型的宝贵资源。
虽然 ImageNet 并非图片数据所有者,但它提供了图片的 URL 和缩略图,方便我们研究和获取这些图片。这个数据集内容丰富,组织结构清晰,已经成为开发更精确、更有效的视觉识别系统的基本工具,为计算机视觉的进步做出了重要贡献。
1.PNG
ImageNet Synsets 中的 15 张示例图片(每个类别一张图片)。 b Corel-1000 数据集展示了来自 10 个类别的 15 张示例图片。
什么是 ImageNet?
ImageNet 是一个综合性的公开大规模图片数据库,支持各种计算机视觉任务。由人工智能研究员李飞飞 (Fei-Fei Li) 发起,它包含超过 1400 万张图片,每张图片都根据 WordNet 层次结构验证标签进行注释。这种结构化的标签系统对于准确识别对象至关重要,使得 ImageNet 成为训练先进视觉识别算法的基础资源。
该数据集采用众包方式进行其注释过程。图片级注释表明是否存在某个对象类别,而对象级注释则提供围绕对象可见部分的边界框。ImageNet 利用 WordNet 模式的一种变体进行分类,并包括 120 个犬种类别,用于细粒度分类。到 2012 年,它成为 Mechanical Turk 的最大学术用户,工人平均每分钟能过识别 50 张图片。
除了基本标签外,超过一百万个图片含有详细的边界框,增强了数据集的实用性,可以用于开发能够准确识别和定位对象的算法。自 ImageNet 推出以来,它显著推进了图片分类和目标检测的发展,影响了学术研究以及自动驾驶汽车、医学成像和安全系统等行业的实际应用。它仍然是评估视觉识别技术的关键基准。
对图片训练数据集的需求
训练图像分类算法是一项意义重大的任务,需要大规模精心策划的图像数据集。这些数据集必须紧密模仿算法在现实世界中会遇到的数据类型,在算法中扮演着关键角色。这些数据集必须包含代表算法预期识别和分类的不同类别图像。在监督学习中,标记的数据集是必不可少的,因为每张图像都带有特定的标签,为算法从数据中学习提供必要的指导。这些标签可能包括有关图像中出现的对象、它们的位置,甚至它们与场景中其他对象的关系信息。通常,数据集被分为两个主要子集:训练集和测试集。训练数据集通常约占总数据集的 70%,用于教算法如何识别规律并进行预测。剩余的 30% 的数据集被用于测试,允许研究人员评估算法在未见过的图像上的性能。这个过程确保了算法能够很好地泛化到新数据,并在现实世界场景中准确执行。
除了应用于训练算法外,图像数据集还可以用作评估和比较不同计算机视觉算法的基准。研究人员可以通过将各种算法应用于相同的数据集,客观地评估它们在图像分类、目标检测和图像分割等任务中的性能。这一性能测试过程对于推动该领域的发展至关重要,因为它展示出了不同方法的优势和劣势,并推动了算法设计中的创新。例如,在医学成像领域中,基准数据集用于评估在扫描中检测疾病的算法,如 CT 或 MRI 图像,确保这些算法满足临床使用的高标准。同样,在自动驾驶领域中,图像数据集用于训练和测试系统,以识别和响应行人、其他车辆和交通标志等对象,有助于开发更安全、更可靠的自动驾驶技术。
下载并预处理 ImageNet 数据集
下载 ImageNet 数据集是一个资源密集型过程,需要大量的磁盘空间,并且可能需要几天时间才能完成。鉴于数据集的大小和复杂性,建议使用具有足够额外存储空间的强大实例来高效下载和提取数据集。
下载前,需要在 ImageNet 网站上注册账号并同意使用条款。完成注册后,您可以访问下载链接。由于数据集被分成了几个大文件,我们无法通过“另存为”的方法高效下载数据。因此,我们需要一个专门的下载脚本。TensorFlow 在其代码库中提供了这样的脚本,通过自动化下载和组织数据集文件来简化下载过程。这个脚本确保数据集能够完全被正确下载,并以清晰的组织结构存储,以便用于后续的处理和在模型训练。
使用深度卷积神经网络进行图片分类
图像分类是计算机视觉中的基础技术,它能够识别照片或视频中的主要对象并进行分类。这个过程在很大程度上依赖于 AI 深度学习模型,这些模型能够分析图像并准确执行图像识别任务。
深度卷积神经网络(CNN)是现代图像分类的支柱。它们擅长处理复杂的对象识别任务,即使对象外观、光照和背景会有所变化和不同。虽然像 ImageNet 这样的大型数据集提供了广泛的训练数据,但由于视觉数据的多样性极大,图像分类问题本质上仍然非常复杂。
然而,CNN 特别适合这项任务,因为它们对图像的性质做出了准确的假设。它们基于统计的稳定性和像素依赖的局部性原则运作,这意味着它们能够有效捕捉图像中的空间层次结构和局部模式。这种能力使 CNN 能够应用到不同类型的图像中,成为各种应用中强大的图像分类工具。
ImageNet 在计算机视觉领域的应用
ImageNet 数据集资源能够用于开发和测试各种计算机视觉任务,包括图像分类、目标检测、图像处理和目标定位。ImageNet 庞大且多样化的注释图像数据集对于训练能够准确识别和分类图像中对象的模型至关重要。
几种开创性的深度学习架构,如 ResNet、AlexNet 和 VGG,其成功归功于使用 ImageNet 数据集进行的广泛性能测试。这些模型都基于 ImageNet 训练,在图像分类中树立了新标准,并且自此应用于面部识别、自动驾驶等众多计算机视觉应用中。
ImageNet 的影响远远超出了深度学习,因为它仍在不断塑造着 CV 领域。它对图像理解和分类任务的影响是显而易见的。ImageNet 仍然是评估新模型和算法性能的关键数据集。随着当代人工智能研究和应用的不断进步,ImageNet 作为计算机视觉研究的基石,将持续推动创新并提高视觉识别系统的准确性和有效性。
使用 ImageNet 的最佳实践
在使用 ImageNet 数据集时,遵循最佳实践能够确保效率和数据安全。其中一个关键步骤是对数据集进行备份,以减少数据丢失的风险。您可以通过使用 AWS 将数据集存储在 Amazon S3 实现可靠且可扩展的备份解决方案。
将数据集部署到新实例的过程十分简单,在各种实例上设置训练和测试环境也十分容易。对于大型项目,您可以使用脚本和扩展技术将数据集部署到多个实例,从而实现并行处理,更快地训练模型。
总结
ImageNet 对于计算机视觉领域至关重要,提供了超过 1400 万张图片,每张图像都使用 WordNet 层次结构进行注释。该数据集由李飞飞及其团队创建,包括图像级和对象级的注释,因此对于训练和测试深度学习模型至关重要。详细的注释有助于提高图像中的对象识别和定位。
ImageNet 的影响不仅限于研究。它在自动驾驶和医学成像等实际应用中被广泛使用,用于评估和增强视觉识别技术。通过提供一个多样化且结构清晰的数据集,ImageNet 是持续提升计算机视觉系统准确性和有效性的关键工具。
参考文献
Deng, J., Dong, W., Socher, R., Li-Jia, L., Li, K., & Fei-Fei, L. (2009). ImageNet: A Large-Scale Hierarchical Image Database. IEEE Conference on Computer Vision and Pattern Recognition (CVPR).
Fellbaum, Christiane. "WordNet and Wordnets." In Encyclopedia of Language and Linguistics, edited by Keith Brown et al., 2nd ed., 665-670. Oxford: Elsevier, 2005. https://wordnet.princeton.edu/.