Comida clave
- Las redes neuronales informadas en la física incorporan leyes físicas directamente en el entrenamiento de redes neuronales. Pueden resolver PDE sin generación de malla tradicional o conjuntos de datos masivos.
- Los sustitutos de ML tradicionales a menudo necesitan muchas carreras de simulación para entrenar. Los pines usan ecuaciones de física como restricciones y pueden trabajar con datos de límites o mediciones escasas.
- Un PINN genera predicciones mientras minimiza el residuo de PDE a través de la diferenciación automática. Si las predicciones violan la física gobernante, la red se penaliza durante el entrenamiento.
- Los pines son útiles para problemas inversos, regímenes de datos escasos, geometrías irregulares y casos en los que la generación de malla es difícil.
- Los pines no son ideales para problemas simples donde los solucionadores tradicionales funcionan bien, o cuando se necesita rigurosos límites de error y garantías de convergencia.
Estás tratando de resolver una ecuación diferencial parcial. Puede describir la difusión del calor en una nueva aleación, el flujo de fluido alrededor de una pala de turbina o la evolución del campo de fase en un electrodo de batería.
Tradicionalmente, discretizaría el dominio en una malla, establecería un esquema numérico, resolvería el sistema resultante y espera que la malla no cree problemas numéricos.
Las redes neuronales informadas en la física ofrecen otro enfoque. En lugar de construir una malla primero, entrena una red neuronal que aprende la solución mientras está limitado por la ecuación física que gobierna.
Desde su introducción por Raissi, Perdikaris y Karniadakis, los pinns han pasado de una idea académica especializada a una herramienta importante en la ciencia computacional. Son especialmente útiles para problemas que son incómodos tanto para los métodos numéricos tradicionales como para el aprendizaje automático convencional.
Esta guía explica el concepto central, cómo funcionan los pines, cómo implementar una versión simple en PyTorch, dónde ayudan y dónde importan sus limitaciones.
La idea central: enseñar a una red neuronal las leyes de la física
Un modelo de aprendizaje automático estándar aprende minimizando el error entre las predicciones y un conjunto de datos de entrenamiento. En su mayoría está basado en datos. Proporciona ejemplos, el modelo encuentra patrones y espera que se generalice.
Una red neuronal informada en la física utiliza un enfoque diferente. Se entrena tanto en datos como en física.
La red neuronal predice la solución de una PDE. La función de pérdida no solo mide qué tan cerca está la predicción de los datos disponibles, sino también qué tan bien satisface la predicción la ecuación diferencial de gobierno.
En otras palabras, la red se penaliza cuando viola la física.
Considere una PDE escrita en forma residual:
f(u, x, ∂u/∂x, ∂²u/∂x², …) = 0
Aquí, u es la solución, y las derivadas se toman con respecto a las coordenadas espaciales o temporales. Un PINN construye una función de pérdida con dos componentes principales:
- pérdida de datos. Esto mide el error cuadrático medio entre las predicciones de red y los datos disponibles, como las condiciones iniciales, las condiciones de contorno o las mediciones escasas.
- Pérdida de física. Esto mide el residuo de PDE al cuadrado medio en los puntos de colocación muestreados en todo el dominio.
El modelo optimiza ambos términos al mismo tiempo. Aprende predicciones que son consistentes con los datos y con la física gobernante.
Cómo funcionan realmente los pines: la arquitectura
La arquitectura de red neuronal para PINN suele ser un perceptrón de varias capas.
La capa de entrada recibe coordenadas espaciales como x, y y z, y posiblemente el tiempo t. Para un problema de estado estacionario 2D, puede haber dos entradas. Para un problema 1D transitorio, las entradas son a menudo x y t.
Las capas ocultas suelen contener de 2 a 5 capas con 50 a 200 neuronas cada una. A menudo se prefiere la función de activación tanh sobre RELU porque muchas soluciones PDE son suaves y las activaciones suaves pueden representar mejor los campos físicos continuos.
La capa de salida contiene una neurona por desconocido. Por ejemplo, puede emitir temperatura, concentración, presión o velocidad. Los problemas multifísicos pueden usar múltiples neuronas de salida con una función de pérdida combinada.
La diferenciación automática es el mecanismo clave. En lugar de aproximar las derivadas a través de diferencias finitas, la diferenciación automática calcula las derivadas de la salida de la red con respecto a sus entradas. Esto permite que el modelo evalúe el residuo PDE directamente dentro de la función de pérdida.
La función de pérdida: dos mandatos, un objetivo
Una función típica de pérdida de PINN se ve así:
l_total = λ_data × L_Data + λ_physics × L_Physics
Los factores de ponderación equilibran los dos términos. Este equilibrio importa. Si la pérdida de la física domina demasiado, el modelo puede ignorar las restricciones de datos. Si la pérdida de datos domina, la restricción física puede volverse demasiado débil.
L_data Mide el error de predicción contra las mediciones disponibles, las condiciones iniciales o las condiciones de contorno.
L_physics Mide el residuo PDE. La predicción de la red se conecta a la ecuación diferencial, al cuadrado y se promedia sobre los puntos de colocación muestreados dentro del dominio.
La idea clave es que el modelo no necesita una malla fija. Por puntos de muestreo en todo el dominio, la red aprende a satisfacer la PDE donde se define la física. No hay conectividad de elementos, problema de calidad de malla o requisito de cuadrícula tradicional.
Un ejemplo trabajado: Resolver la ecuación de calor
Considere la ecuación de calor 1D:
∂U/∂T = ∂²U/∂x², con u(x,0) = sen(πx)
Este problema tiene una solución analítica conocida:
u(x,t) = e-π²t × sen(πx)
Aquí hay una configuración de PINN simple para este problema en PyTorch:
import torch
import torch.nn as nn
class PINN(nn.Module):
def __init__(self):
super().__init__()
# Two hidden layers, 50 neurons each, tanh activation
self.fc1 = nn.Linear(2, 50) # inputs: x, t
self.fc2 = nn.Linear(50, 50)
self.fc3 = nn.Linear(50, 1) # output: u(x,t)
self.activation = torch.tanh
def forward(self, x, t):
x = self.activation(self.fc1(torch.stack([x, t], dim=-1)))
x = self.activation(self.fc2(x))
return self.fc3(x).squeeze()
# Create the network
model = PINN()
# Automatic differentiation for physics loss
x = torch.tensor(x_data, requires_grad=True)
t = torch.tensor(t_data, requires_grad=True)
u = model(x, t)
u_t = torch.autograd.grad(u.sum(), t, create_graph=True)[0]
u_x = torch.autograd.grad(u.sum(), x, create_graph=True)[0]
u_xx = torch.autograd.grad(u_x.sum(), x, create_graph=True)[0]
# Physics loss: |∂u/∂t - ∂²u/∂x²|²
physics_loss = torch.mean((u_t - u_xx)**2)
# Data loss: boundary or initial conditions
data_loss = torch.mean((u - u_initial)**2)
# Total loss
total_loss = physics_loss + data_loss
Durante el entrenamiento, la red retropropaga a través del gráfico de diferenciación automática. Ajusta los pesos para minimizar tanto el residuo de PDE como el error de condición de límite o inicial.
Después del entrenamiento, el modelo puede evaluar la solución en cualquier punto del dominio, incluidos los puntos que no se usaron directamente durante el entrenamiento.
Pins vs subrogados tradicionales de ML
Los pines están relacionados con sustitutos de aprendizaje automático, pero no son los mismos. Un sustituto tradicional aprende de muchos ejemplos de entrada-salida producidos por simulaciones. Un pinn aprende haciendo cumplir las ecuaciones de gobierno durante el entrenamiento.
| Aspecto | Sustituto ML tradicional | Red neuronal informada en la física |
|---|---|---|
| datos de entrenamiento | Por lo general, requiere muchas corridas de simulación | Puede trabajar con condiciones de contorno y datos escasos |
| Integración física | Aprende patrones de los datos | Utiliza la física como una restricción de pérdida |
| generación de mallas | No es requerido por el propio modelo | NO REQUERIDO |
| Problemas inversos | Difícil sin datos de parámetros etiquetados | Natural porque los parámetros desconocidos pueden ser variables entrenables |
| régimen de datos | Funciona mejor con abundantes datos | Puede funcionar bien con escasos o sin datos interiores |
| Garantías matemáticas | generalmente estadístico | Garantías rigurosas limitadas |
| Costo computacional en inferencia | casi instantáneo | casi instantáneo |
| costo de entrenamiento | Moderado, pero la generación de datos puede ser costosa | A menudo alto porque la optimización puede requerir muchas iteraciones |
La distinción fundamental es esta: un sustituto tradicional aprende un mapeo de entradas a salidas al ver muchos ejemplos. Un pinn aprende una solución restringida por las ecuaciones gobernantes. No necesita miles de ejecuciones de simulación si ya conoce la física y las condiciones de los límites.
Cuándo usar PINN: La matriz de decisión
Los pins no son un reemplazo universal para los solucionadores tradicionales. Son útiles en escenarios específicos.
Cuando los pines son un ajuste fuerte
- problemas inversos. Los pines pueden ayudar a descubrir parámetros desconocidos como la conductividad, la difusividad o las velocidades de reacción de las observaciones escasas.
- Espacios de parámetros de alta dimensión. Los pines pueden tratar los parámetros como entradas de red y aprender a través de rangos de parámetros.
- Geometrías irregulares o complejas. Dado que no se requiere generación de mallas, puede muestrear puntos en el dominio y permitir que la red aprenda de la distribución de puntos de colocación.
- regímenes de datos escasos. Las restricciones físicas actúan como regularización cuando los datos por sí solos serían insuficientes.
- Problemas de multifidelidad. Los PIN pueden combinar información de menor fidelidad y mayor fidelidad a través de términos de pérdida ponderado.
Cuándo evitar los pines
- Problemas simples donde los solucionadores tradicionales ya funcionan bien. Si un solucionador estándar converge de forma rápida y precisa, un PINN puede agregar una complejidad innecesaria.
- Problemas que requieren límites de error comprobables. Los pines aún no tienen la misma teoría de convergencia que los métodos de volumen finito o de elementos finitos maduros.
- Requisitos de alta precisión cerca de las singularidades. Los pines estándar pueden luchar con gradientes nítidos, discontinuidades y capas límite.
- Casos en los que ya tiene un solucionador optimizado y validado. Si su solucionador FVM o FEM existente es rápido y preciso, es posible que su reemplazo no lo ayude.
Aplicaciones científicas reales
Los pines se han aplicado en muchos dominios científicos.
En la física del plasma y la astrofísica, se han utilizado PINN para resolver las ecuaciones de Grad-Shafranov para los equilibrios magnéticos y las ecuaciones de Emden de carril para la estructura estelar. Estos problemas pueden implicar condiciones de contorno mixtas que son un desafío para algunos solucionadores tradicionales.
En la dinámica de fluidos, los pines se han utilizado para inferir campos de velocidad completa a partir de datos de medición escasos al hacer cumplir las ecuaciones de Navier-Stokes como restricciones.
En las imágenes biomédicas, se han utilizado modelos informados por la física para filtrar y reconstruir datos de flujo, respetando las ecuaciones de conservación de masa y momento.
En la electroquímica, se están explorando los pins para los sistemas de reacción de difusión acoplados, incluido el modelado de electrodos de batería donde no están disponibles las soluciones analíticas.
Trampas comunes y cómo evitarlas
1. Desequilibrio de pérdida
El fracaso de entrenamiento más común es un término de pérdida que domina otro. La pérdida de la física puede ser mucho mayor que la pérdida de datos, o puede ocurrir lo contrario. Cuando esto ocurre, el modelo puede ignorar una restricción por completo.
Solucione esto normalizando ambos términos de pérdida. Use esquemas de ponderación adaptativa que ajusten λ_data y λ_physics en función de la magnitud relativa de cada término. Supervise ambas pérdidas por separado durante el entrenamiento.
2. Mínimos locales y puestos de entrenamiento
Los pines pueden quedar atrapados en mínimos locales pobres. La red puede satisfacer la pérdida de la física mientras se produce una solución incorrecta, o puede ajustarse a los datos de límites mientras falla dentro del dominio.
Solucione esto con la capacitación basada en el plan de estudios. Comience con una versión simplificada del problema, como una forma de estado estacionario o una PDE más simple, luego aumente gradualmente la complejidad. También puede comenzar con menos puntos de colocación y aumentar la cobertura con el tiempo.
3. Gradientes agudos y discontinuidades
Los pines estándar a menudo luchan con gradientes nítidos, discontinuidades y capas límite. Las funciones de activación suaves pueden dificultar la representación de cambios abruptos.
Solucione esto con el refinamiento del punto de colocación adaptativo. Puntos concentrados donde el residuo es mayor. También puede usar formulaciones de restricción dura que incrusten exactamente las condiciones de contorno, o pines compuestos con redes separadas en diferentes regiones.
4. exceso de confianza sin garantías
Los pines pueden producir resultados visualmente plausibles que aún son incorrectos. Sin límites de error rigurosos, puede ser difícil saber dónde la solución es confiable.
Solucione esto validando las predicciones de PINN con los puntos de referencia conocidos cuando sea posible. Entrene múltiples redes con diferentes inicializaciones para estimar la varianza de predicción. Verifique contra solucionadores tradicionales en casos de prueba simples antes de confiar en los resultados en problemas complejos.
Primeros pasos: un flujo de trabajo práctico
Utilice el siguiente flujo de trabajo al implementar PIN en un proyecto de investigación.
Paso 1: Definir el problema formalmente
Escriba el PDE en forma residual. Identifique todos los parámetros, condiciones de contorno y condiciones iniciales. Aclare qué datos tiene y qué desea descubrir.
Paso 2: Elija su marco
PyTorch es ampliamente utilizado en tutoriales e implementaciones de PINN. TensorFlow también es común. Si ya usa Fipy para solucionadores tradicionales, puede integrar pins a nivel de flujo de trabajo usándolos para problemas inversos o exploración rápida, y luego verificando los resultados con Fipy.
Paso 3: Configure la arquitectura de red
Comience simple: 2 a 3 capas ocultas, 50 a 100 neuronas y activación tanh. puedes refinar más tarde. No diseñas demasiado la arquitectura al principio porque las restricciones físicas hacen gran parte del trabajo.
Paso 4: Ejemplos de puntos de colocación
Dibuja puntos aleatorios de manera uniforme dentro del dominio. Es posible que necesite cientos o miles de puntos dependiendo de la complejidad del problema. Para problemas multiescala, utilice un muestreo no uniforme concentrado donde más cambia la solución.
Paso 5: Implementar la función de pérdida
Construya términos separados de pérdida de datos y física. Agregue la normalización para que sus magnitudes sean comparables. Supervise ambos términos de pérdida durante el entrenamiento.
Paso 6: Entrenar y Validar
Entrene primero con Adam, a menudo usando una tasa de aprendizaje cerca de 1e-3, luego cambie a L-BFGS para ajustar. Validar contra soluciones analíticas o solucionadores tradicionales sobre problemas de referencia antes de aplicar el modelo a problemas novedosos.
El futuro de los pins en la computación científica
El campo Pinn está evolucionando rápidamente. Vale la pena ver varios desarrollos.
aprendizaje de operador
En lugar de aprender una solución única, los métodos de aprendizaje del operador tienen como objetivo aprender el mapeo de las condiciones y los parámetros iniciales a los campos de solución completos. Esto significa que un modelo entrenado puede manejar una familia de problemas en lugar de un caso fijo.
FísicaNemo
Nvidia cambió su marco de módulo como PhysicsNemo, lo que indica un mayor interés de la industria en herramientas de IA informadas en la física de grado de producción.
Descomposición de dominio
Extender los pines a problemas muy grandes a través de la descomposición del dominio en paralelo es un área de investigación activa. Esto es importante para mover los pins de los puntos de referencia académicos a las cargas de trabajo de simulación científica reales.
Enfoques híbridos
Los flujos de trabajo híbridos combinan los pins con los solucionadores tradicionales. Los PINN pueden soportar una exploración rápida o la resolución inversa de problemas, mientras que los solucionadores FVM o FEM verificados pueden proporcionar una validación final.
Guías relacionadas
Para una cobertura más profunda de temas relacionados en los flujos de trabajo de Ciencias Computacionales:
- Surrogadores de aprendizaje automático para simulaciones científicas — Cobertura más amplia de la aceleración de modelos basado en datos, incluidos procesos gaussianos, caos polinomial y sustitutos de redes neuronales.
- verificación frente a validación en simulaciones científicas — Cómo validar las predicciones de PINN contra puntos de referencia.
- Usando fipy para el modelado de campo de fase: cuándo usar métodos FVM tradicionales en lugar de pins para problemas de campo de fase.
- performance de perfiles para solucionadores de PDE de Python — Benchmarking pins con solucionadores tradicionales.
¿Necesita ayuda para implementar pins para su simulación?
Los pines son poderosos, pero no son triviales de implementar correctamente. Pueden ser útiles si estás trabajando en:
- Problemas inversos con parámetros físicos ocultos.
- Modelado de datos escasos donde ML tradicional se sobreajustaría.
- Exploración rápida de espacios de parámetros que son demasiado caros para la simulación directa.
- Integración de restricciones físicas en canalizaciones de ML existentes.
Nuestro equipo puede ayudar a construir modelos basados en la física adaptados a los flujos de trabajo científicos, incluida la integración con Fipy y otros solucionadores de PDE. contáctenos para discutir las necesidades específicas de su proyecto.
referencias
- Raissi, M., Perdikaris, P., & Karniadakis, G. E. (2019). Redes neuronales informadas en la física: un marco de aprendizaje profundo para resolver problemas directos e inversos que involucran ecuaciones diferenciales parciales no lineales. Revista de física computacional, 378, 724–741.
- Karniadakis, G. E., Kevrekidis, I. G., Lu, L., et al. (2021). Aprendizaje automático basado en la física. Revisiones de la naturaleza Física, 3(6), 416–428.
- Baty, H. (2024). Una introducción práctica a las redes neuronales informadas por la física para resolver ecuaciones diferenciales parciales. Observatorio Astronómico, Université de Estrasburgo. Arxiv:2403.00599.
- Cuomo, D., et al. (2022). Una revisión exhaustiva sobre el aprendizaje automático basado en la física para la mecánica computacional. computadoras & Estructuras.
- Karniadakis, G. E., et al. (2021). Aprendizaje automático basado en la física: una revisión. La naturaleza revisa la física.
- Lobo, T. (2024). Redes neuronales informadas en la física: un tutorial simple con PyTorch. Medio.
- Departamento de Ciencias de la Computación de Oxford. (2025-2026). Física Informado de las redes neuronales Materiales del curso y plan de estudios.