Набор данных ImageNette

Набор данных ImageNette является подмножеством более крупного набора данных ImageNet, но включает в себя только 10 легко различимых классов. Он был создан для предоставления более быстрой и простой в использовании версии ImageNet для разработки программного обеспечения и обучения.

Основные характеристики

  • ImageNette содержит изображения из 10 различных классов, таких как линь, английский спрингер, кассетный магнитофон, бензопила, церковь, валторна, мусоровоз, бензоколонка, мяч для гольфа, парашют.
  • Набор данных состоит из цветных изображений различных размеров.
  • ImageNette широко используется для обучения и тестирования в области машинного обучения, особенно для задач классификации изображений.

Структура набора данных

Набор данных ImageNette разделен на два подмножества:

  1. Обучающая выборка: Это подмножество содержит несколько тысяч изображений, используемых для обучения моделей машинного обучения. Точное количество варьируется в зависимости от класса.
  2. Валидационная выборка: Это подмножество состоит из нескольких сотен изображений, используемых для проверки и тестирования обученных моделей. Опять же, точное количество варьируется в зависимости от класса.

Приложения

Набор данных ImageNette широко используется для обучения и оценки моделей глубинного обучения в задачах классификации изображений, таких как сверточные нейронные сети (CNN), и различных других алгоритмов машинного обучения. Простой формат набора данных и хорошо подобранные классы делают его удобным ресурсом как для начинающих, так и для опытных практиков в области машинного обучения и компьютерного зрения.

Использование

Чтобы обучить модель на наборе данных 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

Пример демонстрирует разнообразие и сложность изображений в наборе данных ImageNette, подчеркивая важность разнообразного набора данных для обучения надежных моделей классификации изображений.

ImageNette160 и ImageNette320

Для более быстрого прототипирования и обучения набор данных ImageNette также доступен в двух уменьшенных размерах: ImageNette160 и ImageNette320. Эти наборы данных сохраняют те же классы и структуру, что и полный набор данных ImageNette, но изображения изменены до меньшего размера. Таким образом, эти версии набора данных особенно полезны для предварительного тестирования моделей или в случаях, когда вычислительные ресурсы ограничены.

Чтобы использовать эти наборы данных, просто замени 'imagenette' на 'imagenette160' или 'imagenette320' в команде обучения. Следующие фрагменты кода иллюстрируют это:

Пример обучения с ImageNette160
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)
Пример обучения с ImageNette320
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)

Эти уменьшенные версии набора данных позволяют быстро выполнять итерации в процессе разработки, обеспечивая при этом ценные и реалистичные задачи классификации изображений.

Цитирование и благодарности

Если ты используешь набор данных ImageNette в своей исследовательской работе или разработке, пожалуйста, укажи его соответствующим образом. Для получения дополнительной информации о наборе данных ImageNette посети GitHub-страницу набора данных ImageNette.

Часто задаваемые вопросы (FAQ)

Что такое набор данных ImageNette?

Набор данных ImageNette — это упрощенное подмножество более крупного набора данных ImageNet, содержащее всего 10 легко различимых классов, таких как линь, английский спрингер и валторна. Он был создан, чтобы предложить более управляемый набор данных для эффективного обучения и оценки моделей классификации изображений. Этот набор данных особенно полезен для быстрой разработки программного обеспечения и образовательных целей в области машинного обучения и компьютерного зрения.

Как я могу использовать набор данных ImageNette для обучения модели YOLO?

Чтобы обучить модель 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 для задач классификации изображений?

Набор данных ImageNette выгоден по нескольким причинам:

  • Быстро и просто: Он содержит всего 10 классов, что делает его менее сложным и менее затратным по времени по сравнению с более крупными наборами данных.
  • Образовательное использование: Идеально подходит для изучения и преподавания основ классификации изображений, так как требует меньше вычислительной мощности и времени.
  • Универсальность: Широко используется для обучения и оценки различных моделей машинного обучения, особенно в классификации изображений.

Для получения более подробной информации об обучении моделей и управлении наборами данных изучи раздел Структура набора данных.

Можно ли использовать набор данных ImageNette с разными размерами изображений?

Да, набор данных ImageNette также доступен в двух измененных по размеру версиях: ImageNette160 и ImageNette320. Эти версии помогают ускорить прототипирование и особенно полезны, когда вычислительные ресурсы ограничены.

Пример обучения с ImageNette160
from 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?

Набор данных ImageNette широко используется в:

  • Образовательных целях: Для обучения новичков машинному обучению и компьютерному зрению.
  • Разработке ПО: Для быстрого прототипирования и разработки моделей классификации изображений.
  • Исследованиях глубинного обучения: Для оценки и тестирования производительности различных моделей глубинного обучения, особенно сверточных нейронных сетей (CNN).

Изучи раздел Применения для получения подробных примеров использования.

Комментарии