Quando eu digo que trabalho na NVIDIA, algumas pessoas ainda relacionam a marca as famosas placas de vídeo para games, o que não é errado devido à popularidade da marca. Atualmente, a NVIDIA é a líder em computação acelerada por GPUs, mas, muito além dos PCs para jogar, a GPU é uma provedora de processamento para diversos fins, alguns até que você nem imagina e, nesse caso, precisamos falar sobre as tecnologias mais promissoras nos últimos anos que estão revolucionando o nosso modo de viver, tanto quanto a Internet. Estamos falando de Inteligência Artificial, Machine Learning e Deep Learning que desde quando anunciamos a geração PASCAL vem trazendo novos conceitos para o mercado professional.
Uma plataforma de processamento via GPU possui capacidade de oferecer novas experiências de criação, desenvolvimento e usabilidade para produtos de Internet das Coisas e dispositivos como o Echo, da Amazon. Ele também é responsável pela tecnologia embarcada em veículos autônomos, além, é claro, de equipar os mais poderosos e inteligentes supercomputadores, como o nosso Santos Dumont ou o popstar máximo do Machine Learning, o Watson, da IBM. O Machine Learning está em todo lugar e, pode acreditar, onde há essa tecnologia, há um processamento via GPU atrás disso.
Aqui mesmo no Brasil, o mestre em informática pela PUC-Rio, Matheus Masson, criou o Genial Mind (https://www.genialmind.com/), uma plataforma que usa Machine Learning para oferecer músicas de acordo com o gosto pessoal do usuário no Spotify e iTunes com um diferencial: ele identifica músicas lançadas há pouco tempo e as recomenda aos usuários. E tudo isso foi feito via GPU e sob o mínimo de investimento financeiro, algo inédito até para grandes corporações como Netflix e Amazon, que já gastaram milhares de dólares para resolver esta questão conhecida como "Cold Start".
Qual é o segredo do Genial Mind ou do carro autônomo na tomada de decisões? A resposta é o treinamento e reconhecimento de imagens como forma de aprendizado. O conceito básico do Machine Learning é usar algoritmos para analisar dados, aprender com eles e, em seguida, fazer uma determinação ou previsão sobre algo no mundo. Portanto, ao invés de rotinas de software de codificação manual com um conjunto específico de instruções para realizar uma tarefa específica, a máquina é "treinada" usando grandes quantidades de dados e algoritmos que lhe dão a capacidade de aprender a executar a tarefa. No caso do Genial Mind, a plataforma foi treinada para entender que um fã do Metallica pode também ouvir e gostar de Iron Maiden.
Uma das melhores áreas de aplicação para Machine Learning há muitos anos é a visão computacional que hoje é usada nos veículos da marca Tesla. Nessa técnica de aprendizado, os programadores escrevem classificadores codificados manualmente como filtros de detecção de borda para que o programa possa identificar diferentes variáveis, como, por exemplo, qual é o limite da via ou um conjunto de letras como "P-A-R-E". Com um supercomputador processando e reconhecendo imagens via GPU, o carro automaticamente reduz a velocidade assim que avista uma placa com essas letras. Você pode ver mais dessa tecnologia incrível no mais recente vídeo da Tesla, que apresenta como funcionará o sistema de seu carro totalmente autônomo rodando na cidade com muita segurança: https://vimeo.com/192179727.
Em ambos os exemplos, o computador usa computação via GPU para processar imagens e codifica-las em informações. E estamos usando dois exemplos aplicados para fins comerciais, mas você já se imaginou brincando de "Imagem & Ação" com um computador? O Google pensou e criou o Quick Draw (https://quickdraw.withgoogle.com/#), um jogo online e gratuito que desafia o jogador a desenhar para a rede neural adivinhar. Como o computador é treinado via armazenamento das imagens, basta desenhar minimamente parecido com a palavra solicitada para que a inteligência artificial descubra. E é interessante que, mesmo que você erre o desenho, o sistema armazenou a sua tentativa, que poderá ser usada na próxima vez que o desafiarem.
E desafio é a palavra que melhor define o aprendizado de máquinas. Quanto mais as desafiamos, mais elas aprendem. E quem ousa duvidar do potencial de quem tem a frieza ímpar de não se abalar com os erros? É ver para crer. Ou, no caso do Machine Learning, é ver para aprender.
Marcio Aguiar, gerente de Vendas Enterprise da NVIDIA na América Latina.