Neural Operators
Los operadores neuronales aprenden mapeos entre funciones, como un campo de flujo actual y otro futuro, y proporcionan modelos sustitutos rápidos de ecuaciones en derivadas parciales (PDE) que funcionan con cualquier resolución de cuadrícula.
Los operadores neuronales son redes neuronales que aprenden asignaciones entre funciones en lugar de entre vectores de tamaño fijo. La entrada es una función, como un campo de velocidad inicial, un mapa de permeabilidad de una formación rocosa o la atmósfera de hoy; la salida es otra función, como el flujo unos segundos después, el campo de presión resultante o el tiempo de mañana. Como el operador aprendido se define en un dominio continuo, los mismos pesos aceptan entradas muestreadas en una cuadrícula gruesa, una cuadrícula fina o una malla irregular. Una vez entrenado con soluciones de un solucionador numérico, un operador neuronal sustituye las simulaciones repetidas de toda una familia de ecuaciones en derivadas parciales (PDE) por una única pasada hacia delante rápida.
Operadores frente a modelos sustitutos convencionales#
Una red neuronal convolucional (CNN) entrenada como modelo sustituto con simulaciones de 64 x 64 aprende filtros vinculados a ese espaciado entre píxeles. En cambio, una capa de operador neuronal aproxima un operador integral: actualiza cada punto a partir de un filtro aprendido integrado en todo el dominio, más un término lineal punto a punto, y la cuadrícula solo determina la precisión con que se evalúa esa integral. Las predicciones convergen al refinar la cuadrícula, una propiedad denominada invariancia respecto a la discretización, por lo que se puede consultar a mayor resolución un modelo entrenado con simulaciones gruesas y económicas; el artículo sobre Fourier Neural Operator denominó a esto superresolución de disparo cero.
El uso de los mismos pesos a una resolución nueva es habitual en los modelos de visión. Ultralytics YOLO26 acepta cualquier imgsz en modo de predicción, redondeado hacia arriba a un múltiplo de su stride máximo de 32 píxeles, porque los filtros convolucionales no dependen del tamaño de la imagen. Sin embargo, cada filtro de 3 x 3 abarca un número fijo de píxeles, por lo que al duplicar imgsz se reduce a la mitad la anchura de la escena que abarca cada filtro.
A menudo se confunden dos métodos relacionados con los operadores neuronales. Una red neuronal informada por la física (PINN) se entrena para satisfacer una única instancia de una PDE con coeficientes y condiciones iniciales fijos, y hay que volver a entrenarla cuando estos cambian. Una Neural ODE aprende la derivada temporal de un vector de estado de longitud fija, que luego integra un solucionador.
Operadores neuronales de Fourier#
El aprendizaje de operadores despegó con DeepONet, publicado por Lu Lu, George Karniadakis y sus colegas en 2019, y con el marco de operadores neuronales de Zongyi Li, Nikola Kovachki, Anima Anandkumar, Andrew Stuart y sus colegas de Caltech. Su Fourier Neural Operator (FNO), publicado en ICLR 2021, calcula la integral del filtro como una convolución en el espacio de frecuencias: una transformada rápida de Fourier (FFT) convierte cada canal en modos de Fourier, matrices complejas aprendidas mezclan los canales en los modos de frecuencia más baja y descartan el resto, y una FFT inversa los devuelve a la cuadrícula. Cada punto de salida depende de toda la entrada: un campo receptivo global en una sola capa.
La ruta espectral se implementa en unas pocas líneas de PyTorch. Aquí, un mismo conjunto de pesos procesa las mismas cuatro funciones de entrada muestreadas en 64 y en 256 puntos:
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}")Imprime una salida de forma (4, 64) con u(0.25) = -1.0908 y otra de forma (4, 256) con u(0.25) = -1.0909. Los 128 pesos complejos no cambian y la salida en el mismo punto físico coincide con tres decimales, porque la capa opera sobre los modos de Fourier de la función subyacente y no sobre los puntos de la cuadrícula. En flujos turbulentos de Navier-Stokes, la ecuación de Burgers y el flujo de Darcy, el artículo sobre FNO comunicó predicciones hasta tres órdenes de magnitud más rápidas que las de los solucionadores de PDE tradicionales.
Otras arquitecturas#
DeepONet, publicado en Nature Machine Intelligence en 2021, se basa en un teorema de aproximación universal de operadores de 1995, de Tianping Chen y Hong Chen: una red de ramificación codifica la función de entrada a partir de valores en ubicaciones fijas de sensores, una red troncal codifica la coordenada donde se quiere obtener la salida y su producto escalar da el valor de salida en esa ubicación. Los operadores neuronales de grafos toman prestado el paso de mensajes de las redes neuronales de grafos (GNN) para trabajar con mallas irregulares en geometrías complejas. Los transformers de operadores tratan los puntos muestreados o las regiones del dominio como tokens. Entrenado previamente en dinámica de fluidos, Poseidon, de ETH Zurich, publicado en 2024, sirve como modelo fundacional para PDE y se ajustó con 15 tareas posteriores, incluida física ausente de sus datos de preentrenamiento. La biblioteca de código abierto neuraloperator implementa FNO y muchas de estas variantes.
Aplicaciones#
Los datos de entrenamiento proceden de solucionadores convencionales, por lo que cada par de entrenamiento son datos sintéticos cuyo coste se paga una sola vez; después, el operador entrenado responde rápidamente a muchas consultas: barridos de diseño de perfiles aerodinámicos o formas de reactores, estudios de cuantificación de la incertidumbre que requieren miles de ejecuciones y gemelos digitales de máquinas y plantas que deben actualizarse más rápido que una simulación completa. Los operadores neuronales informados por la física añaden el residuo de la PDE a la función de pérdida para que las predicciones sigan siendo coherentes con las ecuaciones que rigen el sistema cuando escasean los datos de entrenamiento.
En la predicción meteorológica, FourCastNet, desarrollado por NVIDIA y colaboradores académicos en 2022, se basa en un operador neuronal de Fourier adaptativo y genera predicciones globales con una resolución de 0,25°, incluida una previsión de una semana en menos de 2 segundos. Es varios órdenes de magnitud más rápido que el Sistema Integrado de Predicción del ECMWF, con el que iguala la precisión a corto plazo para variables a gran escala.










