Redação do Site Inovação Tecnológica - 15/03/2018
Redes neurais
Os avanços mais recentes nos sistemas de inteligência artificial, como programas de reconhecimento de fala e de faces, nasceram graças às redes neurais, densas malhas interligadas de processadores simples que aprendem a realizar tarefas analisando grandes conjuntos de dados, em um processo chamado treinamento.
Mas as redes neurais são grandes e seus cálculos são intensivos em energia, de forma que essa tecnologia ainda não é prática para aparelhos portáteis - a maioria dos aplicativos de smartphones que dependem de redes neurais simplesmente manda os dados para servidores de internet, que os processam e enviam os resultados de volta para o celular.
Agora, Avishek Biswas e Anantha Chandrakasan, do MIT, desenvolveram um processador dedicado que aumenta a velocidade dos cálculos de uma rede neural de três a sete vezes em relação aos seus predecessores, reduzindo o consumo de energia de 94 a 95%.
Isso torna mais prático executar redes neurais localmente em celulares ou mesmo incorporá-las em eletrodomésticos que não dependam de conexões contínuas, como ocorre com os gadgets tocadores de música e reconhecimento de voz que vêm ganhando mercado.
Processador dedicado para redes neurais
A grande demanda das redes neurais está no movimento dos dados entre o processador e a memória. Como os algoritmos de aprendizagem de máquina fazem cálculos intensamente, essa transferência de dados é responsável pela maior parte do consumo de energia.
Biswas e Chandrakasan trabalharam justamente na simplificação da computação nesses algoritmos. No seu processador, os valores de entrada de cada nó da rede neural são convertidos em tensões elétricas e depois multiplicados pelos pesos apropriados. Somente as tensões combinadas são convertidas de volta em uma representação digital e armazenadas para processamento posterior.
O chip pode então calcular os produtos para múltiplos nós - 16 de cada vez, no protótipo - em um único passo, em vez de deslocá-los entre o processador e a memória para cada computação.
Uma das inovações chave do sistema é que todos os pesos são 1 ou -1. Isso significa que eles podem ser implementados dentro da própria memória como chaves simples, que fecham um circuito ou o deixam aberto.
Os cálculos teóricos sugerem que redes neurais treinadas desta forma, com apenas dois pesos, devem perder pouca precisão - algo entre 1 e 2 por cento.