Prof. Adolfo Bauchspiess
LARA - Laboratório de Automação e Robótica
ENE - Departamento de Engenharia Elétrica
UnB - Universidade de Brasília






ENE0154 - Inteligência Computacional

3o  Exercício - CIFAR10 Aprendizagem Profunda com Saída "Outro"

Objetivo:

    Utilizando o banco de imagens CIFAR10, construir uma rede convolucional profunda para reconhecer 10 classes. Saída "outro" imagem não reconhecida.

Introdução:

    As redes redes neurais profundas revolucionaram recentemente (a partir de ~2010!) as aplicações de inteligência artificial conexionista. O teorema de Cybenko, 1989, prova que redes neurais artificias com apenas uma camada escondida são aproximadores universais. Porém, várias camadas convolucionais (CNN) produziram, pela primeira vez na história das RNAs, resultados práticos e uma miríade de aplicações comerciais. CNNs são treinadas para produzir mapas de caracteríscas (features), tornando viável o reconhecimento de padrões em imagens. MNIST, CIFAR-10, CIFAR-100, ImageNet são alguns dos bancos de imagens que consagraram diferentes paradigmas de aprendizagem profunda (AlexNet, ResNet, VGG, Inception, ViT etc.)

    O treinamento depende de uma base de dados ampla o suficiente para que a rede tenha boa capacidade de generalização. Neste trabalho será utilizada a base CIFAR-10 (trainset = torchvision.datasets.CIFAR10()), com 50.000 imagens de treinamento, 5.000 de teste e 5.000 de validação. As imagens de 32x32 pixeis correspondem a 10 classes. Diferentes categorias, como "aviões", "passaros", "gatos" e "cachorros" estão disponíveis.  Como referência*,  o SotA ("State of the Art") do CIFAR-10, 2018, apresenta acurácia de 99,0%.

    Diferentes topologias de CNN estão disponiveis na internet. Para uma implementação didática em TensorFlow, ver, por exemplo: https://github.com/acht7111020/CNN_object_classification/tree/master/train. **ResNet é uma das topologias mais populares em várias áreas de aplicação de RNAs.

*SotA - 99.0%, Yanping Huang et al. GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism (Nov 2018, arXiv 2018)
**10Dec2015, arXiv 1512.03385, Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun Deep Residual Learning for Image Recognition

Procedimento:


Códigos:

Relatório:

Além dos itens usuais, não esqueça de incluir:

CIFAR-10 image classification using PyTorch. | by
          Nagamsurya | Medium

+
Image: Medium, CIFAR-10 Image classification using PyTorch


Bom Aprendizado Profundo !!