Redes neurais artificiais embarcadas otimizadas para dispositivos de baixo custo e tamanho de memória reduzido
MLP, 8-bits, microcontroladores, redes neurais artificiais, sistemas embarcados
O emprego de Redes Neurais Artificiais (RNAs) têm sido de alto interesse para diversos setores: indústria, marketing, investimentos, medicina, dentre outros. Porém, aplicações embarcadas de RNAs sofrem com requerimentos de alta capacidade de processamento, armazenamento de dados e custo das plataformas que implementam essa tecnologia, tornando o uso comercial inviável. Este trabalho tem como objetivo propor uma implementação de RNAs Multilayer Perceptron (MLP) em microcontroladores de 8-bit, com treinamento e inferência embarcados. São demonstradas análises de convergência do treinamento, tempo gasto para inferência e ocupação de código de programa nas memórias internas do microcontrolador. Além disso, é demonstrada uma técnica de utilização de memória de programa para possibilitar o embarque de RNAs-MLP de arquiteturas maiores. Outra análise demonstra um comportamento que possibilita prever o tempo de inferência e ocupação de memória da RNA de acordo com o número de hiper parâmetros, habilitando-se um dimensionamento com comportamento esperado de uma implementação de RNA, baseado na sua arquitetura, para microcontroladores utilizando essa proposta.