안장점

편집 역사 토론
수치해석 최적설계 마지막 수정: 2026-07-23 04:06:12

1. 개요[편집]

안장점(saddle point)은 다변수 함수에서 **기울기(gradient)는 0이지만 최소점도 최대점도 아닌 임계점(critical point)**을 말한다. 이름은 말 안장처럼 한 방향으로는 위로 휘고 다른 방향으로는 아래로 휘는 모양에서 왔다. 가장 유명한 장난감 예시는 f(x,y)=x2y2f(x,y)=x^2-y^2인데, 원점에서 xx 방향으로는 골짜기(위로 볼록), yy 방향으로는 능선(아래로 볼록)이라 원점은 최소도 최대도 아니다.

임계점은 f=0\nabla f = \mathbf{0}을 만족하는 점이다. 이 조건만으로는 그 점이 최소인지 최대인지 안장인지 구별할 수 없다. 판별은 2차 정보, 즉 헤세 행렬의 고유값 부호를 봐야 한다. 최적화 알고리즘 입장에서 안장점은 “다 왔나 싶었는데 아니었던” 함정이며, 특히 고차원 비볼록 문제에서는 이 함정이 최소점보다 압도적으로 많다.

회전된 2차형식 ½λ₁u²+½λ₂v²에 등방 4차항을 더한 함수에서 헤세 행렬을 조립해 대칭 2×2 고유분해를 수치로 푼다. 화살표가 고유벡터 두 축이고 색이 고유값 부호(청록은 양, 주황은 음), 상단에 λ₁·λ₂와 2차 판정 결과가 실시간으로 뜬다. 12개 시작점에서 동시에 돌리는 경사하강 중 청록 궤적은 안정 다양체(v=0), 주황 궤적은 불안정 다양체(u=0) 위에서 출발한다. λ₂ 슬라이더로 부호를 넘기면 같은 원점이 안장점에서 극소로 바뀌고, θ 슬라이더는 고유축을 좌표축에서 떼어 놓는다. 4차항은 음의 곡률 방향으로 새어 나간 궤적을 유한한 곁 최소점에 붙잡아 두기 위한 것이다.

2. 2차 판정: 헤세 행렬의 고유값[편집]

임계점의 성격은 그 점에서의 헤세 행렬 H=2fH = \nabla^2 f의 고유값 부호로 결정된다.

{모든 고유값>0국소 최소모든 고유값<0국소 최대고유값 부호 혼재안장점\begin{cases} \text{모든 고유값} > 0 & \Rightarrow \text{국소 최소} \\ \text{모든 고유값} < 0 & \Rightarrow \text{국소 최대} \\ \text{고유값 부호 혼재} & \Rightarrow \text{안장점} \end{cases}

즉 헤세 행렬이 부정치(indefinite) — 양·음 고유값을 동시에 가지면 그 점은 안장점이다. 양의 고유값에 대응하는 고유벡터 방향은 함수가 위로 휘어 그 방향으로는 안정하고, 음의 고유값 방향은 아래로 휘어 불안정하다. x2y2x^2-y^2의 헤세 행렬은 diag(2,2)\mathrm{diag}(2,-2)로 고유값이 +2, 2+2,\ -2라 전형적인 안장점이다. 고유값 중 0이 섞이면(반정치) 2차 판정이 결론을 내지 못하고 더 고차 항을 봐야 하는 축퇴(degenerate) 상황이 된다.1

3. 왜 최적화에서 골칫거리인가[편집]

안장점은 두 가지 방식으로 알고리즘을 괴롭힌다.

  • 경사하강법: 안장점 근처에서는 기울기 크기가 0에 가까워지므로 스텝이 극도로 작아진다. 이론적으로 완벽히 능선 위에 서지 않는 한 결국은 불안정 방향으로 미끄러져 빠져나오지만, 실전에서는 안장점 주변의 광활한 평지(plateau)에서 수천 번의 반복이 낭비된다. “수렴한 줄 알았는데 손실이 안 줄어드는” 정체 구간의 상당수가 안장점 근방이다.
  • 뉴턴-랩슨법: 더 심각하다. 순수 뉴턴법은 Δx=H1f\Delta x = -H^{-1}\nabla f로 임계점을 향해 이동하는데, 최소·최대·안장을 구별하지 않고 그냥 f=0\nabla f = 0인 점을 찾는다. 안장점도 f=0\nabla f = 0이므로 뉴턴법은 안장점에 끌려간다. 부정치 헤세 행렬을 그대로 역행렬하면 음의 고유값 방향으로 오르막 스텝을 밟아버리기 때문이다. 그래서 순수 뉴턴법은 비볼록 최적화에서 위험하며, 신뢰 영역 방법이나 헤세 행렬 수정(modification)이 필요하다.

4. 고차원의 반전: Dauphin et al. 2014[편집]

오랫동안 신경망 학습의 걱정거리는 “나쁜 국소 최소(local minima)에 갇히는 것”이었다. 그런데 Dauphin 등(2014)의 결과는 이 통념을 뒤집었다.2 무작위 비볼록 함수에서 임계점을 무작위로 하나 잡았을 때, 그 점이 국소 최소가 되려면 헤세 행렬의 NN개 고유값이 모두 양수여야 한다. 차원 NN이 커질수록 고유값 부호가 우연히 전부 같은 쪽으로 정렬될 확률은 지수적으로 줄어든다.

결과적으로 고차원 손실 지형에서는 안장점이 국소 최소보다 압도적으로 많다. 게다가 높은 손실값을 갖는 임계점일수록 안장점일 확률이 높고, 국소 최소들은 대개 전역 최소와 비슷하게 낮은 손실에 몰려 있다. 즉 딥러닝에서 진짜 학습을 방해하는 것은 “나쁜 국소 최소”라기보다 “느리게 통과해야 하는 안장점의 바다”라는 재해석이 자리 잡았다.3

5. 탈출 전략[편집]

안장점은 언젠가는 빠져나오지만, 그 “언젠가”를 앞당기는 방법들이 있다.

  • 섭동 경사하강(perturbed/noisy GD): 기울기가 작아진 정체 구간에서 작은 무작위 노이즈를 주입하면 불안정 고유벡터 방향의 성분이 생겨 안장점을 빠르게 탈출한다. 확률적 경사하강(SGD)의 미니배치 노이즈가 자연스럽게 이 역할을 하기도 한다.
  • saddle-free Newton: 헤세 행렬의 고유값을 절댓값으로 바꾼 H|H|를 써서 스텝을 계산한다. 이러면 음의 고유값 방향으로도 내리막 스텝을 밟아 안장점에서 밀려난다. 순수 뉴턴법이 안장에 끌려가던 문제를 정면으로 고친 방법.
  • 모멘텀·라인서치·신뢰 영역 방법: 관성으로 평지를 밀고 나가거나, 스텝 신뢰 반경을 관리해 부정치 방향의 폭주를 막는다.

6. 관련 문서[편집]

7. Footnotes[편집]

  1. 고유값에 0이 섞인 축퇴 임계점은 “몽키 새들(monkey saddle)” 같은 고차 안장으로 갈 수 있다. f=x33xy2f=x^3-3xy^2가 원점에서 원숭이가 두 다리와 꼬리를 걸칠 골이 세 개 파인 그 유명한 예시다. 2차 판정으로는 아무 결론도 못 내린다.

  2. Dauphin, Y. et al. (2014). Identifying and attacking the saddle point problem in high-dimensional non-convex optimization. NeurIPS. 무작위 행렬 이론(Wigner 반원 법칙)을 근거로 든다.

  3. 그래서 “우리 모델이 국소 최소에 빠졌어요”라고 말하는 사람을 보면 통계적으로는 안장점일 가능성이 훨씬 높다. 물론 발표 자료에는 여전히 “local minima”라고 쓴다. 그게 더 있어 보이니까.