跳至内容

ImageNette 数据集

ImageNette数据集是更大的Imagenet数据集的一个子集,但只包括 10 个易于区分的类别。创建该数据集的目的是为软件开发和教育提供更快捷、更易用的 Imagenet 版本。

主要功能

  • ImageNette 包含 10 个不同类别的图片,如tench、English Springer、卡带机、链锯、教堂、法国号角、垃圾车、加油泵、高尔夫球、降落伞。
  • 数据集由不同尺寸的彩色图像组成。
  • ImageNette 广泛用于机器学习领域的训练和测试,尤其是图像分类任务。

数据集结构

ImageNette 数据集分为两个子集:

  1. 训练集:该子集包含数千张图像,用于训练机器学习模型。具体数量因类而异。
  2. 验证集:该子集由数百张图像组成,用于验证和基准测试训练过的模型。每个类别的具体数量也不尽相同。

应用

ImageNette 数据集广泛用于训练和评估图像分类任务中的深度学习模型,如卷积神经网络(CNN)和其他各种机器学习算法。该数据集的格式简单明了,类别选择得当,是机器学习和计算机视觉领域初学者和经验丰富的从业人员都能使用的便捷资源。

使用方法

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

列车示例

from ultralytics import YOLO

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

# Train the model
results = model.train(data="imagenette", epochs=100, imgsz=224)
# Start training from a pretrained *.pt model
yolo detect train data=imagenette model=yolov8n-cls.pt epochs=100 imgsz=224

图片和注释示例

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

数据集样本图像

该示例展示了 ImageNette 数据集中图像的多样性和复杂性,突出了多样化数据集对训练强大图像分类模型的重要性。

ImageNette160 和 ImageNette320

为加快原型开发和培训,ImageNette 数据集还提供两种缩小尺寸:ImageNette160 和 ImageNette320。这些数据集保持了与完整 ImageNette 数据集相同的类别和结构,但图像尺寸被调整到了更小的尺寸。因此,这些版本的数据集特别适用于初步模型测试或计算资源有限的情况。

要使用这些数据集,只需在训练命令中将 "imagenette "替换为 "imagenette160 "或 "imagenette320 "即可。下面的代码片段对此进行了说明:

使用 ImageNette160 的列车示例

from ultralytics import YOLO

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

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
# Start training from a pretrained *.pt model with ImageNette160
yolo detect train data=imagenette160 model=yolov8n-cls.pt epochs=100 imgsz=160

使用 ImageNette320 的列车示例

from ultralytics import YOLO

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

# Train the model with ImageNette320
results = model.train(data="imagenette320", epochs=100, imgsz=320)
# Start training from a pretrained *.pt model with ImageNette320
yolo detect train data=imagenette320 model=yolov8n-cls.pt epochs=100 imgsz=320

这些较小版本的数据集允许在开发过程中快速迭代,同时仍能提供有价值的现实图像分类任务。

引文和致谢

如果您在研究或开发工作中使用了 ImageNette 数据集,请适当予以确认。有关 ImageNette 数据集的更多信息,请访问ImageNette 数据集 GitHub 页面

常见问题

什么是 ImageNette 数据集?

ImageNette 数据集是更大的ImageNet 数据集的简化子集,只包含 10 个易于区分的类别,如tench、English Springer 和法国号。创建该数据集的目的是为高效地训练和评估图像分类模型提供一个更易于管理的数据集。该数据集尤其适用于机器学习和计算机视觉领域的快速软件开发和教育目的。

如何使用 ImageNette 数据集训练YOLO 模型?

要在 ImageNette 数据集上训练YOLO 模型 100 次,可以使用以下命令。请确保已设置Ultralytics YOLO 环境。

列车示例

from ultralytics import YOLO

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

# Train the model
results = model.train(data="imagenette", epochs=100, imgsz=224)
# Start training from a pretrained *.pt model
yolo detect train data=imagenette model=yolov8n-cls.pt epochs=100 imgsz=224

更多详情,请参阅培训文档页面。

为什么要使用 ImageNette 完成图像分类任务?

ImageNette 数据集的优势有以下几个原因:

  • 快速简单:它只包含 10 个类别,与较大的数据集相比,复杂度较低,耗时较少。
  • 教育用途:非常适合图像分类基础知识的学习和教学,因为它所需的计算能力和时间较少。
  • 多功能性:广泛用于各种机器学习模型的训练和基准测试,尤其是在图像分类方面。

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

ImageNette 数据集能否用于不同尺寸的图像?

是的,ImageNette 数据集也有两种尺寸调整版本:ImageNette160 和 ImageNette320。这些版本有助于更快地制作原型,在计算资源有限的情况下尤其有用。

使用 ImageNette160 的列车示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolov8n-cls.pt")

# Train the model with ImageNette160
results = model.train(data="imagenette160", epochs=100, imgsz=160)
# Start training from a pretrained *.pt model with ImageNette160
yolo detect train data=imagenette160 model=yolov8n-cls.pt epochs=100 imgsz=160

有关详细信息,请参阅ImageNette160 和 ImageNette320 培训

ImageNette 数据集有哪些实际应用?

ImageNette 数据集被广泛应用于以下领域:

  • 教育设置:为初学者提供机器学习和计算机视觉方面的教育。
  • 软件开发:用于图像分类模型的快速原型设计和开发。
  • 深度学习研究:对各种深度学习模型,尤其是卷积神经网络(CNN)的性能进行评估和基准测试。

探索应用部分,了解详细的使用案例。



创建于 2023-11-12,更新于 2024-07-04
作者:glenn-jocher(6)

评论