跳转至内容

ImageNette 数据集

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

主要功能

  • ImageNette 包含来自 10 个不同类别的图像,例如丁鲷、English springer、盒式磁带播放器、链锯、教堂、法国号、垃圾车、加油泵、高尔夫球、降落伞。
  • 该数据集包含不同尺寸的彩色图像。
  • ImageNette 广泛用于机器学习领域的训练和测试,尤其是在图像分类任务中。

数据集结构

ImageNette 数据集分为两个子集:

  1. 训练集: 该子集包含数千张用于训练机器学习模型的图像。具体数量因类别而异。
  2. 验证集: 此子集由数百张图像组成,用于验证和评估训练后的模型。同样,确切的数字因类别而异。

应用

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

用法

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

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette model=yolo11n-cls.pt epochs=100 imgsz=224

Sample Images 和注释

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

数据集样本图像

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

ImageNette160 和 ImageNette320

为了加快原型设计和训练速度,ImageNette 数据集还提供两种缩小尺寸的版本:ImageNette160ImageNette320。这些数据集保持与完整 ImageNette 数据集相同的类别和结构,但图像会调整为较小的尺寸。因此,这些版本的数据集对于初步模型测试或计算资源有限时特别有用。

要使用这些数据集,只需在训练命令中将“imagenette”替换为“imagenette160”或“imagenette320”即可。以下代码片段说明了这一点:

使用 ImageNette160 训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette160 model=yolo11n-cls.pt epochs=100 imgsz=160

使用 ImageNette320 训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette320 model=yolo11n-cls.pt epochs=100 imgsz=320

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

引用和致谢

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

常见问题

什么是 ImageNette 数据集?

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

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

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

训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette model=yolo11n-cls.pt epochs=100 imgsz=224

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

为什么我应该使用 ImageNette 进行图像分类任务?

ImageNette 数据集具有以下几个优点:

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

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

ImageNette数据集可以与不同的图像尺寸一起使用吗?

是的,ImageNette 数据集也有两个调整大小的版本:ImageNette160 和 ImageNette320。这些版本有助于更快的原型设计,并且在计算资源有限时特别有用。

使用 ImageNette160 训练示例

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette160 model=yolo11n-cls.pt epochs=100 imgsz=160

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

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

ImageNette 数据集广泛用于:

  • 教育环境: 用于教育机器学习和计算机视觉领域的初学者。
  • 软件开发: 用于图像分类模型的快速原型设计和开发。
  • 深度学习研究: 用于评估和衡量各种深度学习模型(尤其是卷积神经网络 (CNN))的性能。

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



📅 2 年前创建 ✏️ 8 个月前更新
glenn-jocherUltralyticsAssistantMatthewNoyceRizwanMunawarjk4eambitious-octopus

评论