Ultralytics YOLO27:

ImageNette 数据集#

ImageNette 数据集是 ImageNet 的一个子集,包含 10 个易于区分的类别,由 fast.ai 创建,旨在为软件开发和教育提供一个更快速、更易用的 ImageNet 版本。它包含 13,394 张彩色图像,其中 9,469 张用于训练,3,925 张用于验证,涵盖丁鲷、英国史宾格犬、磁带播放器和法国号等类别,因此 图像分类 模型只需几分钟即可完成训练,而完整的 1,000 类 ImageNet 则需要数小时。

主要特性#

  • ImageNette 包含 13,394 张图像,分为 10 个类别:丁鲷、英国史宾格犬、磁带播放器、链锯、教堂、法国号、垃圾车、加油泵、高尔夫球和降落伞。
  • 它提供了预定义的数据集划分,包括 9,469 张训练彩色图像和 3,925 张验证彩色图像,图像尺寸各不相同。
  • 这 10 个区分明显的类别使 ImageNette 训练速度快、易于分析,因此它被广泛用于图像分类的原型设计和教学。

数据集结构#

ImageNette 提供了预定义的训练集/验证集划分,每个类别都存储在自己的文件夹中:

划分图像类别
训练9,46910
验证3,92510

每个类别的确切图像数量有所不同,在不具备完整 ImageNet 数据集规模的情况下,为快速训练和基准测试提供了真实的数据分布。

应用#

ImageNette 数据集被广泛用于训练和评估图像分类任务中的深度学习模型,例如卷积神经网络 (CNNs) 和其他机器学习算法。其直观的格式和精心选择的类别使其成为机器学习计算机视觉领域初学者和资深从业者都很实用的资源。

使用方法#

要在 ImageNette 数据集上使用标准图像尺寸 224x224 训练模型 100 个周期,你可以使用以下代码片段。有关可用参数的完整列表,请参阅模型训练页面。

训练示例
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="imagenette", epochs=100, imgsz=224)

示例图像和标注#

ImageNette 数据集包含各种物体和场景的彩色图像,为图像分类任务提供了多样化的数据集。以下是该数据集中的一些图像示例:

ImageNette 分类数据集示例图像

该示例展示了 ImageNette 数据集中图像的多样性和复杂性,凸显了多样化数据集对于训练稳健的图像分类模型的重要性。

ImageNette160 和 ImageNette320#

为了加快原型设计和训练,ImageNette 还提供两个缩小尺寸的版本:ImageNette160ImageNette320。这些数据集与完整的 ImageNette 保持相同的类别和结构,但图像会调整为更小的最大边长。它们特别适用于初步模型测试或计算资源有限的情况。

要使用这些数据集,只需在训练命令中将 imagenette 替换为 imagenette160imagenette320。以下代码片段对此进行了演示:

使用 ImageNette160 的训练示例
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
使用 ImageNette320 的训练示例
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)

# Train the model with ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)

这些较小版本的数据集可以在开发过程中实现快速迭代,同时仍能提供真实的图像分类任务。你还可以通过 Ultralytics Platform 管理分类数据集并在云端运行训练。

引用和致谢#

如果你在研究或开发工作中使用 ImageNette 数据集,请适当致谢。有关 ImageNette 的更多信息,请访问 ImageNette 数据集 GitHub 页面

我们感谢 fast.ai 团队创建并维护 ImageNette,为机器学习计算机视觉研究社区提供了宝贵资源。

常见问题#

  • ImageNette 数据集ImageNet 的一个简化子集,包含 10 个易于区分的类别,例如丁鲷、英国史宾格犬和法国号。它包含 13,394 张图像(9,469 张训练图像和 3,925 张验证图像),由 fast.ai 创建,为图像分类模型的高效训练和评估提供了更易管理的数据集。这使其特别适合机器学习和计算机视觉领域的快速软件开发和教育用途。

  • ImageNette 总共包含 13,394 张图像,其中 9,469 张用于训练,3,925 张用于验证,分为 10 个类别:丁鲷、英国史宾格犬、磁带播放器、链锯、教堂、法国号、垃圾车、加油泵、高尔夫球和降落伞。每个类别都存储在自己的文件夹中,遵循 Ultralytics 所需的标准分类布局。

  • 要在 ImageNette 上使用 100 个周期训练 YOLO 模型,请使用以下命令。请确保你已配置好 Ultralytics YOLO 环境。

    训练示例
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")  # load a pretrained model (recommended for training)
    
    # Train the model
    results = model.train(data="imagenette", epochs=100, imgsz=224)

    有关更多详情,请参阅训练文档页面。

  • ImageNette 数据集具有以下优势:

    • 快速且简单:它只有 10 个类别和约 13,000 张图像,与完整的 ImageNet 相比,训练复杂度和耗时都低得多。
    • 教育用途:非常适合学习和教授图像分类基础知识,因为它所需的计算能力和时间更少。
    • 灵活性:被广泛用于训练和基准测试图像分类模型,尤其是卷积神经网络 (CNNs)。

    有关模型训练和数据集管理的更多详情,请参阅数据集结构部分。

  • 可以,ImageNette 还提供两个调整尺寸的版本 ImageNette160 和 ImageNette320,其图像会调整为更小的最大边长。这些版本有助于加快原型设计,在计算资源有限时尤其有用。

    使用 ImageNette160 的训练示例
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("yolo26n-cls.pt")
    
    # Train the model with ImageNette160
    results = model.train(data="imagenette160", epochs=100, imgsz=160)

    有关更多信息,请参阅使用 ImageNette160 和 ImageNette320 进行训练

  • ImageNette 数据集广泛用于:

    • 教育场景:向初学者教授机器学习和计算机视觉基础知识。
    • 软件开发:快速原型设计和开发图像分类模型。
    • 深度学习研究:评估和基准测试各种深度学习模型的性能,尤其是卷积神经网络 (CNNs)。

    请参阅应用部分,了解详细的使用场景。

评论