이후 공부할 경사하강법에서 시그모이드 함수를 미분한다. 그때 활용할 것이 시그모이드 함수의 도함수를 구하는 간단한 식이다.
σ′(x)=σ(x)(1−σ(x))
이 식이 성립하는 과정은 분수의 미분 공식을 활용하여 아래와 같이 계산할 수 있다.
σ′(x)=−(1+e−x)2(1+e−x)′=(1+e−x)2e−x
=(1+e−x)21+e−x−1=1+e−x1−(1+e−x)21
=σ(x)−σ(x)2=σ(x)(1−σ(x))
4. 최솟값의 필요조건
함수 f(x)가 x=a에서 최솟값을 가지면 f′(a)=0이다. 즉, f′(a)=0 은 f(x)가 x=a에서 최솟값이 되기 위한 필요조건이다.
중요한 것은 f′(a)=0 이라고 해서 항상 최솟값인 것은 아니라는 것이다. 아래 그림을 통해 이를 더 직관적으로 이해할 수 있다.
편미분의 기본
지금까지 미분에서는 독립변수가 하나인 함수를 다뤘다. 그러나 신경망에서는 다변수 함수를 다룬다. 독립변수와 종속변수 여기에서 언급한 독립변수가 2개 이상인 경우를 다변수 함수라고 한다.
변수 x를 독립변수로 하는 함수를 f(x)로 했다. 변수 x1,x2,...,xn을 독립변수로 하는 다변수 함수는 f(x1,x2,...,xn)로 표현하도록 한다.
1. 편미분
다변수 함수를 미분하려면 어떤 변수를 미분할지 명시해야 한다. 이처럼 특정 변수에 대해 미분하는 것을 편미분(partial derivative)이라고 한다. 편미분 기호는 ∂x를 사용한다.
변수 x,y에 대한 함수 z=f(x,y) 예로 편미분을 해보자. x에 관한 편미분은 변수 x를 미분하고 y를 상수 취급하는 것이고, 반대로 y에 관한 편미분은 y를 미분하고 x를 상수 취급한다.
x에 관한 편미분
∂x∂z=∂x∂f(x,y)=Δx→0limΔxf(x+Δx,y)−f(x,y)
y에 관한 편미분
∂y∂z=∂y∂f(x,y)=Δy→0limΔyf(x,y+Δy)−f(x,y)
뉴런의 선형결합 z=wx+b 에 대해 각 독립변수를 편미분할 수 있다.
∂x∂z=w∂w∂z=x∂b∂z=1
2. 다변수 함수 최솟값의 필요조건
앞서 일변수 함수 f(x)에 대해 최솟값의 필요조건은 도함수가 0이 되는 것이었다. 다변수 함수도 마찬가지다.
2개의 변수가 있는 z=f(x,y) 함수가 최솟값이 되는 필요조건은 다음과 같다.
∂x∂f=0∂y∂f=0
z=x2+y2의 최솟값의 필요조건을 구해보자.
x,y에 관해 각각 편미분하면,
∂x∂z=2x∂y∂z=2y
x=0,y=0 은 함수가 최솟값을 갖기 위한 필요조건이다. 또한 z=x2+y2≥0 이므로 z=0 이 최솟값이 되며, 이 값은 (0,0) 에서만 성립한다. 따라서 x=0,y=0은 함수가 최솟값을 갖는 필요충분조건이다.
그래프에서 이를 확인할 수 있다.
Lagrange multiplier method
라그랑주 승수법(Lagrange multiplier method)이란 제약이 있는 상태에서의 극값(최댓값·최솟값)을 찾는 방법이다. 다변수 함수 f(x1,x2,…,xn)에 대해, 제약식 g(x1,x2,…,xn)=k를 만족하는 점들 중에서 f를 최대, 최소로 만드는 점을 구하고 싶을 때 사용한다.
우선 등산 경로 예시를 통해 라그랑주 승수의 상황을 이해해보도록 하자. 예시에는 해당 영상을 참고했다.
등산 경로
이변수함수 f(x,y)=4−x2−2y2를 산의 높이로 보고, 등산 경로를 g(x,y)=2(x−1)2−10y+6=0 로 둔다. (f의 level curve는 색상이 달라지는 지점으로 표현했다.)
아래처럼 f와 g가 만나는 부분을 경로로 볼 수 있다. 이 경로를 따라 올라갔을 때 최고 높이는 어떻게 구할 수 있을까? level curve는 타원의 중심으로 갈수록 높은 곳이라는 성질을 갖는다. 따라서 가장 안쪽의 level curve과 경로가 접하는 부분이 경로에서의 최고 높이로 볼 수 있다.
접점에서는 ∇f와 ∇g가 비례(평행)해야 한다.
정의와 조건
등산 경로 예시를 통해 대략적인 상황은 이해되었을 것이다. 그렇다면 이 접선은 어떻게 구하는가?
삼변수함수 S:g(x,y,z)=k와 S 위의 점 P(x0,y0,z0)를 지나는 임의의 curve C가 있다. 점 P에서의 접평면에서 수직이 되는 벡터 ∇F(P)가 있다.
f(x,y,z)는 P에서 극값을 가진다.
C : r(t)=⟨x(t),y(t),z(t)⟩
P : r(t0)=⟨x0,y0,z0⟩
x(t),y(t),z(t)을 함수 f에 대입해보면 t에 대한 일변수함수 h(t):=f(⟨x(t),y(t),z(t))가 된다. 이는 곡선 C 위에서의 함수 f의 값이다.
f는 P에서 극값을 가지므로 h(t)는 t0에서 극값을 갖는다.
0=h′(t0)
(작성중)
정리
이제 다시 정리해보면, g(x,y)=k와 접하는 f(x,y)=c 에서 최소(최대) c를 찾아야 한다. ∇f와 ∇g 가 평행하면 된다.
(a) 다음 식을 동시에 만족하는 x,y,z,λ (라그랑주 승수 λ)를 모두 찾는다.
∇f(x,y,z)=λ∇g(x,y,z)g(x,y,z)=k
(b) 후보 점에서 f 값을 비교한다. (a)에서 구한 모든 점 (x,y,z)에 대해 f(x,y,z) 값을 계산하여 그 중 가장 큰 값은 최대값, 가장 작은 값은 최소값이다.
손단하씨, 2026년 필즈상 수상을 축하합니다.