Topo

Diogo Cortiz

OPINIÃO

Essa IA ignorou algoritmos feitos por humanos e criou um melhor do zero

Diogo Cortiz

Especial para o UOL

16/06/2023 04h00

Ordenar uma sequencia é umas das questões fundamentais da computação e essencial para o funcionamento de muitas aplicações.

Sabe quando pedimos para o Word colocar uma lista em ordem alfabética? Ou então para o Excel mostrar valores do menor para o maior?

Apertamos o botão e tá pronto, mas quem faz isso são os algoritmos de ordenação. E eles estão em um monte de outras aplicações que nem imaginamos, muitas vezes ocultos em como os computadores processam dados.

A ordenação parece uma tarefa simples, mas não é.

Qual palavra vem primeiro? "Prerrogativa" ou "presunção"?

Para responder essa questão, você teve que fazer algumas comparações entre as letras para colocar as palavras em ordem. Os algoritmos de ordenação trabalham de forma parecida. Comparam itens, manipulam as posições, tudo isso para deixar na ordem desejada.

Não existe apenas um algoritmo, mas uma série deles. Alguns simples e outros sofisticados, sendo que os mais utilizados hoje foram tão otimizados nas últimas décadas que sobrou pouco espaço para inovação.

Era o que achávamos até a Google DeepMind nos mostrar que a IA poderia ajudar a ciência da computação a ir além.

Em artigo publicado na revista Nature, a empresa apresentou o AlphaDev, um modelo de IA que conseguiu criar algoritmos ainda mais otimizados.

E o mais interessante é que a empresa obteve esse resultado ao fazer a IA tentar algo novo em vez de melhorar os algoritmos criados pelos humanos.

O AlphaDev foi baseado no AlphaZero, aquela IA que derrotou campeões mundiais em jogos como go, xadrez e shogi.

O diferencial desse tipo de IA é a adoção do aprendizado por reforço, que depende menos de dados existentes e mais da simulação da própria máquina.

Quando a IA ganhou do Lee Sedol no duelo de Go, ela fez uma jogada que nem os humanos entenderam direito, afinal ela tinha aprendido jogando com ela mesma e não a partir de dados de jogos humanos.

Esse é o segredo do aprendizado por reforço. Inspirada no behaviorismo de B.F. Skinner, essa abordagem faz a máquina aprender por meio da tentativa e erro.

Geralmente passamos um objetivo para a IA que, dentro de um ambiente controlado, recebe um reforço positivo quando faz algo que a aproxima da meta ou uma punição quando se afasta do alvo.

Desta forma, a IA aprende a construir o seu próprio caminho e decisões, sem depender apenas de dados históricos da humanidade. E é isso que eu acho mais fascinante.

Para treinar o AlphaDev a desvendar novos algoritmos, os pesquisadores transformaram a tarefa de ordenação em um jogo single player apelidado de "assembly game". Desta forma, o modelo passou a tentar otimizar a ordenação a partir de algo que geralmente os humanos não tentam: as instruções "assembly".

A DeepMind disponibilizou de maneira open-source o seu algoritmo na biblioteca principal de C++, uma das linguagens de programação mais utilizadas do mundo, e com isso impulsiona uma computação otimizada para milhões de desenvolvedores no mundo todo.

Depois de uma década, a parte de ordenação da biblioteca será atualizada, e pela primeira vez por um algoritmo treinado desta maneira.

O aprendizado por reforço é uma das áreas mais interessantes e promissoras da IA, principalmente porque faz nós, humanos, enxergarmos aquilo que nem estávamos olhando.

*Professor na PUC-SP e Pesquisador no NIC.br. Doutor em Tecnologias da Inteligência e Design Digital pela PUC-SP, com PhD fellowship pela Université Paris- Sorbonne. MBA em Economia Internacional pela USP e Especialista em Neurociência. Foi pesquisador visitante no laboratório de Ciência Cognitiva da Queen Mary University of London. Tem pesquisas na intersecção entre ciência cognitiva, design e tecnologia