Saltar 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 ensino.

Caraterísticas principais

  • O ImageNette contém imagens de 10 classes diferentes, tais como tench, English springer, leitor de cassetes, motosserra, igreja, corneta francesa, camião do lixo, bomba de gás, bola de golfe, para-quedas.
  • O conjunto de dados inclui imagens coloridas de dimensões variáveis.
  • 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 as Redes Neuronais Convolucionais (CNN) 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 principiantes 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, pode utilizar os seguintes snippets de código. Para obter uma lista completa dos argumentos disponíveis, consulte a página Treinamento do modelo.

Exemplo de comboio

from ultralytics import YOLO

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

Exemplos de imagens e anotações

O conjunto de dados ImageNette contém imagens a cores de vários objectos e cenas, proporcionando um conjunto de dados diversificado para tarefas de classificação de imagens. Aqui estão 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 este facto:

Exemplo de comboio com ImageNette160

from ultralytics import YOLO

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

Exemplo de comboio com ImageNette320

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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 classify train data=imagenette320 model=yolo11n-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 utilizar o conjunto de dados do ImageNette no seu trabalho de investigação ou desenvolvimento, agradecemos que o reconheça adequadamente. Para mais informações sobre o conjunto de dados ImageNette, visite 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 mais vasto, com apenas 10 classes facilmente distinguíveis, tais como tenca, English springer e trompa francesa. Foi criado para oferecer um conjunto de dados mais fácil de gerir para uma formação e avaliação eficientes dos modelos de classificação de imagens. Este conjunto de dados é particularmente útil para o desenvolvimento rápido de software e para fins educativos em aprendizagem automática e visão computacional.

Como é que 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, pode utilizar os seguintes comandos. Certifique-se de ter o ambiente Ultralytics YOLO configurado.

Exemplo de comboio

from ultralytics import YOLO

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

Para mais informações, consulte 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 moroso 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 obter mais detalhes sobre a formação de modelos e a gestão de conjuntos de dados, explore 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 comboio com ImageNette160

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n-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=yolo11n-cls.pt epochs=100 imgsz=160

Para obter mais informações, consulte Formação com o ImageNette160 e o ImageNette320.

Quais são algumas das 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: Avaliar e aferir o desempenho de vários modelos de aprendizagem profunda, especialmente as redes neurais convolucionais (CNN).

Explore a secção Aplicações para obter casos de utilização detalhados.

📅C riado há 1 ano ✏️ Atualizado há 1 mês

Comentários