top of page
Buscar
  • Foto do escritorLarry Sackiewicz

Os modelos de IA agora podem aprender continuamente com novos dados em dispositivos inteligentes


Treinar um modelo de Machine Learning em um dispositivo de ponta inteligente permite que ele se adapte a novos dados e faça melhores previsões. Por exemplo, treinar um modelo em um teclado inteligente pode permitir que o teclado aprenda continuamente com a escrita do usuário. No entanto, o processo de treinamento requer tanta memória que normalmente é feito usando computadores poderosos em um data center, antes que o modelo seja implantado em um dispositivo. Isso é mais caro e levanta problemas de privacidade, pois os dados do usuário devem ser enviados para um servidor central.


Para resolver esse problema, pesquisadores do MIT e do MIT-IBM Watson AI Lab desenvolveram uma nova técnica que permite o treinamento no dispositivo usando menos de um quarto de megabyte de memória. Outras soluções de treinamento projetadas para dispositivos conectados podem usar mais de 500 megabytes de memória, excedendo em muito a capacidade de 256 kilobytes da maioria dos microcontroladores (há 1.024 kilobytes em um megabyte).


Os algoritmos inteligentes e a estrutura que os pesquisadores desenvolveram reduzem a quantidade de computação necessária para treinar um modelo, o que torna o processo mais rápido e mais eficiente em termos de memória. Sua técnica pode ser usada para treinar um modelo de aprendizado de máquina em um microcontrolador em questão de minutos.


Essa técnica também preserva a privacidade mantendo os dados no dispositivo, o que pode ser especialmente benéfico quando os dados são confidenciais, como em aplicativos médicos. Também pode permitir a personalização de um modelo com base nas necessidades dos usuários. Além disso, o framework preserva ou melhora a precisão do modelo quando comparado a outras formas de treinamento.


Agora os dispositivos IoT permitem não apenas que realizem inferências, mas também atualizem continuamente os modelos de IA para dados recém-coletados, abrindo caminho para o aprendizado no dispositivo ao longo da vida. A baixa utilização de recursos torna o aprendizado profundo mais acessível e pode ter um alcance mais amplo, especialmente para dispositivos de ponta de baixa potência.


Treino leve

Um tipo comum de modelo de aprendizado de máquina é conhecido como Rede Neural. Vagamente baseados no cérebro humano, esses modelos contêm camadas de nós interconectados, ou neurônios, que processam dados para concluir uma tarefa, como reconhecer pessoas em fotos. O modelo deve ser treinado primeiro, o que envolve mostrar milhões de exemplos para que ele possa aprender a tarefa. À medida que aprende, o modelo aumenta ou diminui a força das conexões entre os neurônios, que são conhecidas como pesos.


O modelo pode sofrer centenas de atualizações à medida que aprende, e as ativações intermediárias devem ser armazenadas durante cada rodada. Em uma rede neural, a ativação é o resultado intermediário da camada intermediária. Como pode haver milhões de pesos e ativações, treinar um modelo requer muito mais memória do que executar um modelo pré treinado.


Os cientistas de dados do MIT empregaram duas soluções algorítmicas para tornar o processo de treinamento mais eficiente e menos intensivo em memória. A primeira, conhecida como atualização esparsa, usa um algoritmo que identifica os pesos mais importantes a serem atualizados a cada rodada de treinamento. O algoritmo começa a congelar os pesos um de cada vez até ver a precisão cair para um limite definido e, em seguida, para. Os pesos restantes são atualizados, enquanto as ativações correspondentes aos pesos congelados não precisam ser armazenadas na memória.


Atualizar todo o modelo é muito caro porque há muitas ativações, então as pessoas tendem a atualizar apenas a última camada, mas como você pode imaginar, isso prejudica a precisão. A segunda solução envolve treinamento quantizado e simplificação dos pesos, que normalmente são de 32 bits. Um algoritmo arredonda os pesos para que sejam apenas oito bits, por meio de um processo conhecido como quantização, que reduz a quantidade de memória para treinamento e inferência. A inferência é o processo de aplicar um modelo a um conjunto de dados e gerar uma previsão. Em seguida, o algoritmo aplica uma técnica chamada de quantization-aware scaling (QAS), que atua como um multiplicador para ajustar a relação entre peso e gradiente, para evitar qualquer queda na precisão que possa vir do treinamento quantizado.


Os pesquisadores desenvolveram um sistema, chamado de minúsculo mecanismo de treinamento, que pode executar essas inovações algorítmicas em um microcontrolador simples que não possui um sistema operacional. Esse sistema altera a ordem das etapas no processo de treinamento para que mais trabalho seja concluído no estágio de compilação, antes que o modelo seja implantado no dispositivo de ponta.


Aceleração de sucesso


Antigamente uma otimização exigia apenas 157 kilobytes de memória para treinar um modelo de aprendizado de máquina em um microcontrolador, enquanto outras técnicas projetadas para treinamento leve ainda precisariam entre 300 e 600 megabytes.


Hoje é possível ver uma estrutura treinando um modelo de visão computacional para detectar pessoas em imagens. Após apenas 10 minutos de treinamento, eles aprendem a completar a tarefa com sucesso. Esse método foi capaz de treinar um modelo mais de 20 vezes mais rápido do que em outras abordagens.


Agora que se demonstrou o sucesso dessas técnicas para modelos de visão computacional, os pesquisadores querem aplicá-las a modelos de linguagem e diferentes tipos de dados, como dados de séries temporais. Ao mesmo tempo, eles querem usar o que aprenderam para diminuir o tamanho de modelos maiores sem sacrificar a precisão, o que pode ajudar a reduzir a pegada de carbono do treinamento de modelos de aprendizado de máquina em grande escala.


Fonte: Instituto de Tecnologia de Massachusetts (MIT)

4 visualizações0 comentário
bottom of page