Neural Operators
Operadores neurais aprendem mapeamentos entre funções, como um campo de fluxo agora e mais tarde, gerando aproximações rápidas de EDPs que funcionam em qualquer resolução de grade.
Operadores neurais são redes neurais que aprendem mapeamentos entre funções, em vez de entre vetores de tamanho fixo. A entrada é uma função, como um campo inicial de velocidade, um mapa de permeabilidade de uma formação rochosa ou a atmosfera de hoje, e a saída é outra função, como o fluxo alguns segundos depois, o campo de pressão resultante ou o clima de amanhã. Como o operador aprendido é definido em um domínio contínuo, os mesmos pesos aceitam a entrada amostrada em uma grade grosseira, em uma grade fina ou em uma malha irregular. Depois de treinado com soluções de um solucionador numérico, um operador neural substitui simulações repetidas de toda uma família de equações diferenciais parciais (PDEs) por uma única passagem direta rápida.
Operadores vs. Surrogates Convencionais#
Uma rede neural convolucional (CNN) treinada como surrogate em simulações de 64 x 64 aprende kernels vinculados a esse espaçamento entre pixels. Em vez disso, uma camada de operador neural aproxima um operador integral, atualizando cada ponto a partir de um kernel aprendido integrado por todo o domínio, mais um termo linear pontual, e a grade apenas determina com que precisão essa integral é avaliada. As previsões convergem à medida que a grade é refinada, uma propriedade chamada invariância à discretização, portanto um modelo treinado com simulações grosseiras e baratas pode ser consultado em resolução mais alta, o que o artigo sobre Fourier Neural Operator chamou de super-resolução zero-shot.
Os mesmos pesos operando em uma nova resolução são algo familiar nos modelos de visão. O Ultralytics YOLO26 aceita qualquer imgsz no modo de previsão, arredondado para cima até um múltiplo do stride máximo de 32 pixels, porque os kernels convolucionais não dependem do tamanho da imagem; no entanto, cada kernel 3 x 3 abrange um número fixo de pixels, portanto dobrar imgsz reduz pela metade a largura da cena coberta por cada kernel.
Dois métodos relacionados costumam ser confundidos com operadores neurais. Uma rede neural informada pela física (PINN) treina uma rede para satisfazer uma única instância de PDE com coeficientes e condições iniciais fixos, e precisa ser retreinada quando eles mudam. Uma Neural ODE aprende a derivada temporal de um vetor de estado de comprimento fixo, e um solucionador a integra.
Operadores Neurais de Fourier#
O aprendizado de operadores ganhou força com a DeepONet, publicada por Lu Lu, George Karniadakis e colegas em 2019, e com a estrutura de operadores neurais de Zongyi Li, Nikola Kovachki, Anima Anandkumar, Andrew Stuart e colegas da Caltech. O Fourier Neural Operator (FNO), publicado na ICLR 2021, calcula a integral do kernel como uma convolução no domínio da frequência: uma transformada rápida de Fourier (FFT) converte cada canal em modos de Fourier, matrizes complexas aprendidas misturam os canais nos modos de menor frequência e descartam os demais, e uma FFT inversa retorna à grade. Cada ponto de saída depende de toda a entrada, formando um campo receptivo global em uma camada.
O caminho espectral pode ser implementado em poucas linhas de PyTorch. Aqui, um conjunto de pesos processa as mesmas quatro funções de entrada amostradas em 64 e em 256 pontos:
import torch
torch.manual_seed(0)
channels, modes = 4, 8
# Learned complex weights act on the 8 lowest Fourier modes, whatever the grid size
weights = torch.randn(channels, channels, modes, dtype=torch.cfloat) / channels
for points in (64, 256):
x = torch.arange(points) / points # the same periodic domain [0, 1), sampled coarsely or finely
field = torch.stack([torch.sin(2 * torch.pi * k * x) + x * (1 - x) for k in range(1, channels + 1)])
spectrum = torch.fft.rfft(field) # one row of Fourier coefficients per channel
mixed = torch.zeros(channels, points // 2 + 1, dtype=torch.cfloat)
mixed[:, :modes] = torch.einsum("im,iom->om", spectrum[:, :modes], weights)
output = torch.fft.irfft(mixed, n=points) # back to the grid the input came from
print(f"{points} points: output shape {tuple(output.shape)}, u(0.25) = {output[0, points // 4]:.4f}")Ele imprime uma saída de formato (4, 64) com u(0.25) = -1.0908 e outra de formato (4, 256) com u(0.25) = -1.0909. Os 128 pesos complexos nunca mudam, e a saída no mesmo ponto físico coincide até três casas decimais porque a camada atua nos modos de Fourier da função subjacente, e não nos pontos da grade. Para o fluxo turbulento de Navier-Stokes, a equação de Burgers e o fluxo de Darcy, o artigo do FNO relatou previsões até três ordens de magnitude mais rápidas que os solucionadores tradicionais de PDEs.
Outras Arquiteturas#
A DeepONet, publicada na Nature Machine Intelligence em 2021, baseia-se em um teorema de aproximação universal para operadores de 1995, de Tianping Chen e Hong Chen: uma rede de ramificação codifica a função de entrada a partir de valores em posições fixas de sensores, uma rede de tronco codifica a coordenada onde se deseja a saída, e o produto escalar entre elas fornece o valor da saída nesse ponto. Operadores neurais de grafos aproveitam a passagem de mensagens das redes neurais de grafos (GNNs) para lidar com malhas irregulares em geometrias complexas. Os transformers de operadores tratam pontos amostrados ou trechos do domínio como tokens. Pré-treinado em dinâmica dos fluidos, o Poseidon, da ETH Zurich em 2024, atua como modelo fundacional para PDEs e foi ajustado por sintonia fina em 15 tarefas posteriores, incluindo física ausente dos dados de pré-treinamento. A biblioteca de código aberto neuraloperator implementa o FNO e muitas dessas variantes.
Aplicações#
Os dados de treinamento vêm de solucionadores convencionais, portanto cada par de treinamento é dado sintético, cujo custo é pago uma única vez; depois, o operador treinado responde rapidamente a muitas consultas: varreduras de projeto de formatos de aerofólios ou reatores, estudos de quantificação de incerteza que exigem milhares de execuções e gêmeos digitais de máquinas e fábricas que precisam ser atualizados mais rápido do que uma simulação completa. Operadores neurais informados pela física adicionam o resíduo da PDE à função de perda para que as previsões permaneçam consistentes com as equações que regem o sistema quando há poucos dados de treinamento.
Na previsão do tempo, o FourCastNet, desenvolvido pela NVIDIA e colaboradores acadêmicos em 2022, baseia-se em um operador neural de Fourier adaptativo e produz previsões globais com resolução de 0,25°, gerando uma previsão de uma semana em menos de 2 segundos, ordens de magnitude mais rápido que o Sistema Integrado de Previsão do ECMWF, com o qual iguala a precisão de curto prazo para variáveis de grande escala.










