A execução de uma rede neural não é uma ocorrência pontual para um conjunto de dados, muitas vezes é necessário preparar um conjunto de dados para utilização, e depois de executar a rede, precisamos verificar o quão boa ela é, essas etapas são chamadas de pré- e pós-, -processamento respectivamente, vou explicar aqui como eles são feitos.
Pré-processamento
Em um conjunto de dados, de classificação, muitas vezes queremos diferenciar as amostras entre múltiplos grupos, como é o caso do dataset Iris que mostrei em Aplicações. Mas as funções de ativação que comentei, o degrau e a sigmóide, tem valores apenas 0 ou 1, como podemos usar essas funções para dados espalhados em mais de grupos?
Fazemos isso por utilizar o formato One-Hot no conjunto de dados, nesse formato ao invés de existir apenas uma saída que pode ser qualquer um dos conjuntos presentes nos dados, vamos criar um número de saídas igual ao número de conjuntos esperados, mas cada uma dessas saidas irá assumir apenas duas possibilidades, se pertence à um conjunto ou não, veja o exemplo abaixo do mesmo dataset Iris:
Dessa maneira funções que assumem um número limitado de valores, podem ser usadas para classificar sistemas muito maiores.
Pós-Processamento
Depois de executar uma rede neural em um dataset precisamos verificar o quão bom foi o comportamento da rede, então agora vou mostrar como verificar a Acurácia de uma rede, o programa utilizado para executar a rede neural aqui, foi o Multiple Back Propagation (Veja o site aqui), quando determinamos uma topologia e executamos o treino, podemos usar um conjunto de dados para treino e um separado para teste, assim os resultados serão mais similares aos que ocorreriam na aplicação real, ao executar a rede podemos ver na aba RMS qual o erro atual, isso será usado para interromper o processamento,
Mas para verificar o rendimento das saidas vamos na aba: Output vs Desired (Testing Data), então selecionamos a saida que queremos verificar, clicamos sobre o gráfico com o botão direito do mouse e vamos em copy data, ele irá copiar os dados do teste para a área de transferência do computador, vamos em um programa de processamento de dados e colamos os dados lá, se estivermos usando a função degrau, faremos apenas uma comparação simples para verificar os acerto, mas se usarmos a função sigmoide, devemos fazer um arredondamento no valor da saida, e depois comparar com a saida desejada, o número de acertos dividido pelo número de iterações será o rendimento da rede, acurácia.
Repetindo esse procedimento para múltiplas topologias, apenas devemos escolher a que melhor funciona para a aplicação desejada.
Fonte:
Aulas de INART, no Instituto Federal de São Paulo, campus São Paulo, com o professor Miguel Angelo de Abreu de Sousa, no periodo de 11/2020 até 03/2021
Veja o video sobre o Pré processamento Aqui
Veja o vídeo sobre Pós-processamento Aqui


Nenhum comentário:
Postar um comentário