A primeira etapa nesse caso é isolar um subconjunto de transações legítimas para criar o conjunto de treinamento e então treinar a rede. De todas as transações legítimas no conjunto de dados original, 90% delas foram usadas para treinar e avaliar a rede de autoencoder e os 10% restantes, juntamente com as transações fraudulentas, foram usados para construir o conjunto de testes para a avaliação de toda a estratégia.
As etapas usuais de preparação de dados devem ser aplicadas ao conjunto de treinamento, conforme discutimos anteriormente. No entanto, como também vimos antes, esse conjunto de dados já foi limpo e está pronto para ser utilizado. Não são necessárias etapas adicionais de preparação de dados, o único passo que precisamos dar é o obrigatório da rede neural: a normalização dos vetores de entrada entre [0,1].
A rede do autoencoder é definida como uma arquitetura 30-14-7-7-30, usando as funções tanh e ReLU para ativação e o regularizador de atividades L1 = 0,0001, conforme sugerido na postagem do blog "Detecção de fraude de cartão de crédito usando autoencoder no Keras - TensorFlow for Hackers (Parte VII)", de Venelin Valkov. O parâmetro de regularização de atividade L1 é uma restrição de dispersão, o que torna a rede menos propensa a superestimar os dados de treinamento.
A rede é treinada até que os valores de perda final estejam dentro da faixa [0.070, 0.071], de acordo com o erro quadrático médio da função de perda (MSE):
O número de ciclos de treinamento é definido como 50, o tamanho do lote N também é definido com o mesmo número e Adam, uma versão otimizada do algoritmo de retropropagação, é escolhido como o algoritmo de treinamento. Após este processo, a rede é salva para implantação como um arquivo Keras.
O valor da função de perda, no entanto, não conta toda a história. Apenas nos diz o quão bem a rede é capaz de reproduzir dados de entrada "normais" na camada de saída. Para ter uma visão completa do desempenho dessa abordagem na detecção de transações fraudulentas, precisamos aplicar a regra de detecção de anomalias mencionada anteriormente utilizando os dados de teste, incluindo as poucas fraudes.