Датасет ImageNette#
Датасет ImageNette — это подмножество ImageNet с 10 легко различимыми классами, созданное командой fast.ai, чтобы предоставить более быструю и удобную версию ImageNet для разработки программного обеспечения и обучения. Он содержит 13 394 цветных изображения — 9 469 для обучения и 3 925 для валидации — и охватывает такие классы, как линь, английский спрингер-спаниель, кассетный проигрыватель и валторна, поэтому модели классификации изображений обучаются за минуты, а не за часы, необходимые для полного ImageNet с 1 000 классами.
Ключевые особенности#
- ImageNette содержит 13 394 изображения 10 классов: линь, английский спрингер-спаниель, кассетный проигрыватель, бензопила, церковь, валторна, мусоровоз, бензоколонка, мяч для гольфа и парашют.
- В датасете предусмотрено разделение на 9 469 цветных изображений для обучения и 3 925 для валидации с различными разрешениями.
- 10 хорошо разделённых классов делают ImageNette быстрым для обучения и удобным для анализа, поэтому его широко используют для прототипирования и обучения классификации изображений.
Структура датасета#
ImageNette поставляется с заранее заданным разделением на обучающую и валидационную выборки, при этом каждый класс хранится в отдельной папке:
| Выборка | Изображения | Классы |
|---|---|---|
| Обучение | 9,469 | 10 |
| Валидация | 3,925 | 10 |
Точное количество изображений различается для разных классов, что обеспечивает реалистичное распределение для быстрого обучения и бенчмаркинга без масштаба полного датасета ImageNet.
Применения#
Датасет ImageNette широко используется для обучения и оценки моделей глубокого обучения в задачах классификации изображений, например свёрточных нейронных сетей (CNNs) и других алгоритмов машинного обучения. Его простой формат и удачно подобранные классы делают его удобным ресурсом как для начинающих, так и для опытных специалистов в области машинного обучения и компьютерного зрения.
Использование#
Чтобы обучить модель на датасете ImageNette в течение 100 эпох со стандартным размером изображения 224x224, можно использовать следующие фрагменты кода. Полный список доступных аргументов приведён на странице обучения модели.
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, подчёркивая важность разнообразного набора данных для обучения устойчивых моделей классификации изображений.
ImageNette160 и ImageNette320#
Для более быстрого прототипирования и обучения ImageNette также доступен в двух уменьшенных вариантах: ImageNette160 и ImageNette320. Эти датасеты сохраняют те же классы и структуру, что и полный ImageNette, но изображения в них имеют меньшую максимальную длину стороны. Они особенно полезны для предварительного тестирования моделей или при ограниченных вычислительных ресурсах.
Чтобы использовать эти датасеты, просто замените imagenette на imagenette160 или imagenette320 в команде обучения. Ниже приведены соответствующие фрагменты кода:
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)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.
Чтобы обучить модель YOLO на ImageNette в течение 100 эпох, используй следующие команды. Убедись, что среда 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, в которых изображения имеют меньшую максимальную длину стороны. Эти версии ускоряют прототипирование и особенно полезны при ограниченных вычислительных ресурсах.
Пример обучения с ImageNette160from 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).
Подробные варианты использования смотри в разделе применений.



