본문으로 건너뛰기
30 / GRADIENT LAB
먼저 알아두면 좋아요 · 함수, 좌표, 기울기의 기본 개념
단원 목록 (103) · 그래디언트와 학습률
이해하는 속도로 읽으세요.개념도이론실험확인 문제
BUILD YOUR INTUITION

먼저 그림으로 이해하기

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

각 방향의 작은 변화에 손실이 얼마나 반응하는지 묻고, 그 답으로 다음 매개변수를 정합니다.

xy(0, 0)p₀ = (2, 2)
매개변수 평면의 등고선 · 높이는 표시하지 않습니다. 고정된 기준 예제이며 아래 실험의 설정과 독립적입니다.
1 / 4

현재 위치와 손실

등고선은 손실이 같은 점들을 잇습니다. a=2, b=1에서 시작점 (2,2)의 손실은 6입니다. 이 평면은 매개변수 x,y를 위에서 본 그림입니다.

L(2, 2) = (2×2² + 2²)/2 = 6

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

기울기를 안다고 바로 도착할 수 있을까

AI의 학습은 매개변수를 바꾸어 목적함수를 줄이는 과정으로 자주 표현됩니다. 어느 방향으로, 얼마나 바꾸면 좋을까요? 이 단원에서는 그래디언트의 방향과 학습률의 크기를 분리해 실험합니다.

L(x,y)=12(ax2+by2),a>0, b>0.L(x,y)=\tfrac12(ax^2+by^2),\qquad a>0,\ b>0.

입력 x와 y, 목적값 L은 모두 무차원입니다. 이 함수는 최솟값이 원점에 있는 양의 이차함수입니다. 전체 신경망의 복잡한 손실 지형을 그대로 재현한 것은 아닙니다.

이 단원에서 얻을 것

미분 기호가 익숙하지 않아도 작은 변화량부터 따라올 수 있게 설명합니다. 먼저 손실이 무엇인지 정하고, 한 변수를 조금 바꾸는 계산에서 편미분과 그래디언트로 올라갑니다.

  • 현재 매개변수와 손실, 그래디언트를 구분합니다.
  • 한 번의 갱신을 손으로 계산하고 실제 손실이 줄었는지 확인합니다.
  • 학습률과 곡률이 수렴에 어떻게 함께 영향을 주는지 설명합니다.
기호 뜻 기준 예제
p=(x,y)\mathbf p=(x,y) 조절할 매개변수 두 개 시작은 (2,2)
L(p)L(\mathbf p) 현재 매개변수의 손실 시작 손실은 6
a,ba,b 두 축의 곡률을 정하는 양수 2와 1
∇L\nabla L 편미분들을 모은 벡터 시작점에서는 (4,2)
η\eta 한 번에 움직일 크기를 정하는 학습률 기본값 0.25
kk 갱신 횟수 k=0k=0이 시작점

여기서 x와 y는 훈련 데이터의 두 특성이 아니라 알고리즘이 바꾸는 매개변수입니다. a와 b는 이번 실험의 손실 곡면을 정하는 상수입니다. 설정에서 이를 바꾸는 것은 다른 최적화 문제를 비교하는 일입니다.

손실은 무엇을 재는 숫자일까

학습에서는 예측이 얼마나 틀렸는지, 혹은 우리가 정한 목표와 얼마나 다른지를 하나의 수로 나타낼 수 있습니다. 이 수를 줄이도록 매개변수를 바꿉니다. 이 단원의 이차함수는 그 원리를 분리해서 보는 작은 예입니다.

별도의 1차원 예를 봅시다. 입력이 1일 때 모델이 w를 예측하고 정답이 3이라면

L(w)=12(w−3)2.L(w)=\tfrac12(w-3)^2.

w=1일 때 손실은 2, 미분은 w−3=−2w-3=-2입니다. 학습률 0.25로 갱신하면 wnext=1−0.25(−2)=1.5w_{\rm next}=1-0.25(-2)=1.5, 손실은 1.125가 됩니다. 음의 기울기에서는 매개변수를 늘리는 것이 손실을 줄입니다. “하강”이 모든 좌표의 값을 줄인다는 뜻은 아닙니다.

이 예의 최솟값은 w=3입니다. 반면 3D 실험의 최솟값은 원점입니다. 원점이라는 숫자가 특별해서가 아니라 각 목적함수의 정의가 다른 것입니다.

편미분은 한 방향씩 물어보는 질문

현재 (2,2)에서 y를 2로 고정하고 x만 0.1 늘려 봅시다. 손실은 6에서 6.41이 됩니다. x 한 단위 변화당 증가량을 근사하면

L(2.1,2)−L(2,2)0.1=4.1.\frac{L(2.1,2)-L(2,2)}{0.1}=4.1.

변화량을 0.01로 줄이면 이 값은 4.01입니다. 변화량이 0에 가까워질 때의 한계가 x에 대한 편미분이며 이 점에서는 4입니다. y만 움직이는 질문의 답은 2입니다. 두 답을 순서대로 모은 벡터가 (4,2)인 그래디언트입니다.

‘편’미분에서는 다른 변수를 고정합니다. x와 y를 동시에 바꾼 손실 차이를 x의 변화량으로만 나누면 같은 질문에 답하는 것이 아닙니다. 수치 차분으로 미분을 점검할 때도 어느 변수를 바꾸었는지 기록해야 합니다.

미분에서 갱신으로

x²을 x로 미분하면 2x입니다. x에 대한 편미분에서는 y를 고정하므로 y만 포함한 항의 미분은 0입니다. ∂ 기호는 이런 편미분을 나타냅니다.

∂L∂x=12a(2x)+0=ax,∂L∂y=0+12b(2y)=by.\frac{\partial L}{\partial x}=\tfrac12 a(2x)+0=ax,\qquad \frac{\partial L}{\partial y}=0+\tfrac12 b(2y)=by.

앞의 1/2은 미분에서 나오는 2와 상쇄되어 식을 간단하게 합니다. 양의 상수를 곱해도 최솟값의 위치는 같지만, 그래디언트 크기와 같은 학습률에서의 이동량은 바뀔 수 있습니다.

각 매개변수로 편미분하면

∇L(x,y)=(ax,by).\nabla L(x,y)=(ax,by).

유클리드 거리에서 그래디언트는 국소적으로 함수가 가장 빠르게 증가하는 방향입니다. 경사하강법은 반대 방향으로 갱신합니다.

pk+1=pk−η∇L(pk),η>0.\mathbf p_{k+1}=\mathbf p_k-\eta\nabla L(\mathbf p_k),\qquad \eta>0.

여기서 ‘가장 빠르다’는 같은 길이의 아주 작은 움직임끼리 비교한다는 뜻입니다. 이 단원에서는 두 좌표 변화량의 제곱합에 제곱근을 취해 이동 길이를 잽니다. 이런 길이 기준이 유클리드 거리입니다.

여기서 η가 학습률입니다. 그래디언트가 원점을 향하는 힘이거나 물체의 속도인 것은 아닙니다. 현재 위치에서 계산한 함수의 미분입니다.

첫 한 걸음을 손으로 계산하기

a=2, b=1, 시작점 (2,2), 학습률 η=0.25로 두겠습니다.

∇L(2,2)=(4,2),p1=(2,2)−0.25(4,2)=(1,1.5).\nabla L(2,2)=(4,2),\qquad \mathbf p_1=(2,2)-0.25(4,2)=(1,1.5).

목적값도 함께 확인해야 합니다.

L(2,2)=6,L(1,1.5)=2.125.L(2,2)=6,\qquad L(1,1.5)=2.125.

실험에서 한 단계 진행한 뒤, 표의 좌표·gradient·목적값과 이 숫자를 대조하세요. 3D 곡면의 높이는 목적값을 표시한 것이며, 화면의 높이 배율은 계산을 바꾸지 않습니다.

두 번째 걸음과 손실 이력

계산 순서를 나누면 구현 실수도 찾기 쉽습니다.

  1. 현재 위치에서 그래디언트 (4,2)를 계산합니다.
  2. 학습률을 곱해 이동 벡터 (1,0.5)를 얻습니다.
  3. 현재 위치에서 빼서 (1,1.5)로 갱신합니다.
  4. 새 위치의 함수값을 다시 계산해 손실 2.125를 확인합니다.

다음 단계에서는 처음의 그래디언트를 재사용하지 않습니다. 새 위치의 그래디언트는 (2,1.5)이고, 다음 좌표는 (0.5,1.125)입니다.

반복 k x y 손실 L
0 2 2 6
1 1 1.5 2.125
2 0.5 1.125 0.8828125
3 0.25 0.84375 0.41845703125

3D 장면의 점은 이 표의 한 행이고, 점들을 연결한 경로는 갱신 이력입니다. 오른쪽 손실 그래프의 가로축은 초가 아니라 반복 횟수 k입니다. 같은 k라도 학습률을 바꾸면 다른 위치에 도착합니다.

음의 그래디언트는 원점을 바로 가리킬까

시작점에서 원점으로 가는 벡터는 (-2,-2)이지만 음의 그래디언트는 (-4,-2)입니다. 두 방향은 다릅니다. x 쪽의 손실 곡률이 더 크기 때문에, 국소적으로는 그 방향을 더 많이 바꾸는 것이 빠른 감소를 만듭니다. 그래디언트는 최솟값까지의 최단 경로를 미리 아는 지도가 아닙니다.

왜 학습률에 경계가 생길까

이 함수에서는 각 성분이 독립적으로 갱신됩니다.

xk+1=(1−ηa)xk,yk+1=(1−ηb)yk.x_{k+1}=(1-\eta a)x_k,\qquad y_{k+1}=(1-\eta b)y_k.

어떤 시작점에서도 두 성분이 0으로 줄어들려면 두 배율의 절댓값이 모두 1보다 작아야 합니다. 따라서

0<η<2max⁡(a,b).0<\eta<\frac{2}{\max(a,b)}.

기준 예제의 범위는 0<η<1입니다. 이 조건은 위의 양의 이차함수에 대한 조건입니다. 임의의 비선형 함수와 실제 신경망 학습에 그대로 일반화할 수 없습니다.

배율로 학습률을 이해하기

기준 예제에서 x에 곱해지는 배율은 1−2η1-2\eta, y에는 1−η1-\eta입니다. “매번 같은 배율을 곱한 수열이 어떻게 될까?”로 바꾸면 수렴 조건을 읽기 쉽습니다.

배율 q 반복하면 생기는 일 예
0<q<10<q<1 부호를 유지하며 0에 접근 2, 1, 0.5, …
−1<q<0-1<q<0 부호가 바뀌며 0에 접근 2, -1, 0.5, …
q=−1q=-1 크기가 줄지 않고 왕복 2, -2, 2, …
$ q >1$

q=0이면 그 성분은 한 번에 0이 됩니다. q=1이면 값이 그대로 남습니다. 두 성분 모두 모든 시작점에서 0으로 가려면 두 배율의 절댓값이 모두 1보다 작아야 합니다. 곡률 a나 b가 커지면 허용되는 학습률의 상한은 작아집니다.

이는 매우 구체적인 함수에 대한 정확한 결과입니다. 실제 신경망의 한 지점에서 본 곡률이나 손실 감소만으로 전체 학습 과정의 수렴을 보장할 수는 없습니다.

수렴·왕복·증가를 비교하기

  • η=0.25: 두 성분이 줄어들며 원점으로 다가갑니다.
  • η=0.75: x의 부호가 번갈아 바뀌지만 크기는 줄어듭니다. 지그재그가 항상 발산은 아닙니다.
  • η=1: x는 2,-2,2,…로 왕복하고 y는 0이 됩니다. 목적값은 첫 단계 뒤 4에 머뭅니다.
  • η=1.25: 첫 갱신은 (-3,-0.5), 목적값은 9.125로 증가합니다.

프리셋을 바꿀 때는 같은 시작점에서 비교하세요. 시작점이 이미 원점이면 어떤 양의 학습률에서도 그 점에 머뭅니다. 한 초기값의 성공만으로 모든 시작점에서 수렴한다고 결론 내릴 수 없습니다.

그림을 읽는 방법

바닥 두 축은 매개변수 x와 y이고 높이는 L입니다. 이동한 점들을 잇는 선은 갱신 이력입니다. 곡면의 경사와 위에서 내려다본 궤적을 함께 살펴보세요.

표시 범위가 커지면 장면의 축척은 바뀔 수 있지만 표의 매개변수와 목적값은 그대로입니다. 표시 한계를 넘으면 계산값을 작게 잘라 수렴한 것처럼 보이지 않고 자동 진행을 멈춥니다.

한 단계 더: 내려가는 방향인데 왜 손실이 늘까

작은 변화에서 함수의 변화량은 다음과 같이 근사합니다.

ΔL≈∇LTΔp.\Delta L\approx\nabla L^T\Delta\mathbf p.

Δp=−η∇L\Delta\mathbf p=-\eta\nabla L을 대입하면 −η∥∇L∥2-\eta\|\nabla L\|^2이므로, 그래디언트가 0이 아닌 점에서는 충분히 작은 걸음의 감소를 예상할 수 있습니다. 그러나 이것은 큰 걸음에서도 정확한 값이 되는 식이 아닙니다.

이차함수에서는 곡률의 기여까지 정확히 쓸 수 있습니다. H=diag⁡(a,b)H=\operatorname{diag}(a,b)를 편미분을 한 번 더 모은 행렬, 즉 헤시안이라고 하면

ΔL=−η∥g∥2+12η2gTHg,g=∇L.\Delta L=-\eta\|\mathbf g\|^2+\tfrac12\eta^2\mathbf g^TH\mathbf g,\qquad \mathbf g=\nabla L.

기준 시작점에서는 ∥g∥2=20\|\mathbf g\|^2=20, gTHg=36\mathbf g^TH\mathbf g=36이므로 ΔL=−20η+18η2\Delta L=-20\eta+18\eta^2입니다. 학습률 0.25에서는 −3.875이지만, 1.25에서는 +3.125입니다. 작은 걸음의 감소 항은 η에 비례하고, 곡률에 의한 증가 항은 η²에 비례합니다. 이 비교가 과도한 학습률의 위험을 수식으로 설명합니다.

이 절은 헤시안을 처음 만나는 독자라면 먼저 두 항의 역할만 이해해도 좋습니다. 이후 다변수 미적분과 최적화에서 이차 근사와 고유값으로 다시 연결합니다.

AI와 물리를 연결할 때

신경망에서는 많은 매개변수의 gradient를 역전파로 계산하고, optimizer가 이 값을 이용해 갱신합니다. 실제 학습에는 표본 잡음·정규화·제약·비볼록성 등 추가 조건이 있습니다.

공이 물리적인 그릇 안을 굴러가는 운동에는 질량·속도·관성·힘과 시간의 법칙이 필요합니다. 이 단원의 점은 그러한 입자가 아니라 알고리즘의 현재 매개변수입니다. 비슷한 그림과 동일한 법칙을 구분하는 것이 연구에서도 중요합니다.

자주 생기는 오해와 연구 점검

생각 확인할 반례 또는 기준
하강법은 모든 좌표를 작게 만든다 음의 기울기에서는 좌표가 커질 수 있다
그래디언트는 최솟값을 바로 가리킨다 음의 그래디언트 (-4,-2)는 원점까지의 변위 (-2,-2)와 평행하지 않다
경로가 왕복하면 실패다 학습률 0.75에서는 부호가 바뀌어도 수렴한다
손실이 한 번 줄었으니 수렴한다 학습률 1에서는 6에서 4로 줄어든 뒤 왕복한다
손실이 작으면 실제 문제도 해결했다 목적함수의 정의와 평가 데이터도 따로 확인해야 한다

연구 코드를 읽을 때는 초기값, 학습률, 손실의 합/평균 규약, 그래디언트를 재계산하는 위치를 먼저 기록하세요. 같은 데이터라도 손실을 상수 c배 하면 그래디언트도 c배가 되어 같은 학습률에서 이동 크기가 바뀝니다. 이 때문에 숫자 하나만 복사한 학습률은 다른 구현에서 다른 결과를 낼 수 있습니다.

도전과 확인

기준 예제에서 목적값을 0.05 미만으로 내려 보세요. 학습률과 단계를 기록하고, 왕복하면서도 수렴하는 예를 설명해 보세요.

해설: η=0.25이면 여러 단계 뒤 목표에 도달합니다. η=0.75도 이 함수에서는 수렴합니다. 단순히 ‘작게 움직인다’가 아니라 각 성분의 배율과 실제 목적값을 확인해야 합니다.

학습 근거: Boyd and Vandenberghe — Convex Optimization.

CHECK YOUR UNDERSTANDING

설명할 수 있나요?

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

1. 그래디언트 ∇L은 국소적으로 어느 방향을 가리킬까요?
2. L=(2x²+y²)/2에서 모든 시작점의 수렴을 보장하는 학습률 범위는?

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