AI: quão baixo você pode ir?

Atualização: 10 de dezembro de 2023

 

AI: quão baixo você pode ir?

AI: quão baixo você pode ir?

Os mercados estão sujeitos a modismos e o setor de controle integrado está longe de ser imune a eles. Na década de 1990, a lógica difusa parecia ser o caminho a seguir e os fornecedores de microcontroladores (MCU) se esforçaram para colocar suporte em suas ofertas apenas para vê-la se extinguir.

 

O aprendizado de máquina incorporado (ML) está passando por um frenesi muito maior à medida que os jogadores MCU estabelecidos e as start-ups de aceleração de IA tentam demonstrar seu compromisso com a ideia, que geralmente segue sob a bandeira do TinyML.

Daniel Situnayake, engenheiro fundador da TinyML na empresa de ferramentas de software Edge Impulse e co-autor de um livro renomado sobre tecnologia, diz que a situação hoje é muito diferente da dos anos 1990.

“O que é empolgante sobre o ML incorporado é que o aprendizado de máquina e o aprendizado profundo não são tecnologias novas e não comprovadas - na verdade, eles foram implantados com sucesso em computadores de classe de servidor por um tempo relativamente longo e estão no centro de uma tonelada de produtos. Embedded ML é sobre a aplicação de um conjunto comprovado de tecnologias a um novo contexto que permitirá muitos novos aplicativos que não eram possíveis anteriormente. ”

A ABI Research prevê que o mercado de MCUs e aceleradores habilitados para IA de baixo consumo para o mercado TinyML subirá de menos de US $ 30 milhões em receitas anuais este ano para mais de US $ 2 bilhões no início da próxima década.

Apesar do rápido crescimento, o analista da ABI Lian Jye Su espera que a concorrência se torne mais acirrada à medida que grandes empresas como a Bosch entram no mercado. Algumas start-ups, como a Eta Compute, já passaram do silício para as ferramentas de software.

“Vemos alguma consolidação. Ao mesmo tempo, a enorme fragmentação no mercado de IoT significa que um número significativo de fornecedores sobreviverá, como os mercados de chipset MCU ou IoT em geral ”, diz ele, apontando para o grande número de fornecedores que se concentram em mercados verticais específicos.

TinyML enfrenta restrições severas. Pete Warden, líder técnico da estrutura TensorFlow Micro na gigante dos mecanismos de busca e coautor de Situnayake em “TinyML: Machine Learning com TensorFlow Lite em Arduino e microcontroladores de potência ultrabaixa”, disse na conferência de processadores de outono do Linley Group que o objetivo é pegar modelos de aprendizado profundo e “colocá-los em execução em dispositivos que tenham apenas 20 KB de RAM. Queremos levar modelos construídos com esta tecnologia de ponta tecnologia e esmagá-los para rodar em processadores de muito baixo consumo de energia.

“Por ser um software de código aberto, não apenas interagimos com as equipes de produtos dentro do Google, mas também recebemos muitas solicitações de equipes de produtos em todo o mundo que estão tentando criar produtos interessantes. E muitas vezes temos que dizer: não, ainda não é possível. Podemos ver, em conjunto, muitos requisitos não atendidos ”, diz Warden.

A questão central é que os modelos de aprendizado profundo transferidos do ambiente do servidor exigem milhões ou até bilhões de funções multiplicação-adição (MAC) a serem executadas em um curto espaço de tempo, mesmo para modelos relativamente simples. Linley Gwennap, presidente do Linley Group, afirma que os aplicativos de áudio relativamente simples, como a leitura de palavras na fala que podem ativar o reconhecimento de voz, geram cerca de 2 milhões de MACs por segundo. O vídeo precisa de muito mais.

Os fornecedores de silício conseguiram aumentar a contagem de MAC tirando proveito do requisito relativamente baixo de precisão em cálculos individuais ao realizar inferências. Enquanto o treinamento em servidores geralmente exige aritmética de ponto flutuante de precisão simples ou dupla, cálculos inteiros de bytes inteiros (int8) parecem ser suficientes para a maioria das aplicações.

Há indicações de que, para camadas selecionadas em um modelo, mesmo int8 MACs são desnecessários. Cálculos binários ou ternários que podem ser executados usando pouco mais do que algumas portas cada não prejudicam a precisão geral em muitos casos. Potencialmente, os ganhos de desempenho são enormes, mas falta a combinação de suporte de hardware e software necessária para explorá-los totalmente, diz Situnayake.

Embora as ferramentas para a estrutura TensorFlow Lite normalmente suportem pesos int8, o suporte para resoluções mais baixas está longe de ser difundido. “Isso está mudando rápido”, observa Situnayake, apontando para aceleradores como os do Syntiant, que suportam pesos binários, de 2 e 4 bits, além do trabalho da Plumerai para treinar redes neurais binarizadas diretamente.

“Embora essas tecnologias ainda estejam na vanguarda e ainda não tenham se tornado populares para desenvolvedores de ML incorporados, não demorará muito para que façam parte do kit de ferramentas padrão”, acrescenta.

Reduzindo a carga aritmética

Existem outras opções para o trabalho TinyML que reduzem a carga aritmética. Falando na conferência TinyML Asia no final do ano passado, Jan Jongboom, cofundador e CTO da Edge Impulse, disse que a principal atração do ML é sua capacidade de encontrar correlações em dados que os algoritmos convencionais não selecionam. O problema reside no grande número de parâmetros que a maioria dos modelos convencionais tem que processar para encontrar essas correlações se as entradas forem amostras brutas.

“Você quer dar uma mão ao seu algoritmo de aprendizado de máquina para tornar sua vida mais fácil”, diz Jongboom. A técnica mais útil para sinais de tempo real típicos é o uso de extração de recursos: transformar os dados em representações que tornam possível construir redes neurais com ordens de magnitude menos parâmetros.

Tomando a fala como exemplo, uma transformação para o espaço mel-cepstrum reduz enormemente o número de parâmetros que podem codificar com eficiência as mudanças no som.

Em outros dados de sensor, como a alimentação de um acelerômetro usado para detecção de vibração em máquinas rotativas, outras formas de representações de tempo-frequência conjuntas geralmente funcionam.

Essa abordagem é usada por John Edwards, consultor e engenheiro de DSP da Sigma Numerix e professor visitante da Universidade de Oxford, em um projeto de análise de vibração.

Nesse caso, uma transformada de Fourier curta teve o melhor trade-off juntamente com transformações que compensam motores de velocidade variável. A extração de recursos reduziu o tamanho do modelo para apenas duas camadas que poderiam ser facilmente processadas em um NXP LPC55C69, que combina núcleos Arm Cortex-M33 com um acelerador DSP.

Jongboom diz que embora possa ser tentador seguir o caminho do aprendizado profundo, outros algoritmos de aprendizado de máquina podem fornecer resultados. “Nosso melhor modelo de detecção de anomalias não é uma rede neural: seu cluster básico de k-means.”

Onde o aprendizado profundo é um requisito, a dispersão fornece uma redução adicional na sobrecarga do modelo. Isso pode assumir a forma de poda, na qual os pesos que têm pouco efeito na saída do modelo são simplesmente removidos do pipeline. Outra opção é concentrar o esforço em partes do fluxo de dados que demonstram mudanças ao longo do tempo. Por exemplo, em vídeos de vigilância, isso pode significar o uso de processamento de imagem para detectar objetos em movimento e separá-los do fundo antes de alimentar um modelo com os pixels processados.

Tem sido uma experiência de aprendizado para Jongboom e outros. Ao descrever seu progresso através dos estágios do TinyML, no verão de 2017 ele pensou que todo o conceito era impossível. No verão de 2020, tendo procurado maneiras de otimizar o aplicativo e o design do modelo juntos, sua atitude mudou para acreditar que a classificação de imagem em tempo real em hardware de baixo consumo de energia é viável. À medida que aceleradores de baixa potência que suportam baixa precisão e dispersão aparecem com mais eficiência, a gama de modelos que podem funcionar em micropotência deve se expandir.

O resultado, afirma Situnayake, provavelmente será que “o ML acabará representando uma fração maior do que qualquer outro tipo de carga de trabalho. As vantagens do ML no dispositivo levarão a indústria a criar e implantar chips de baixo consumo de energia mais rápidos e mais capazes, que passarão a representar a maioria de todos os computadores embarcados no mundo ”. Embora existam muitos dispositivos que não executam essas cargas de trabalho, a necessidade de velocidade conforme os tamanhos dos modelos inevitavelmente aumentam focalizará a atenção em suas necessidades e começará a dominar o desenvolvimento de arquiteturas de software e hardware, desde que os aplicativos continuem.