본문으로 건너뛰기

02. 최적화를 위한 미적분 — 변화율에서 2차 근사까지

// BACKGROUND 2/6 — derivative, partial derivative, gradient, Hessian, Taylor expansion

최적화에서 미적분은 “지금 위치 주변에서 함수가 어떻게 변하는가”를 읽는 도구입니다. 전체 함수를 완벽히 알지 못해도, 현재 점의 국소 정보만으로 다음 이동 방향을 정할 수 있습니다.

Derivative

1차원 함수 f:RRf:\mathbb{R}\to\mathbb{R}의 미분계수는 한 점에서의 순간 변화율입니다.

f(x)=limh0f(x+h)f(x)h.f'(x)=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}.

최적화 관점에서는 f(x)f'(x)가 양수면 오른쪽으로 갈수록 값이 증가하고, 음수면 오른쪽으로 갈수록 값이 감소합니다. 따라서 최소화를 원하면 기울기의 반대 방향으로 움직이는 것이 자연스럽습니다.

Partial derivative

다변수 함수에서는 좌표 하나만 바꾸며 변화율을 봅니다.

fxi(x)\frac{\partial f}{\partial x_i}(x)

는 다른 좌표는 고정하고 xix_i만 움직였을 때의 변화율입니다. 좌표별 민감도를 보는 도구라고 생각하면 됩니다.

Gradient

gradient는 모든 partial derivative를 벡터로 모은 것입니다.

f(x)=(fx1,,fxn).\nabla f(x)=\left(\frac{\partial f}{\partial x_1},\dots,\frac{\partial f}{\partial x_n}\right)^\top.

중요한 사실은 gradient가 가장 빠르게 증가하는 방향이라는 점입니다. 따라서 gradient descent는 다음처럼 움직입니다.

xk+1=xkαkf(xk).x_{k+1}=x_k-\alpha_k\nabla f(x_k).

여기서 αk\alpha_k는 step size입니다.

Hessian

Hessian은 2차 미분을 행렬로 모은 것입니다.

2f(x)=[2fx122fx1xn2fxnx12fxn2].\nabla^2 f(x)= \begin{bmatrix} \frac{\partial^2 f}{\partial x_1^2} & \cdots & \frac{\partial^2 f}{\partial x_1\partial x_n}\\ \vdots & \ddots & \vdots\\ \frac{\partial^2 f}{\partial x_n\partial x_1} & \cdots & \frac{\partial^2 f}{\partial x_n^2} \end{bmatrix}.

gradient가 “기울기”라면 Hessian은 “곡률”입니다. Newton method는 Hessian을 이용해 함수의 2차 근사를 직접 최소화합니다.

Taylor expansion

Taylor expansion은 복잡한 함수를 현재 점 근처에서 다항식으로 근사합니다.

1차 근사:

f(x+p)f(x)+f(x)p.f(x+p)\approx f(x)+\nabla f(x)^\top p.

2차 근사:

f(x+p)f(x)+f(x)p+12p2f(x)p.f(x+p)\approx f(x)+\nabla f(x)^\top p+\frac{1}{2}p^\top \nabla^2 f(x)p.

여기서 pp는 현재 점에서 이동하는 방향과 크기입니다. Gradient descent는 1차 근사를, Newton method는 2차 근사를 핵심으로 사용합니다.

한 페이지 요약

개념최적화에서 하는 일
derivative1차원 변화율을 읽는다
partial derivative좌표 하나의 민감도를 읽는다
gradient가장 빠르게 증가하는 방향을 준다
Hessian곡률과 2차 구조를 준다
Taylor expansion현재 점 주변의 쉬운 근사 문제를 만든다

기존 심화 설명은 극한과 미분의 정의, 다변수 미분, 미분과 최적화를 참고하세요.

다음: 최적화를 위한 선형대수