ImageNette 数据集
ImageNette 数据集是更大的 ImageNet 数据集的一个子集,但它只包含 10 个容易区分的类别。创建它的目的是为了提供一个更快、更易于使用的 ImageNet 版本,用于软件开发和教育。
主要功能
- ImageNette 包含来自 10 个不同类别的图像,例如丁鲷、English springer、盒式磁带播放器、链锯、教堂、法国号、垃圾车、加油泵、高尔夫球、降落伞。
- 该数据集包含不同尺寸的彩色图像。
- ImageNette 广泛用于机器学习领域的训练和测试,尤其是在图像分类任务中。
数据集结构
ImageNette 数据集分为两个子集:
- 训练集: 该子集包含数千张用于训练机器学习模型的图像。具体数量因类别而异。
- 验证集: 此子集由数百张图像组成,用于验证和评估训练后的模型。同样,确切的数字因类别而异。
应用
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 数据集还提供两种缩小尺寸的版本:ImageNette160 和 ImageNette320。这些数据集保持与完整 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 个易于区分的类别,例如丁鲷、English springer 和法国号。它的创建旨在提供一个更易于管理的数据集,用于高效地训练和评估图像分类模型。该数据集对于 机器学习和计算机视觉中的快速软件开发和教育目的特别有用。
如何使用 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 数据集广泛用于:
在应用部分中,了解详细的使用案例。