Salta para o conteúdo

Conjunto de dados ImageNette

O conjunto de dados ImageNette é um subconjunto do conjunto de dados Imagenet mais vasto, mas inclui apenas 10 classes facilmente distinguíveis. Foi criado para fornecer uma versão mais rápida e fácil de utilizar do Imagenet para desenvolvimento de software e educação.

Características principais

  • ImageNette contém imagens de 10 classes diferentes, como tench, English springer, leitor de cassetes, motosserra, igreja, corneta francesa, camião do lixo, bomba de gasolina, bola de golfe, para-quedas.
  • O conjunto de dados inclui imagens coloridas de dimensões variadas.
  • O ImageNette é amplamente utilizado para treino e teste no domínio da aprendizagem automática, especialmente para tarefas de classificação de imagens.

Estrutura do conjunto de dados

O conjunto de dados ImageNette está dividido em dois subconjuntos:

  1. Conjunto de treino: Este subconjunto contém vários milhares de imagens utilizadas para treinar modelos de aprendizagem automática. O número exato varia consoante a classe.
  2. Conjunto de validação: Este subconjunto é constituído por várias centenas de imagens utilizadas para validar e aferir os modelos treinados. Mais uma vez, o número exato varia consoante a classe.

Aplicações

O conjunto de dados ImageNette é amplamente utilizado para treinar e avaliar modelos de aprendizagem profunda em tarefas de classificação de imagens, como Redes Neurais Convolucionais (CNNs) e vários outros algoritmos de aprendizagem automática. O formato simples do conjunto de dados e as classes bem escolhidas fazem dele um recurso útil tanto para iniciantes como para profissionais experientes no domínio da aprendizagem automática e da visão computacional.

Utilização

Para treinar um modelo no conjunto de dados ImageNette para 100 épocas com um tamanho de imagem padrão de 224x224, podes utilizar os seguintes snippets de código. Para obter uma lista completa dos argumentos disponíveis, consulta a página Treino do modelo.

Exemplo de comboio

from ultralytics import YOLO

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

Exemplos de imagens e anotações

O conjunto de dados ImageNette contém imagens coloridas de vários objectos e cenas, fornecendo um conjunto de dados diversificado para tarefas de classificação de imagens. Aqui tens alguns exemplos de imagens do conjunto de dados:

Imagem de amostra do conjunto de dados

O exemplo mostra a variedade e complexidade das imagens no conjunto de dados ImageNette, realçando a importância de um conjunto de dados diversificado para treinar modelos de classificação de imagens robustos.

ImageNette160 e ImageNette320

Para uma prototipagem e formação mais rápidas, o conjunto de dados ImageNette também está disponível em dois tamanhos reduzidos: ImageNette160 e ImageNette320. Estes conjuntos de dados mantêm as mesmas classes e estrutura que o conjunto de dados ImageNette completo, mas as imagens são redimensionadas para uma dimensão mais pequena. Como tal, estas versões do conjunto de dados são particularmente úteis para testes preliminares de modelos ou quando os recursos computacionais são limitados.

Para utilizar estes conjuntos de dados, basta substituir 'imagenette' por 'imagenette160' ou 'imagenette320' no comando de treino. Os seguintes fragmentos de código ilustram esta situação:

Exemplo de treino com ImageNette160

from ultralytics import YOLO

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

Exemplo de comboio com ImageNette320

from ultralytics import YOLO

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

Estas versões mais pequenas do conjunto de dados permitem iterações rápidas durante o processo de desenvolvimento, continuando a fornecer tarefas de classificação de imagens valiosas e realistas.

Citações e agradecimentos

Se utilizares o conjunto de dados ImageNette no teu trabalho de investigação ou desenvolvimento, agradecemos que o reconheças adequadamente. Para mais informações sobre o conjunto de dados ImageNette, visita a página do conjunto de dados ImageNette no GitHub.



Criado em 2023-11-12, Atualizado em 2024-01-12
Autores: glenn-jocher (3)

Comentários