Algoritmo desenvolvido no âmbito acadêmico para a disciplina de Inteligência Artificial do Centro de Educação Superior do Alto Vale do Itajaí (CEAVI/UDESC).
O Problema a ser desenvolvido é uma Rede Neural Convolucional para o de reconhecimento e classificação binária de imagens.
O Dataset utilizado será uma versão adaptada do Kaggle da competição Dogs vs. Cats contendo 7000 imagens de Cachorros e 7000 imagens de Gatos.
Utilização da Rede Neural CNN para reconhecer e classificar de forma binária imagens de Gatos e Cachorros
Para medir os resultados foram realizados os seguintes testes
A rede foi executada por um total de 50 épocas, o que durou um período de aproximadamente 133 minutos, sendo em média 160,52 segundos cada época do treinamento como mostra a figura abaixo
Validações foram feitas retirando imagens do proprio Dataset, imagens retiradas da Internet e Imagens Próprias
Grafico de Perda de treino e Validação para 10 épocas
Grafico de Perda de treino e Validação para 25 épocas
Grafico de Perda de treino e Validação para 50 épocas
É possivel verificar que quanto maior o número de épocas treinadas, maior é a acurácia da Rede Neural
O software pode ser executado abrindo os arquivos .py na sua IDE de preferência, (foram testadas nas IDEs pyCharm e Spyder) o usuário além de ter em mãos os códigos fonte, deve criar uma pasta chamada "treino" (para colocar o dataset de treino), e uma pasta "teste" (com todas as imagens que o usuário quer classificar, ambas as pastas no mesmo diretório.
Para definir a quantidade de Épocas a serem treinadas deve-se alterar o valor da variável "Epocas" e criar um arquivo com o formato padrão "modelo+NUMERO DE ÉPOCAS+epocas.h5", caso ele ainda não exista, onde Número de épocas é o mesmo definido dentro do codigo fonte
Para a classificação das imagens deve-se colocar todas as imagens que se que classificar dentro da pasta "teste" e no codigo fonte do arquivo "Teste.py" alterar as variaveis "ImagensParaAvaliar" para a quantidade de imagens a serem avaliadas e a variável "Epocas" para o valor do modelo de épocas que você quer utilizar
Trabalho Implementação 75INC - Rede Neural Convolucional para classificação binária de imagens