A não ser que seja um físico ou engenheiro, realmente não há muitos motivos para saber equações diferenciais parciais. Eu sei. Após anos a estudá-las na faculdade enquanto estudava engenharia mecânica, nunca mais as usei no mundo real.
Mas equações diferenciais parciais, ou EDPs, também são um pouco mágicas. São uma categoria de equações matemáticas que são realmente boas para descrever mudanças no espaço e no tempo e, portanto, muito úteis para descrever os fenómenos físicos no nosso universo. Podem ser usadas para modelar tudo, desde órbitas planetárias e placas tectónicas até a turbulência do ar que perturba um voo, o que nos permite fazer coisas práticas como prever atividade sísmica e projetar aviões seguros.
O problema é que as EDPs são notoriamente difíceis de resolver. E aqui, o significado de “resolver” talvez seja melhor ilustrado por um exemplo. Digamos que você está a tentar simular a turbulência do ar para testar um novo projeto de avião. Existe uma EDP conhecida chamada Navier-Stokes que é usada para descrever o movimento de qualquer fluido. “Resolver” a EDP Navier-Stokes permite captar o movimento do ar (também conhecido como condições do vento) em qualquer momento e modelar como este se continuará a mover ou como estava a mover-se antes.
Esses cálculos são altamente complexos e computacionalmente intensos, razão pela qual as disciplinas que usam muitas EDPs geralmente dependem de supercomputadores para fazer as contas. É também uma razão pela qual o campo da Inteligência Artificial (IA) tem tido um interesse particular por essas equações. Se pudéssemos usar a deep learning para acelerar o processo de resolvê-las, isso poderia ser muito bom para a investigação científica e a engenharia.
Agora, os investigadores do Instituto de Tecnologia da Califórnia (Caltech) apresentaram uma nova técnica de deep learning para resolver EDPs que é muito mais precisa do que os métodos desenvolvidos anteriormente. Também é muito mais generalizável, capaz de resolver famílias inteiras de EDPs – como a equação de Navier-Stokes para qualquer tipo de fluido – sem a necessidade de novas aprendizagens. Além disso, é 1.000 vezes mais rápida do que as fórmulas matemáticas tradicionais, o que reduziria a nossa dependência de supercomputadores e aumentaria a nossa capacidade computacional para modelar problemas ainda maiores. É isso aí. Podem mandar ver.
Felicitações de MC Hammer
Antes de nos aprofundarmos em como os investigadores fizeram isso, vamos primeiro apreciar os resultados. Na imagem abaixo, pode ver uma demonstração impressionante. A primeira coluna mostra dois instantâneos do movimento de um fluido; a segunda mostra como o fluido continuou a mover-se na vida real; e a terceira mostra como a rede neural previu que o fluido se moveria. Basicamente parece idêntica à segunda.
O artigo ganhou muita atenção no Twitter, e até mesmo um elogio do rapper MC Hammer. Sim, de verdade.
Ok, de volta a como fizeram isso.
Quando a função se encaixa
A primeira coisa a entender aqui é que as redes neurais são fundamentalmente aproximações de função. (É o quê?) Quando são treinadas num conjunto de dados de entradas e saídas emparelhadas, estão, na verdade, calculando a função, ou a série de operações matemáticas, que irão transpor uma para a outra. Pense em construir um detector de gatos. Está a treinar a rede neural alimentando-a com muitas imagens de gatos e coisas que não são gatos (as entradas) e rotulando cada grupo com 1 ou 0, respectivamente (as saídas). A rede neural então procura a melhor função que pode converter cada imagem de um gato em 1 e cada imagem de todo o resto em 0. É assim que pode olhar para uma nova imagem e dizer se é ou não um gato. Está a usar a função que encontrou para calcular a sua resposta – e se a sua aprendizagem foi boa, acertará na maioria das vezes.
Convenientemente, esse processo de aproximação de função é o que precisamos para resolver uma EDP. Em última instância, estamos a tentar encontrar uma função que melhor descreva, digamos, o movimento das partículas de ar sobre o espaço físico e o tempo.
E é esse o ponto crucial do artigo. As redes neurais são geralmente treinadas para aproximar funções entre entradas e saídas definidas no espaço euclidiano, o seu clássico gráfico com eixos x, y e z. Mas desta vez, os investigadores decidiram definir as entradas e saídas no espaço de Fourier, que é um tipo especial de gráfico para traçar frequências de ondas. A ideia deles, que foi baseada em trabalhos em outras áreas, é que algo como o movimento do ar pode realmente ser descrito como uma combinação de frequências de ondas, explica a professora Anima Anandkumar do Caltech, que supervisionou a pesquisa junto aos seus colegas, professores Andrew Stuart e Kaushik Bhattacharya. A direção geral do vento num nível macro é como uma baixa frequência com ondas muito longas e letárgicas, enquanto os pequenos redemoinhos que se formam no nível micro são como altas frequências com ondas muito curtas e rápidas.
Por que isso importa? Porque é muito mais fácil aproximar uma função de Fourier no espaço de Fourier do que resolver uma EDPs no espaço euclidiano, o que simplifica muito o trabalho da rede neural. Além disso, gera benefícios de grande precisão e eficiência graças à sua grande vantagem de velocidade sobre os métodos tradicionais: essa técnica tem uma taxa de erro 30% menor para resolver Navier-Stokes do que os métodos já conhecidos de deep learning.
Tudo isso é muito mais engenhoso e também torna o método mais generalizável. Os métodos anteriores de deep learning tiveram que ser treinados separadamente para cada tipo de fluido, enquanto este só precisa ser treinado uma vez para lidar com todos eles, conforme confirmado pelos experimentos dos investigadores. Embora ainda não tenham tentado estender isso a outros exemplos, também deve ser capaz de lidar com todas as composições da Terra ao resolver EDPs relacionadas à atividade sísmica, ou todo tipo de material ao resolver EDPs relacionadas à condutividade térmica.
Super Simulação
Os professores e os seus alunos de doutoramento não fizeram essa pesquisa apenas por diversão teórica. Querem levar IA para mais disciplinas científicas. Falando com vários colaboradores da ciência do clima, sismologia e ciência dos materiais, Anandkumar decidiu enfrentar o desafio das EDPs com os seus colegas e alunos. Agora estão a trabalhar para colocar o seu método em prática com outros investigadores do Caltech e do Lawrence Berkeley National Laboratory.
Um tópico de pesquisa com o qual Anandkumar está particularmente animada: as mudanças climáticas. Navier-Stokes não é apenas bom em modelar turbulência do ar; também é usado para padrões climáticos. “Ter boas previsões meteorológicas refinadas em escala global é um problema tão desafiador”, refere, “e mesmo nos maiores supercomputadores, não podemos fazer isso numa escala global hoje. Portanto, se pudermos usar esses métodos para acelerar todo o processo, isso seria tremendamente chocante”.
Existem também muitas, muitas outras aplicações, acrescenta. “Nesse sentido, o céu é o limite, já que temos uma forma geral de acelerar todas essas aplicações”.