PINN(물리정보 신경망)이란?
Deep Learning Toolbox™를 사용하면 신속한 예측 분석을 가능하게 하는 PINN을 구축하고 훈련시킬 수 있습니다. PINN을 MATLAB® 및 Simulink®에 통합하여 시스템 수준 시뮬레이션, 제어 설계 및 설계 최적화를 수행할 수 있습니다.
![딥러닝과 물리학 지식이 어떻게 결합하여 PINN을 형성하는지 보여주는 도식.](https://kr.mathworks.com/discovery/physics-informed-neural-networks/_jcr_content/mainParsys/columns/e4219b80-580a-4cc2-a14e-84b7087007c5/image.adapt.full.medium.png/1736218273848.png)
PINN(물리정보 신경망)는 딥러닝 모델 훈련에 물리 법칙을 적용하여 복잡한 현상을 예측하고 모델링하는 동시에 지배 물리 원리를 준수하도록 장려합니다.
PINN의 이점
PINN은 물리학 지식을 데이터에 원활하게 통합하는 물리정보 머신러닝 방법의 한 종류입니다. PINN은 순수 데이터 주도 해법과 PDE 및 ODE와 관련된 문제의 해를 구하는 기존 수치 해법과 종종 비교되곤 합니다.
단지 입력 및 출력 데이터로부터 수학적 관계를 학습하는 순수 데이터 주도 접근법과는 달리, PINN은 다음과 같은 특징이 있습니다.
- 사전 물리학 지식을 사용합니다.
- 훈련 데이터셋 외부에서 더욱 정확한 예측을 수행합니다.
- 제한적이거나 잡음이 있는 훈련 데이터에 더욱 효과적입니다.
PDE에 대해 유한요소해석과 같이 미분 방정식의 해를 구하는 기존 수치 해법과 달리, PINN은 다음과 같은 특징이 있습니다.
- 메시를 사용하지 않습니다.
- 고차원 PDE 해를 근사화할 수 있습니다.
- 미지의 PDE 계수나 ODE 계수와 같은 결측 모델 파라미터의 해를 구할 수 있습니다.
- 경계 데이터가 없는 잘못 설정된 문제의 해를 구할 수 있습니다.
- 희소 측정값 또는 잡음이 있는 측정값을 쉽게 통합할 수 있습니다.
순수 데이터 주도 방법 및 기존 수치 해법과 비교하면 PINN은 잠재적인 이점을 제공하기도 하지만, 다음과 같은 몇 가지 한계와 과제를 안고 있습니다.
- 제한된 수렴 이론
- 통일된 훈련 전략 부족
- 고차 도함수 계산에 드는 연산 비용 발생
- PDE 해의 고주파 및 멀티스케일 성분 학습이 어려움
그러나 PINN은 활발하게 연구가 진행 중인 분야로, 지속적인 발전을 거듭하여 현재의 이러한 과제과 한계를 해결하고 극복할 수 있을 것으로 기대됩니다.
PINN, 데이터 주도 접근법, 기존 수치 해법 중 어떤 방식을 선택할지는 응용 사례에 따라 달라질 수 있습니다. 아래 표에 각 해법의 이점과 한계가 요약되어 있습니다.
순수 데이터 주도 접근법 | 기존 수치 해법 | PINN | |
알려진 물리학 통합 | |||
제한적이거나 잡음이 있는 훈련 데이터로도 우수한 일반화 가능 | |||
정문제와 역문제의 해를 동시에 구할 수 있음 | |||
고차원 PDE의 해를 구할 수 있음 | |||
빠른 “온라인” 예측 지원 | |||
메시를 사용하지 않음 | |||
수렴 이론에 대한 우수한 이해 | |||
고주파 및 멀티스케일 PDE로의 원활한 확장 |
PINN이 기존 신경망과 다른 점
PINN은 미분 방정식의 형태로 문제에 대한 선험적 분야별 지식을 통합할 수 있다는 점에서 기존 신경망과 다릅니다. 이러한 추가 정보를 통해 PINN은 주어진 측정 데이터 외부에서 보다 정확한 예측을 할 수 있습니다. 또한, 추가 물리학 지식은 잡음이 있는 측정 데이터가 있는 경우 예측된 해를 정규화하여 PINN이 잡음이 있는 데이터를 과적합하는 것이 아니라 실제 기본 신호를 학습할 수 있게 합니다.
예를 들어, 관심 시스템의 잡음이 있는 측정값
![측정된 데이터와 ground truth, 평균제곱오차 손실 함수를 나타내는 신경망 플롯의 그림.](https://kr.mathworks.com/discovery/physics-informed-neural-networks/_jcr_content/mainParsys/columns_copy/e4219b80-580a-4cc2-a14e-84b7087007c5/image.adapt.full.medium.png/1736218273919.png)
기존 신경망은 신경망의 예측과 관측된 측정값 간의 오차를 최소화하기 위해 파라미터를 조정합니다.
아래 그림은 신경망이 훈련 데이터 외부의 시스템 값을 정확하게 예측하는 데 어려움을 겪고 있음을 보여줍니다.
Deep Learning Toolbox의 trainnet
함수를 사용해 훈련된 나이브 신경망은 잡음이 있는 측정값을 과적합하고 사용 가능한 범위를 벗어난 t에 대해서는 성능이 떨어집니다. (MATLAB 코드 보기.)
더 많은 데이터를 수집하면 예측이 향상될 수 있지만, 이 접근법은 많은 응용 사례에서 막대한 비용이 들거나 불가능할 수도 있습니다. 그러나, 분야별 전문가는 연구 중인 시스템을 통제하는 기본 물리 과정에 대해 더 깊은 지식을 보유하고 있는 경우가 많습니다. 특히 이 시나리오에서 측정값은 크레인에서 흔들리는 페이로드의 수직으로부터의 변위 각도를 나타냅니다. 이 과정은 감쇠 진자로 단순하게 표현할 수 있는데, 이 진자는 다음과 같이 선형 2계 미분 방정식을 통해 작은 각도에 대해 대략적으로 모델링할 수 있습니다.
PINN은 이러한 지식을 간과하는 대신 미분 방정식을 손실 함수에 추가 물리정보 항으로 통합합니다. PINN은 정의역의 추가 지점에서 미분 방정식의 잔차를 평가하므로 더 많은 측정을 수행하지 않고도 PINN에 더 많은 정보를 제공할 수 있습니다. 이 단순한 예제는 해석적으로 풀 수 있지만 PINN의 개념을 잘 보여줍니다.
![물리정보 신경망, 진자 미분 방정식, 측정된 데이터와 ground truth의 플롯을 보여주는 다이어그램.](https://kr.mathworks.com/discovery/physics-informed-neural-networks/_jcr_content/mainParsys/columns_copy_copy_co/e4219b80-580a-4cc2-a14e-84b7087007c5/image.adapt.full.medium.png/1736218273995.png)
Deep Learning Toolbox에서 사용할 수 있는 PINN은 신경망의 예측과 관측된 측정값 그리고 물리적 손실 간의 오차를 최소화하는 균형을 유지하기 위해 파라미터를 조정합니다.
훈련 중에 PINN은 주어진 측정값의 피팅과 기본 물리 과정 사이에서 균형을 찾습니다.
Deep Learning Toolbox를 사용하여 생성되고 훈련된 PINN은 측정 데이터 외부에서 더 우수한 예측을 수행하며 기존 신경망보다 잡음에 더 강합니다. (MATLAB 코드 보기.)
추가 물리적 손실 항을 통합함으로써 PINN은 잡음이 있는 측정값이 있는 경우와 측정값이 없는 데이터 영역에서 기존 신경망보다 더 우수한 성능으로 예측을 수행할 수 있습니다.
PINN의 작동 원리
PINN은 최적화 알고리즘을 사용하여 지정된 물리정보 손실 함수의 값이 허용 가능한 수준으로 감소할 때까지 신경망의 파라미터를 반복적으로 업데이트하여 신경망이 미분 방정식의 해에 도달할 수 있게 합니다.
![진자, 초기 조건, 추가 측정 데이터 및 손실 함수에 대한 훈련 방정식이 포함된 물리정보 신경망 다이어그램.](https://kr.mathworks.com/discovery/physics-informed-neural-networks/_jcr_content/mainParsys/columns_copy_copy_co_1298958835/e4219b80-580a-4cc2-a14e-84b7087007c5/image.adapt.full.medium.png/1736218274070.png)
진자 방정식과 같은 ODE에 대해 PINN을 훈련할 때, 최적화 알고리즘은 신경망의 파라미터를 조정하여 손실 함수를 허용 가능한 수준으로 줄입니다. 손실 함수는 AD(자동 미분)로 구해진 미분 방정식 잔차, 경계 및 초기 조건 및 기타 선택적 레이블 지정된 데이터로 구성됩니다.
PINN은 다음과 같이 여러 항으로 구성된 손실 함수
2017년에 처음 선보인 PINN은 현재 다음과 같은 다양한 변형이 있습니다.
- BPINN(베이즈 PINN): 불확실성 정량화를 감안하는 베이즈 프레임워크 사용
- VPINN(변분 PINN): PDE의 약형을 손실 함수에 통합
- FO-PINN(1계 정식화 PINN): 표준 PINN보다 고계 PDE의 해를 더 빠르고 정확하게 구할 수 있음
또한, PINN은 GNN(그래프 신경망), FNO(푸리에 신경 연산자), DeepONets(심층 연산자 신경망) 등과 같은 다양한 신경망 아키텍처와 함께 사용할 수 있어 이러한 아키텍처의 소위 물리정보 버전을 생성할 수 있습니다.
MATLAB 및 Deep Learning Toolbox는 다양한 신경망 아키텍처 생성 또는 가져오기부터 시작해 AD를 통한 사용자 지정 물리정보 손실 함수 정의, ADAM 또는 L-BFGS 등의 기울기 기반 최적화 알고리즘을 사용한 훈련 및 끝으로 고급 MATLAB 그래픽을 통한 해 시각화에 이르기까지 PINN의 개발을 포괄적으로 지원합니다.
PINN 응용 사례
PINN은 딥러닝의 능력을 활용하는 동시에 물리 법칙의 준수 정도를 개선하여, 미지의 계수를 갖는 PDE 또는 ODE와 같이 물리학이 완전히 또는 부분적으로 알려진 응용 사례에 다용도로 활용할 수 있는 툴입니다. PINN의 응용 사례는 다음과 같습니다.
- 열 전달: 특히 열 분포 및 전달 공정 모델링에 유용합니다. PINN은 열 방정식과 같이 재료 및 시스템의 열 공정을 모델링하는 지배 방정식을 손실 함수에 포함할 수 있습니다. 이 접근법은 해가 이러한 물리 법칙을 준수하도록 하여 물리적으로 타당한 예측을 유도합니다. 뿐만 아니라, PINN은 비용이 많이 드는 수치 시뮬레이션을 대체하여 설계 최적화 응용 사례에서 파라미터화된 기하 구조에 대한 온도 분포를 빠르게 근사화할 수 있습니다. 또한, PINN은 열전도도와 같은 미지의 재료 물성을 파악하기 위해 역문제에 사용될 수 있습니다.
- CFD (전산유체역학): 특히 손실 함수에 나비에-스토크스 방정식을 통합하여 유체의 속도, 압력 및 온도장을 근사화하는 데 유용합니다. PINN은 메시를 사용하지 않는 정문제 시뮬레이션에서 이러한 수량을 정확하게 예측하거나 관측된 데이터에서 경계 조건, 원천항 또는 유체 물성과 같은 미지의 파라미터 또는 입력을 추론하는 것이 목표인 역문제에서 사용할 수 있습니다.
- 구조역학: 탄성 방정식 및 구조 동역학과 같은 지배 물리 법칙을 손실 함수에 직접 포함하여 정문제와 역문제의 해를 구하는 데 유용합니다. 이러한 통합을 통해 PINN은 다양한 하중과 조건에서 변형, 응력, 변형률과 같은 구조적 응답 변수를 정확하게 예측할 수 있을 뿐만 아니라, 관측된 데이터를 기반으로 미지의 재료 물성이나 외부 하중을 식별할 수 있습니다. 기존 해석적 해가 실현 불가능하거나 데이터가 부족한 시나리오에서 특히 유용한 PINN은 물리 원리를 활용하는 방향으로 학습 과정을 이끌어 광범위한 데이터셋에 대한 의존도를 줄여줍니다. 이런 PINN의 유연성 덕분에 비선형 재료 거동 및 다중물리 모델링을 비롯한 복잡한 문제를 처리할 수 있습니다.
Deep Learning Toolbox로 생성되고 훈련된 PINN은 설계 최적화를 위해 Optimization Toolbox™에 원활하게 통합되고 시스템 수준 시뮬레이션을 위해 Simulink에 연결되며 기타 다양한 응용 사례에서 활용될 수 있습니다.
예제 및 방법
소프트웨어 참조
참조: Deep Learning Toolbox, Partial Differential Equation Toolbox, 유한요소해석, 차수 축소 모델링, 해밀토니언 신경망, 신경 ODE를 사용한 동적 시스템 모델링, 딥러닝, CNN (컨벌루션 신경망), GAN (생성적 적대 신경망), LSTM(장단기 기억) 신경망, RNN (순환 신경망), 신경망