Link to this sectionImageWoof 数据集#
ImageWoof 数据集是 ImageNet 的一个子集,包含 10 个故意设计得难以区分的犬种类别。它由 fast.ai 创建,旨在为 image classification 算法提供更严峻的挑战。该数据集包含 12,954 张彩色图像——9,025 张用于训练,3,929 张用于验证——涵盖了比格犬、西施犬和金毛寻回犬等品种,促使模型去区分细微的粒度差异,而非简单的对象类别。
Link to this section主要特性#
- ImageWoof 包含 12,954 张图像,涵盖 10 个犬种:澳大利亚梗、边境梗、萨摩耶犬、比格犬、西施犬、英国猎狐犬、罗得西亚脊背犬、澳洲野犬、金毛寻回犬和英国古代牧羊犬。
- 它自带预定义的训练集(9,025 张)和验证集(3,929 张)划分,并提供多种分辨率(全尺寸、320px、160px)以适应不同的计算预算。
- 它还包含一个带有噪声标签的版本,提供了标签并不总是可靠的更现实的场景。
Link to this section数据集结构#
ImageWoof 自带预定义的训练/验证集划分,每个犬种都存储在各自的文件夹中:
| 拆分 | 图像 | 类别 |
|---|---|---|
| 训练 | 9,025 | 10 |
| 验证 | 3,929 | 10 |
由于所有 10 个类别都是犬种,这种划分旨在测试细粒度分类(即区分视觉上相似的类别),而不是完整 ImageNet 数据集那种广泛的对象识别。
Link to this section应用#
ImageWoof 数据集被广泛用于在更复杂和相似的类别上训练和评估 deep learning 模型。其挑战在于犬种之间的细微差别,这推动了模型性能和泛化能力的极限。它尤其适用于:
- 基准测试细粒度类别的分类性能
- 测试模型针对外观相似类别的鲁棒性
- 开发能够识别细微视觉差异的算法
- 评估从通用领域到特定领域的迁移学习
Link to this section用法#
要在 ImageWoof 数据集上进行 100 个 epochs 的分类模型训练,且图像大小为 224x224,请使用以下代码片段。有关可用参数的完整列表,请参考模型 Training 页面。
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="imagewoof", epochs=100, imgsz=224)Link to this section数据集变体#
ImageWoof 提供三种尺寸以适应不同的研究需求和计算预算:
- 全尺寸 (
imagewoof):原始版本,包含全尺寸图像,是最终训练和性能基准测试的理想选择。 - 中尺寸 (
imagewoof320):图像调整为最大边缘长度 320 像素,适合在不显著牺牲模型性能的情况下实现更快的训练。 - 小尺寸 (
imagewoof160):图像调整为最大边缘长度 160 像素,专为训练速度优先的快速原型设计和实验而设计。
要使用这些变体,只需将数据集参数中的 imagewoof 替换为 imagewoof320 或 imagewoof160。例如:
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-cls.pt") # load a pretrained model (recommended for training)
# For medium-sized dataset
model.train(data="imagewoof320", epochs=100, imgsz=224)
# For small-sized dataset
model.train(data="imagewoof160", epochs=100, imgsz=224)请注意,较小的图像可能会导致较低的分类 accuracy,但它们是模型开发早期阶段进行快速迭代的绝佳方式。你还可以使用 Ultralytics Platform 在云端管理分类数据集并进行训练。
Link to this section样本图像和标注#
ImageWoof 数据集包含各种犬种的彩色图像,为图像分类任务提供了具有挑战性的数据集。以下是来自该数据集的一些图像示例:

该示例展示了不同犬种之间的细微差异和相似之处,突显了分类任务的复杂性和难度。
Link to this section引用与致谢#
如果你在研究或开发工作中使用了 ImageWoof 数据集,请通过链接到 官方数据集仓库 来注明数据集创建者的贡献。
我们要感谢 fast.ai 团队将 ImageWoof 作为 machine learning 和 computer vision 研究社区的宝贵资源进行创建和维护。欲了解更多关于 ImageWoof 的信息,请访问 ImageWoof 数据集仓库。
Link to this section常见问题解答#
Link to this section什么是 Ultralytics 中的 ImageWoof 数据集?#
ImageWoof 数据集是一个具有挑战性的 ImageNet 子集,专注于 10 个犬种,包含 12,954 张图像(9,025 张用于训练,3,929 张用于验证)。它由 fast.ai 创建,旨在推动图像分类模型的极限,涵盖了比格犬、西施犬和金毛寻回犬等品种。该数据集提供多种分辨率(全尺寸、320px、160px),甚至包括用于更现实训练场景的噪声标签,使其成为开发高级深度学习模型的理想选择。
Link to this sectionImageWoof 有多少张图像和犬种?#
ImageWoof 总共包含 12,954 张图像——9,025 张用于训练,3,929 张用于验证——涵盖了 10 个犬种:澳大利亚梗、边境梗、萨摩耶犬、比格犬、西施犬、英国猎狐犬、罗得西亚脊背犬、澳洲野犬、金毛寻回犬和英国古代牧羊犬。每个品种都存储在各自的文件夹中,遵循 Ultralytics 所需的标准分类布局。
Link to this section我如何使用 Ultralytics YOLO 通过 ImageWoof 数据集训练模型?#
要使用 Ultralytics YOLO 在 ImageWoof 数据集上进行 100 个 epoch、图像大小为 224x224 的分类模型训练,请使用以下代码:
from ultralytics import YOLO
model = YOLO("yolo26n-cls.pt") # Load a pretrained model
results = model.train(data="imagewoof", epochs=100, imgsz=224)有关可用训练参数的更多详情,请参考 Training 页面。
Link to this sectionImageWoof 数据集有哪些版本可用?#
ImageWoof 数据集有三种尺寸:
- 全尺寸 (
imagewoof):理想的最终训练和基准测试版本,包含全尺寸图像。 - 中尺寸 (
imagewoof320):图像调整为最大边缘长度 320 像素,适合更快的训练。 - 小尺寸 (
imagewoof160):图像调整为最大边缘长度 160 像素,非常适合快速原型设计。
通过相应替换数据集参数中的 imagewoof 来使用这些版本。请注意,较小的图像可能会导致较低的分类 accuracy,但它们对于快速迭代很有用。
Link to this sectionImageWoof 数据集中的噪声标签对训练有什么好处?#
ImageWoof 数据集中的噪声标签模拟了标签并不总是准确的真实世界条件。使用此数据训练模型有助于在图像分类任务中培养鲁棒性和泛化能力。它使模型能够有效地处理实际应用中经常遇到的模糊或标记错误的数据。
Link to this section使用 ImageWoof 数据集的主要挑战是什么?#
ImageWoof 的主要挑战在于它所包含犬种之间的细微差别。由于它专注于 10 个密切相关的品种,区分它们需要更高级和微调后的图像分类模型。这使得 ImageWoof 成为测试 deep learning 模型能力和改进的绝佳基准。