Ultralytics YOLO27:

Conjunto de dados MNIST#

O conjunto de dados MNIST (Instituto Nacional de Padrões e Tecnologia Modificado) é um benchmark de classificação de imagens com 70.000 imagens em escala de cinzentos de 28x28 de dígitos manuscritos, abrangendo 10 classes — os dígitos de 0 a 9. Inclui uma divisão predefinida de 60.000 imagens de treino e 10.000 imagens de teste e há muito que serve como benchmark padrão para avaliar algoritmos de aprendizagem automática e de visão computacional. Para uma alternativa mais difícil com imagens de peças de vestuário, consulta o conjunto de dados relacionado Fashion-MNIST; para imagens a cores, consulta CIFAR-10.

Explora o MNIST na Ultralytics Platform para pré-visualizar amostras, analisar as estatísticas do conjunto de dados e cloná-lo para treino.

Principais funcionalidades#

  • O MNIST contém 60.000 imagens de treino e 10.000 imagens de teste de dígitos manuscritos, num total de 70.000.
  • Cada imagem é uma representação em escala de cinzentos de 28x28 de um único dígito, normalizada e suavizada para uma caixa delimitadora fixa de 28x28.
  • As 10 classes abrangem os dígitos de 0 a 9, com um número aproximadamente equilibrado de imagens por classe.
  • Inclui uma divisão predefinida entre treino e teste, pelo que não é necessária qualquer divisão manual ou automática.
  • O MNIST é um benchmark padrão para investigação em classificação de imagens e aprendizagem profunda.

Estrutura do Conjunto de Dados#

O MNIST inclui uma divisão oficial predefinida, pelo que não é necessária qualquer partição automática ou manual:

  • Classes: 10 (dígitos manuscritos de 0 a 9)
  • Total de imagens: 70.000 (28x28 em tons de cinzento)
  • Conjunto de treino: 60.000 imagens
  • Conjunto de teste: 10.000 imagens
Divisão de validação

O MNIST não tem uma pasta de validação separada, pelo que a Ultralytics utiliza por predefinição o conjunto de teste de 10.000 imagens como divisão de validação durante o treino.

Cada imagem está identificada com o dígito correspondente (0–9), o que torna o MNIST um conjunto de dados supervisionado ideal para tarefas de classificação.

Aplicações#

O MNIST é amplamente utilizado para treinar e avaliar modelos de classificação de imagens, desde redes neuronais convolucionais (CNNs) clássicas e máquinas de vetores de suporte (SVMs) até arquiteturas profundas modernas. As suas pequenas imagens em escala de cinzentos e as 10 classes de dígitos fazem dele um benchmark rápido e reproduzível para comparar algoritmos e realizar experiências de visão computacional.

Algumas aplicações comuns incluem:

  • Avaliação comparativa de novos algoritmos de classificação
  • Fins educativos para ensinar conceitos de aprendizagem automática
  • Prototipagem de sistemas de reconhecimento de imagens
  • Teste de técnicas de otimização de modelos

Utilização#

Treina um modelo de classificação YOLO no MNIST durante 100 épocas, com um tamanho de imagem de 28. O conjunto de dados é descarregado e colocado em cache automaticamente na primeira utilização; se preferires controlo total sobre o pré-processamento, os arquivos gzip originais também estão disponíveis na base de dados MNIST. Para consultar a lista completa de argumentos disponíveis, vê a página de Treino e o guia da tarefa de classificação de imagens.

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="mnist", epochs=100, imgsz=28)
Testes rápidos com MNIST160

A Ultralytics também disponibiliza data="mnist160", uma amostra de 160 imagens que contém as primeiras oito imagens de cada dígito (0–9) das divisões de treino e de teste. Esta amostra replica a estrutura de diretórios do MNIST, pelo que podes trocar de conjunto de dados sem alterar quaisquer outros argumentos — ideal para pipelines de CI ou verificações de sanidade antes de optares pelo conjunto de dados completo de 70.000 imagens.

yolo classify train data=mnist160 model=yolo26n-cls.pt epochs=5 imgsz=28

Imagens de exemplo e anotações#

Imagens de exemplo do conjunto de dados MNIST:

Amostras do conjunto de dados de classificação de dígitos manuscritos MNIST

As amostras mostram a variedade de estilos de caligrafia captada pelo conjunto de dados nas 10 classes de dígitos.

Citações e agradecimentos#

Se utilizares o conjunto de dados MNIST no teu trabalho de investigação ou desenvolvimento, cita o seguinte artigo:

Citação
@article{lecun2010mnist,
         title={MNIST handwritten digit database},
         author={LeCun, Yann and Cortes, Corinna and Burges, CJ},
         journal={ATT Labs [Online]},
         volume={2},
         year={2010}
}

Gostaríamos de reconhecer Yann LeCun, Corinna Cortes e Christopher J.C. Burges pela criação e manutenção do conjunto de dados MNIST como um recurso valioso para a comunidade de investigação em aprendizagem automática e visão computacional. Para obteres mais informações sobre o conjunto de dados MNIST e os seus criadores, visita o site do conjunto de dados MNIST.

Perguntas frequentes#

  • O conjunto de dados MNIST é um benchmark com 70.000 imagens em escala de cinzentos de 28x28 de dígitos manuscritos, dividido em 60.000 imagens de treino e 10.000 imagens de teste nas 10 classes de 0 a 9. É a referência padrão para avaliar algoritmos de classificação de imagens — o seu formato pequeno e uniforme permite que investigadores e engenheiros comparem métodos e acompanhem o progresso com uma configuração mínima, razão pela qual continua a ser um benchmark inicial comum na aprendizagem automática.

  • O MNIST tem 10 classes — os dígitos manuscritos de 0 a 9 — e um total de 70.000 imagens em escala de cinzentos, cada uma com 28x28 píxeis. Inclui uma divisão predefinida de 60.000 imagens de treino e 10.000 imagens de teste, com um número aproximadamente igual de exemplos por dígito.

  • Para treinar um modelo Ultralytics YOLO no MNIST, utiliza os trechos de código abaixo. O conjunto de dados é descarregado automaticamente na primeira utilização. Para obteres uma lista detalhada dos argumentos de treino disponíveis, consulta a página de Treino.

    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="mnist", epochs=100, imgsz=28)
  • O MNIST inclui uma divisão predefinida de 60.000 imagens de treino e 10.000 imagens de teste. Ao contrário dos conjuntos de dados de classificação baseados em pastas, que a Ultralytics divide automaticamente, a partição oficial do MNIST é utilizada tal como está, e o conjunto de teste serve por predefinição como divisão de validação durante o treino.

  • O conjunto de dados MNIST contém apenas dígitos manuscritos, enquanto o conjunto de dados Extended MNIST (EMNIST) inclui dígitos e letras maiúsculas e minúsculas. O EMNIST foi desenvolvido como sucessor do MNIST e utiliza o mesmo formato de 28x28 píxeis, tornando-o compatível com ferramentas e modelos concebidos para o conjunto de dados MNIST original. Esta gama mais ampla de caracteres torna o EMNIST útil para uma maior variedade de aplicações de aprendizagem automática.

  • Sim. A Ultralytics Platform permite carregar conjuntos de dados, treinar modelos de classificação de imagens e implementá-los sem programação extensa. É uma forma conveniente de executar experiências com o MNIST na cloud — consulta a visão geral dos conjuntos de dados de classificação para veres opções relacionadas.

  • O MNIST é mais simples do que muitos conjuntos de dados modernos, como CIFAR-10 ou ImageNet, o que o torna ideal para principiantes e experiências rápidas. Embora os conjuntos de dados mais complexos ofereçam desafios maiores, com imagens a cores e categorias de objetos diversificadas, o MNIST continua a ser valioso pela sua simplicidade, tamanho reduzido dos ficheiros e importância histórica no desenvolvimento de algoritmos de aprendizagem automática. Para uma substituição direta mais difícil com a mesma estrutura, consulta o Fashion-MNIST, que contém peças de vestuário em vez de dígitos.

Comentários