연산자 학습

편집 역사 토론
수치해석 시뮬레이션 통계 마지막 수정: 2026-07-30 04:11:48

1. 개요[편집]

연산자 학습(operator learning)은 유한 차원 벡터 사이의 함수가 아니라 함수 공간과 함수 공간 사이의 사상

G:AU,au\mathcal{G}: \mathcal{A} \to \mathcal{U}, \qquad a \mapsto u

자체를 데이터로 근사하는 기계학습 분야다. 여기서 aa 는 초기조건·경계조건·물성 계수장 같은 입력 함수이고 uu 는 그에 대응하는 편미분방정식의 해다. 즉 “이 조건에서의 해 하나”가 아니라 해 사상(solution operator) 전체를 신경망에 담는 것이 목표다.

왜 이게 매력적이냐면, 학습이 끝난 뒤에는 새 입력 aa 에 대해 순전파 한 번이면 해가 나오기 때문이다. 파라미터를 바꿔가며 전산유체역학 해석을 수백 번 돌려야 하는 최적설계·불확실성 정량화 루프에서, 케이스당 수 시간을 수십 밀리초로 바꿔주겠다는 제안인 셈. 물론 그 학습 데이터는 결국 기존 솔버가 밤새 갈려서 만들어야 한다는 것이 이 바닥의 영원한 순환 논법이다.

2. PINN과 무엇이 다른가[편집]

가장 흔한 오해부터 정리하자. 물리 정보 신경망(PINN)은 신경망 uθ(x,t)u_\theta(x,t) 하나가 특정 PDE 인스턴스의 해 한 개를 표현한다. 경계조건이나 물성이 바뀌면 파라미터를 처음부터 다시 학습해야 한다 — 사실상 신경망을 솔버 대신 쓰는 것이고, 비용 구조는 “케이스마다 최적화 한 번”이다.

연산자 학습은 (a(i),u(i))(a^{(i)}, u^{(i)}) 쌍 수백~수만 개로 사상 G\mathcal{G} 를 한 번 학습한 뒤, 추론은 순전파로 끝낸다. 비용이 오프라인(비싼 학습) / 온라인(싼 추론) 으로 갈라지는 이 구조는 축소차수모델이나 대리 모델과 정확히 같은 사업 모델이다. 차이는 대리 모델이 보통 스칼라 출력(항력계수 하나)이나 고정 격자 위의 벡터를 다루는 데 비해, 연산자 학습은 출력이 함수라는 점을 설계 원칙으로 못 박았다는 것이다.

3. 보편 연산자 근사 정리[편집]

이론적 출발점은 첸과 첸(1995)의 결과다. 은닉층이 하나뿐인 얕은 신경망 두 개의 내적 형태

G(a)(y)    k=1pbk(a(x1),,a(xm))tk(y)\mathcal{G}(a)(y) \;\approx\; \sum_{k=1}^{p} b_k\big(a(x_1),\dots,a(x_m)\big)\, t_k(y)

임의의 연속 비선형 연산자를 콤팩트 집합 위에서 임의 정밀도로 근사할 수 있다는 정리다. 보편 근사 정리의 연산자판이라 보면 되고, 함수 근사 때와 마찬가지로 “존재한다”는 말만 할 뿐 필요한 폭 pp 나 학습 가능성에 대해서는 아무 말도 해주지 않는다.

4. DeepONet[편집]

루 등(2019)의 DeepONet은 위 정리의 구조를 그대로 깊게 만든 것이다.

  • 브랜치 망(branch): 입력 함수 aa 를 고정된 센서 위치 x1,,xmx_1,\dots,x_m 에서 샘플링한 벡터를 받아 계수 bkb_k 를 낸다.
  • 트렁크 망(trunk): 출력을 평가할 좌표 yy 를 받아 기저 tk(y)t_k(y) 를 낸다.
  • 최종 출력은 둘의 내적 kbktk(y)+b0\sum_k b_k t_k(y) + b_0.

트렁크가 학습된 기저를, 브랜치가 그 기저의 계수를 만드는 구조라, 주성분 분석 기반 POD 기저를 학습된 비선형 기저로 갈아 끼운 물건으로 읽을 수 있다.1 출력 좌표 yy 가 연속 변수라 출력 쪽은 격자에 매이지 않는다 — 아무 점에서나 해를 평가할 수 있다. 반면 브랜치는 센서 위치가 학습 때 고정되어야 하므로 입력 쪽은 이산화에 매인다. 여기가 FNO와 갈리는 지점이다.

5. 푸리에 신경 연산자 (FNO)[편집]

리 등(2020)의 FNO는 커널 적분 연산자를 층으로 쌓는다. 각 층은

vl+1(x)=σ(Wvl(x)+(Kvl)(x)),(Kv)=F1(RϕF(v))v_{l+1}(x) = \sigma\Big( W v_l(x) + \big(\mathcal{K}v_l\big)(x) \Big), \qquad \big(\mathcal{K}v\big) = \mathcal{F}^{-1}\big( R_\phi \cdot \mathcal{F}(v) \big)

형태다. 즉 주파수 공간으로 넘어가 학습된 복소 행렬 RϕR_\phi 를 곱하고 되돌아온다. 합성곱 정리를 그대로 쓴 것이라, 합성곱 신경망이 국소 스텐실만 보는 것과 달리 한 층에서 전역 상호작용이 잡힌다. 고속 푸리에 변환을 쓰므로 격자점 NN 개에 O(NlogN)O(N\log N).

핵심 장치는 모드 절단이다. RϕR_\phi 를 저주파 kmaxk_{\max} 개 모드에만 두고 나머지는 0으로 버린다. 파라미터 수가 격자 해상도와 무관해지고, 동시에 강력한 정칙화가 걸린다. 여기서 그 유명한 해상도 불변성 주장이 나온다 — 64264^2 격자로 학습한 가중치를 2562256^2 격자에 그대로 얹어 추론할 수 있고, 실제로 초해상도처럼 동작한다.

6. 이산화 불변성의 실제 한계[편집]

여기서부터는 마케팅과 실측을 구분해야 한다.

  • 주기성과 균일 격자 가정. FFT를 쓰는 이상 도메인은 균일 직교 격자에 사실상 주기적이어야 한다. 비주기 문제는 패딩으로 때우고, 복잡 형상은 좌표 변환을 학습하는 Geo-FNO 같은 변형이 따로 필요하다. “아무 메시나 된다”가 아니다.
  • 절단된 것은 영영 못 배운다. kmaxk_{\max} 위의 모드는 학습에서 버려졌으므로, 고해상도로 추론해도 새로 생기는 미세 스케일은 채워지지 않는다. 해상도를 올리면 매끄러운 해가 매끄럽게 보간될 뿐, 난류의 작은 와류가 나타나지는 않는다.
  • 훈련 분포 밖은 위험하다. 레이놀즈수를 학습 범위 밖으로 밀면 오차가 급격히 커진다. 이건 대리 모델 문서의 외삽 경고가 그대로 반복되는 것이다.

그래프 커널 연산자(GNO)는 FFT 대신 이웃 노드 위의 메시지 전달로 커널 적분을 근사해 비정형 메시를 직접 다룬다. 유연한 대신 수용장을 넓히려면 층을 깊게 쌓아야 하고, 그러면 비용이 다시 올라간다. 그래프 신경망 계열 기상 모델이 이 길을 택했다.

세 계열을 나란히 놓으면 이렇게 정리된다.

구조커널 적분 구현격자 요구비용(격자점 N)
DeepONet학습된 기저의 내적입력 센서 고정, 출력은 자유센서 수에 선형
FNOFFT 후 저주파 모드에 복소 가중균일 직교, 사실상 주기N log N
GNO이웃 위 메시지 전달임의 메시간선 수에 선형

세 계열 모두 “커널 적분 연산자를 어떻게 싸게 흉내 낼 것인가”라는 같은 질문에 답이 다를 뿐이라는 점이 중요하다. 그리고 이 질문은 경계요소법이나 고속 다중극법이 수십 년 전부터 붙들고 있던 문제와 같은 것이다 — 조밀 적분 커널을 저계수나 스펙트럼으로 압축하는 발상 자체는 새롭지 않고, 새로운 것은 그 압축을 손이 아니라 데이터가 정한다는 부분이다.

7. 시간 전진과 오차 누적[편집]

가장 아픈 실전 문제. 과도 해석을 하려면 학습된 연산자를 자기회귀로 반복 적용(un+1=Gθ(un)u^{n+1} = \mathcal{G}_\theta(u^n))해야 하는데, 한 스텝 오차가 다음 스텝의 입력을 훈련 분포 밖으로 밀어내고 그게 다시 오차를 키운다. 롤아웃이 길어지면 오차가 사실상 지수적으로 자라며, 100 스텝쯤에서 그림이 무너지는 것이 흔하다. 대응책은 학습 중에 여러 스텝 롤아웃을 손실에 포함시키기, 입력에 잡음을 주입해 모델이 자기 오차에 노출되게 하기, 아예 시간을 좌표로 넣어 한 번에 시공간 블록을 뱉게 하기 등인데, 전부 완치가 아니라 지연책이다. 보존량이 구조적으로 보장되지 않는다는 점도 같이 따라온다 — 학습된 연산자는 질량이나 에너지를 지키라고 만들어지지 않았다.2

8. 어디까지 왔나[편집]

기후·기상 쪽이 가장 요란하다. FourCastNet은 FNO 계열 구조로 전 지구 중기 예보를 수 초 만에 뽑아 화제가 됐고, 이후 트랜스포머나 그래프 기반 모델들이 일부 지표에서 기존 수치 모델과 겨루는 결과를 냈다. 다만 이들 모두 수십 년치 재분석 데이터로 학습됐다는 점을 잊으면 안 된다. 일반적인 산업 CFD처럼 데이터가 수백 케이스뿐인 상황과는 사정이 다르다.3

공학 현장의 현실적 위치는 이렇다. 형상과 조건이 좁게 고정된 반복 해석(예: 정해진 유로 형상에서 유입 조건만 바꾸는 경우)에서는 잘 먹힌다. 형상 위상이 바뀌거나 물리가 새로 켜지는 순간 무너진다. 그래서 “솔버 대체”보다는 최적화 루프의 내부 대리모델이나 수치기상예보식 앙상블의 값싼 멤버 생성기로 쓰는 쪽이 현재로선 정직한 용법이다. 검증도 검증 및 확인의 문법을 그대로 적용해야 한다 — 훈련 오차는 지표가 아니다.4

9. 관련 문서[편집]

10. Footnotes[편집]

  1. 실제로 트렁크를 학습시키지 않고 POD 기저로 못 박은 POD-DeepONet 변형이 있는데, 문제에 따라 이쪽이 더 잘 되기도 한다. 딥러닝 논문에서 “기저를 손으로 고정했더니 더 좋았다”는 결론이 나오면 저자들의 표정이 미묘해진다.

  2. 그래서 하드 제약(출력에 발산 자유 사영을 걸기)이나 소프트 제약(PDE 잔차를 손실에 추가 — 이러면 PINN과 연산자 학습의 하이브리드가 된다)이 활발히 연구된다. 후자를 물리 정보 DeepONet이라 부른다.

  3. 데이터 생성 비용을 정직하게 계산해 보면, 대리모델 하나 만들려고 원본 솔버를 500번 돌린 시점에서 이미 설계 루프 한 바퀴를 돈 셈인 경우가 많다. “그래서 몇 번 재사용할 건데?”가 도입 검토의 첫 질문이어야 한다.

  4. 상대 L2L^2 오차 1%라는 숫자를 그대로 믿으면 안 된다. 그 오차가 유동장 전체에 고르게 퍼져 있는지, 아니면 하필 벽면 전단응력이나 박리점 근처에 몰려 있는지에 따라 공학적 쓸모가 완전히 달라진다. 평균이 예뻐도 국소가 망가지면 설계 판단은 틀린다.