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.

FAQ

O que é o conjunto de dados ImageNette?

O conjunto de dados ImageNette √© um subconjunto simplificado do conjunto de dados ImageNet maior, com apenas 10 classes facilmente distingu√≠veis, como tench, English springer e French horn. Foi criado para oferecer um conjunto de dados mais manej√°vel para treinamento e avalia√ß√£o eficientes de modelos de classifica√ß√£o de imagens. Este conjunto de dados √© particularmente √ļtil para o desenvolvimento r√°pido de software e para fins educacionais em aprendizagem autom√°tica e vis√£o computacional.

Como posso utilizar o conjunto de dados ImageNette para treinar um modelo YOLO ?

Para treinar um modelo YOLO no conjunto de dados ImageNette para 100 épocas, podes utilizar os seguintes comandos. Certifica-te de que tens o ambiente Ultralytics YOLO configurado.

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

Para mais informa√ß√Ķes, consulta a p√°gina da documenta√ß√£o Forma√ß√£o.

Por que razão devo utilizar o ImageNette para tarefas de classificação de imagens?

O conjunto de dados ImageNette √© vantajoso por v√°rias raz√Ķes:

  • R√°pido e simples: Cont√©m apenas 10 classes, o que o torna menos complexo e demorado em compara√ß√£o com conjuntos de dados maiores.
  • Utiliza√ß√£o educativa: Ideal para aprender e ensinar as no√ß√Ķes b√°sicas de classifica√ß√£o de imagens, uma vez que requer menos tempo e poder computacional.
  • Versatilidade: Amplamente utilizado para treinar e aferir v√°rios modelos de aprendizagem autom√°tica, especialmente na classifica√ß√£o de imagens.

Para mais detalhes sobre a formação de modelos e a gestão de conjuntos de dados, explora a secção Estrutura do conjunto de dados.

O conjunto de dados ImageNette pode ser utilizado com diferentes tamanhos de imagem?

Sim, o conjunto de dados ImageNette tamb√©m est√° dispon√≠vel em duas vers√Ķes redimensionadas: ImageNette160 e ImageNette320. Estas vers√Ķes ajudam a criar prot√≥tipos mais rapidamente e s√£o especialmente √ļteis quando os recursos computacionais s√£o limitados.

Exemplo de treino com ImageNette160

from ultralytics import YOLO

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

Para mais informa√ß√Ķes, consulta Forma√ß√£o com o ImageNette160 e o ImageNette320.

Quais s√£o as aplica√ß√Ķes pr√°ticas do conjunto de dados ImageNette?

O conjunto de dados ImageNette é amplamente utilizado em:

  • Defini√ß√Ķes educativas: Para educar principiantes em aprendizagem autom√°tica e vis√£o computacional.
  • Desenvolvimento de software: Para prototipagem r√°pida e desenvolvimento de modelos de classifica√ß√£o de imagens.
  • Investiga√ß√£o sobre aprendizagem profunda: Avalia e compara o desempenho de v√°rios modelos de aprendizagem profunda, especialmente Redes Neurais Convolucionais (CNNs).

Explora a sec√ß√£o Aplica√ß√Ķes para veres casos de utiliza√ß√£o detalhados.



Criado em 2023-11-12, Atualizado em 2024-07-04
Autores: glenn-jocher (6)

Coment√°rios