본문으로 건너뛰기
62 / COMPLEX LAB
먼저 알아두면 좋아요 · 연결된 선수 단원의 복소수·미분·적분·선형대수
단원 목록 (103) · Wirtinger 미분과 복소 손실 최적화
이해하는 속도로 읽으세요.개념도이론실험확인 문제
BUILD YOUR INTUITION

먼저 그림으로 이해하기

한 번에 한 단계씩 살펴보세요.

실수값 목적함수는 보통 정칙이 아니어도 두 실수 변수로 미분하고 최적화할 수 있습니다.

L(z)=|z−c₀|²; c₀=0+0i; η=0.25; z_next=z−2η·∂L/∂conj(z)

-111가로·세로의 단위 길이가 같습니다.
복소평면 · 파랑: 실제 gradient 갱신 궤적 · 주황 점: 최소점
갱신 궤적최소점

∂L/∂z = (1, -1)

고정 기준 예제의 그림과 수치입니다. 각 단계에서 같은 그림의 의미를 차례로 살펴보세요. 고정된 기준 예제이며 아래 실험의 설정과 독립적입니다.
1 / 4

실수 손실

L=|z|²은 x²+y²입니다.

L=x²+y²

실험에서 확인하기 →
이 단원 목차

실수 손실을 복소 입력으로 표현하기

복소 파라미터 z=x+iy를 쓰는 모델도 학습 손실 L은 보통 실수입니다. L=|z|²=x²+y²은 복소 정칙 함수가 아니지만 R²에서는 매끄럽고 최적화 가능합니다. 정칙성이 없다는 이유로 gradient를 정의할 수 없다고 결론내리면 안 됩니다.

Wirtinger 연산자는 실수 미분의 두 선형 조합입니다.

∂z=12(∂x−i∂y),∂zˉ=12(∂x+i∂y).\partial_z=\frac12(\partial_x-i\partial_y),\qquad \partial_{\bar z}=\frac12(\partial_x+i\partial_y).

z와 z̄를 형식적으로 독립 변수처럼 다루는 계산 규칙은 이 정의에서 유도됩니다. 원래 두 실수 자유도를 네 실수 자유도로 늘린다는 뜻은 아닙니다.

두 미분과 실제 gradient

L=|z−c|²에서

∂L∂z=z−c‾,∂L∂zˉ=z−c.\frac{\partial L}{\partial z}=\overline{z-c},\qquad \frac{\partial L}{\partial\bar z}=z-c.

실수 gradient를 복소수 g=Lₓ+iLᵧ로 묶으면 g=2∂L/∂z̄입니다. 여기서 정의한 1/2 규약과 유클리드 실수 metric을 유지하면 이 계수 2가 필요합니다. 라이브러리에서 같은 이름의 gradient가 어떤 규약인지 반드시 확인해야 합니다.

왜 켤레 쪽이 하강 방향인가

실수 손실의 미소 변화는 복소 표기로

dL=2Re⁡[(∂L∂zˉ)∗dz]dL=2\operatorname{Re}\left[\left(\frac{\partial L}{\partial\bar z}\right)^*dz\right]

입니다. dz=−2η∂L/∂z̄를 넣으면 일차 변화가 음수 또는 0입니다. ∂L/∂z를 같은 방향으로 그대로 쓰면 일반적으로 실수 gradient 하강과 다릅니다. 예를 들어 순허수 입력에서 켤레를 잘못 선택하면 목표로부터 더 멀어질 수 있습니다.

이차 손실의 갱신을 정확히 계산하기

실습은 z_next=z−2η(z−c)를 사용하므로 오차 e=z−c의 갱신은

enext=(1−2η)e,Lnext=(1−2η)2L.e_{\text{next}}=(1-2\eta)e,\qquad L_{\text{next}}=(1-2\eta)^2L.

0<η<1이면 수축하고 η=1이면 부호만 바뀌어 진동하며 η>1이면 비영 오차가 증가합니다. η=0은 갱신하지 않고 η=1/2이면 한 번에 최소점에 도달합니다. 임의의 복소 손실에 같은 보폭 범위를 적용할 수는 없습니다. 이 범위는 이 명시적 이차식의 정확한 결과입니다.

기준 z=1+i,c=0,η=0.25에서는 다음 z=0.5+0.5i,손실은 2에서 0.5로 줄어듭니다. 목표 c=1+i로 바꾸면 원점이 아닌 그 목표에 대한 오차를 사용합니다.

그림과 AI 구현

파랑은 실제 갱신을 여섯 번 적용한 경로이고 주황 점은 최소점입니다. 손실 높이를 복소 좌표로 그린 것이 아니라 파라미터의 궤적입니다. 숫자 표의 손실과 함께 읽으세요.

복소 자동 미분을 구현할 때 실수·허수 중앙차분으로 규약을 독립 검산할 수 있습니다. 이 실습은 해석적 미분식을 사용하며 특정 라이브러리의 자동 미분을 실행했다고 주장하지 않습니다. 비매끄러운 복소 절댓값·분기 연산에서는 추가 정의와 검토가 필요합니다.

확인 문제와 답

  1. η=1/2이면? 한 번에 c에 도달합니다.
  2. η=1이면 손실이 줄까요? 일반 비영 오차에서 그대로입니다.
  3. 실수값 비상수 손실을 정칙 함수로 강제해야 하나요? 아니요. R² 또는 Wirtinger 미분을 사용합니다.

추가 읽기: MIT Complex Variables with Applications. 공식 강좌 범위를 확인해 보충 자료로 연결합니다. 본문의 작은 계산과 예제는 직접 구성했습니다.

CHECK YOUR UNDERSTANDING

설명할 수 있나요?

실험 설정과 무관한 기준 예제를 묻습니다. 답을 고르고 설명을 확인해보세요.

1. 유클리드 gradient의 복소 표현은?
2. 실수값 손실이 정칙이 아니면 최적화 불가인가요?

선택한 답과 학습 표시는 이 브라우저에 저장됩니다. 다시 풀거나 표시를 해제할 수 있습니다.