Buscar

ProjetoFinal_Leandro_Ruan

Prévia do material em texto

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO
CENTRO TECNOLÓGICO
DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO
Leandro Antonio Barros dos Santos
Ruan Mirandola
PROJETO FINAL - SISTEMA DE APOIO À DECISÃO
REDE NEURAL CONVOLUCIONAL
VITÓRIA-ES
2022
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO
CENTRO TECNOLÓGICO
DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO
Leandro Antonio Barros dos Santos
Ruan Mirandola
Projeto final apresentado ao curso
de Graduação em Engenharia de
Produção, do Centro Tecnológico da
Universidade Federal do Espírito
Santo, como requisito de avaliação.
VITÓRIA-ES
2022
Introdução
Uma Rede Neural Convolucional (ConvNet / Convolutional Neural Network / CNN) é um
algoritmo de Aprendizado Profundo que pode captar uma imagem de entrada, atribuir
importância (pesos e vieses que podem ser aprendidos) a vários aspectos / objetos da
imagem e ser capaz de diferenciar um do outro. O pré-processamento exigido em uma
ConvNet é muito menor em comparação com outros algoritmos de classificação. A
arquitetura de uma ConvNet é análoga àquela do padrão de conectividade de neurônios no
cérebro humano e foi inspirada na organização do Visual Cortex. Os neurônios individuais
respondem a estímulos apenas em uma região restrita do campo visual conhecida como
Campo Receptivo. Uma coleção desses campos se sobrepõem para cobrir toda a área
visual.
Base de dados:
● CIFAR10;
● É um dataset que possui algumas classes de imagens. Por exemplo:
○ Aeronaves
○ Carros
○ Pássaros
○ Gatos
○ Veados
○ Cachorros
○ Sapos
○ Cavalos
○ Navios
○ Caminhões
Figura 1 - Imagens do dataset de imagenets.
Importando os dados:
Visualizando as imagens:
A princípio é de se estranhar sobre a qualidade das imagens. A questão é que nós
humanos pode ser difícil de identificar, porém a rede neural consegue diferenciar e
classificar as imagens de acordo com a variação de pixels.
Definindo a rede convolucional:
● Para calcular o tamanho espacial da saida podemos usar a fórmula ((N − F + 2P) / S) +
1. Onde:
○ N : Dimensão da imagem de entrada
○ F : Dimensão do Filtro
○ P : O padding
○ S : O stride
● Lembrando que um maxpooling de (kernel_size = 2,stride = 2) diminui pela metade a
dimensão da imagem nos eixos x e y.
Definindo os critérios e otimizador da rede neural:
Treinando nosso modelo:
Salvando o modelo:
Para utilizarmos os dados novamente salvamos o modelo.
Testando o modelo com dados de teste:
O modelo nos trouxe as seguintes imagens:
gato>navio>navio>aeronave
Importando modelo treinado para rodarmos a rede:
Previsão dos resultados:
Como podemos observar, o modelo não acertou 100% das previsões:
gato>navio>carro>navio
Porém isso é esperado, pois não é comum que se tenha 100% accuracy, pois pode
representar um caso de overfit, ou seja, o modelo se ajusta muito bem a um certo conjunto
de dados, mas se mostra ineficaz para prever novos resultados.
CONCLUSÃO E DISCUSSÃO FINAL
Performance no modelo do dataset completo:
Desta forma, verificamos que nosso modelo geral está com a accuracy de 60%, sendo um
valor aceitável em termos de teste e aplicações para a disciplina.
Performance por classe:
Abaixo vemos a accuracy por classe do nosso modelo:
Accuracy for class aeronave is: 60.2 %
Accuracy for class carro is: 74.7 %
Accuracy for class passaro is: 45.1 %
Accuracy for class gato is: 36.3 %
Accuracy for class veado is: 52.4 %
Accuracy for class cachorro is: 53.9 %
Accuracy for class sapo is: 73.9 %
Accuracy for class cavalo is: 57.8 %
Accuracy for class navio is: 79.6 %
Accuracy for class caminhao is: 68.0 %
A classe com maior accuracy foi a de navio, com 79,6%. Já a classe com menor accuracy
foi a de gatos, com 36,3%.
Link do arquivo .ipynb para testes com o modelo:
https://colab.research.google.com/drive/1qhlqeqo9RCIlCQah1K8sd1h2iKIzNXSw?usp=shari
ng
Ambiente de desenvolvimento:
Google Colab - https://colab.research.google.com/notebooks/intro.ipynb?hl=pt_BR
https://colab.research.google.com/drive/1qhlqeqo9RCIlCQah1K8sd1h2iKIzNXSw?usp=sharing
https://colab.research.google.com/drive/1qhlqeqo9RCIlCQah1K8sd1h2iKIzNXSw?usp=sharing
https://colab.research.google.com/notebooks/intro.ipynb?hl=pt_BR

Continue navegando