Conjunto de dados ImageNette

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

Principais recursos

  • O ImageNette contém imagens de 10 classes diferentes, como tench, English springer, cassette player, chain saw, church, French horn, garbage truck, gas pump, golf ball, parachute.
  • O conjunto de dados compreende imagens coloridas de dimensões variáveis.
  • O ImageNette é amplamente utilizado para treinamento e teste no campo do aprendizado de máquina, especialmente para tarefas de classificação de imagens.

Estrutura do Dataset

O conjunto de dados ImageNette é dividido em dois subconjuntos:

  1. Conjunto de Treinamento: Este subconjunto contém vários milhares de imagens usadas para treinar modelos de aprendizado de máquina. O número exato varia por classe.
  2. Conjunto de Validação: Este subconjunto consiste em várias centenas de imagens usadas para validar e realizar o benchmarking dos modelos treinados. Novamente, o número exato varia por classe.

Aplicações

O conjunto de dados ImageNette é amplamente utilizado para treinar e avaliar modelos de deep learning em tarefas de classificação de imagens, como Convolutional Neural Networks (CNNs) e vários outros algoritmos de aprendizado de máquina. O formato direto e as classes bem escolhidas do conjunto de dados tornam-no um recurso prático para praticantes iniciantes e experientes no campo de machine learning e computer vision.

Utilização

Para treinar um modelo no conjunto de dados ImageNette por 100 épocas com um tamanho de imagem padrão de 224x224, você pode usar os seguintes trechos de código. Para uma lista abrangente de argumentos disponíveis, consulte a página de Training do modelo.

Exemplo de Treino
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)

Amostra de Imagens e Anotações

O conjunto de dados ImageNette contém imagens coloridas de vários objetos e cenas, fornecendo um conjunto de dados diversificado para tarefas de image classification. Aqui estão alguns exemplos de imagens do conjunto de dados:

Exemplo de imagens do conjunto de dados de classificação ImageNette

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

ImageNette160 e ImageNette320

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

Para usar esses conjuntos de dados, basta substituir 'imagenette' por 'imagenette160' ou 'imagenette320' no comando de treinamento. Os seguintes trechos de código ilustram isso:

Exemplo de Treinamento com 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)
Exemplo de Treinamento com 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)

Essas versões menores do conjunto de dados permitem iterações rápidas durante o processo de desenvolvimento, ao mesmo tempo em que fornecem tarefas de classificação de imagem valiosas e realistas.

Citações e Agradecimentos

Se você usar o conjunto de dados ImageNette em seu trabalho de pesquisa ou desenvolvimento, por favor, faça a referência apropriada. Para mais informações sobre o conjunto de dados ImageNette, visite a página do GitHub do conjunto de dados ImageNette.

FAQ

O que é o conjunto de dados ImageNette?

O conjunto de dados ImageNette é um subconjunto simplificado do conjunto de dados ImageNet maior, apresentando apenas 10 classes facilmente distinguíveis, como tench, English springer e French horn. Foi criado para oferecer um conjunto de dados mais gerenciável para treinamento e avaliação eficientes de modelos de classificação de imagens. Este conjunto de dados é particularmente útil para desenvolvimento de software rápido e fins educacionais em machine learning e computer vision.

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

Para treinar um modelo YOLO no conjunto de dados ImageNette por 100 epochs, você pode usar os seguintes comandos. Certifique-se de ter o ambiente Ultralytics YOLO configurado.

Exemplo de Treino
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)

Para mais detalhes, consulte a página de documentação de Training.

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

O conjunto de dados ImageNette é vantajoso por vários motivos:

  • Rápido e Simples: Contém apenas 10 classes, tornando-o menos complexo e demorado em comparação com conjuntos de dados maiores.
  • Uso Educacional: Ideal para aprender e ensinar o básico de classificação de imagens, pois requer menos poder computacional e tempo.
  • Versatilidade: Amplamente utilizado para treinar e realizar o benchmarking de vários modelos de aprendizado de máquina, especialmente em classificação de imagens.

Para mais detalhes sobre treinamento de modelos e gerenciamento de conjuntos de dados, explore a seção Dataset Structure.

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

Sim, o conjunto de dados ImageNette também está disponível em duas versões redimensionadas: ImageNette160 e ImageNette320. Essas versões ajudam na prototipagem mais rápida e são especialmente úteis quando os recursos computacionais são limitados.

Exemplo de Treinamento com 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)

Para mais informações, consulte Training with ImageNette160 and ImageNette320.

Quais são algumas aplicações práticas do conjunto de dados ImageNette?

O conjunto de dados ImageNette é amplamente utilizado em:

  • Ambientes Educacionais: Para educar iniciantes em aprendizado de máquina e computer vision.
  • Desenvolvimento de Software: Para prototipagem rápida e desenvolvimento de modelos de classificação de imagens.
  • Pesquisa em Deep Learning: Para avaliar e realizar o benchmarking do desempenho de vários modelos de deep learning, especialmente Convolutional Neural Networks (CNNs).

Explore a seção Applications para casos de uso detalhados.

Comentários