본문 바로가기

6.수학과 알고리즘

수학기초 3 - 미분과 적분

들어가기

인공지능 스터디하는 중간에 도움될 만한 수학 기초 일부를 단순 참고용으로 정리했다.

작성자: http://ospace.tistory.com/ (ospace114@empal.com)

미분

미분은 순간 변화량을 의미한다. 극한을 사용한 함수 y = f(x)의 도함수 정의이다.

$$ f'(x) = \lim_{\Delta x \rarr 0 } { f(x+\Delta x) -f(x) \over \Delta x} $$

이를 미분 기호로 표기하면 다음과 같다. 이를 상미분 ordinary derivative이라고도 한다.

$$ f'(x) = {d f \over d x} $$

미분 성질

미분의 선형성으로 다음과 같은 성질이 있다.

  • 함수 합에 대한 미분은 각 함수 미분한 합과 같다.
    • $(f(x)+g(x))’ = f’(x) + g’(x)$
  • 상수를 곱한 함수는 미분한 함수에 상수 곱과 같다.
    • $(cf(x))’ = cf’(x)$

전미분과 편미분

f(x,y)에 대해서 미분을 구해보자. 이는 f(x+Δx, y+Δy)에서 Δx, Δy → 0가 되는 극한값을 구하면 f(x,y)에 대한 미분을 구할 수 있다. 이를 전미분(Total Differentiation)이라고 한다.

편미분(partial derivative)은 함수에 독립 변수가 여러 개가 있을 경우 특정 독립 변수 하나를 지정해서 미분한다. 특정 독립 변수 외에 다른 변수는 상수 취급한다.

아래는 함수 z=f(x,y)에서 편미분 x에 대한 도함수이다. 이는 y도 동일하게 표현된다.

$$ { \partial f(x,y) \over \partial x} = \lim_{\Delta \rarr 0 } { f(x+\Delta x, y) - f(x,y) \over \Delta x} $$

편미분으로 변수가 여러 개가 있을 경우도 최솟값 조건을 구할 수 있다.

$$ {\partial f \over \partial x} = 0, ~ {\partial f \over \partial y} = 0 $$

연쇄법칙

합성함수는 여러 초등 함수(Elementary Function)들이 합성된 함수이다. 예를 들어 함수 y = f(u)고 u = g(x)라면 y = f(g(x))로 표현된다. 중첩함수 f(g(x))가 함수 f(u)와 g(x)의 합성 함수가 된다. 이런 합성함수 미분은 연쇄법칙을 사용해서 구할 수 있다.

합성 함수 미분을 살펴보자.

$$ { dy \over dx }={ dy \over du }{ du \over dx } $$

x → u → y 순번으로 연쇄되어 미분할 수 있다. 그리고 합성함수 미분은 분수처럼 약분할 수 있다.

변수가 여러 개 인 경우는 편미분으로 연쇄법칙을 개별적으로 적용하여 합칠 수 있다.

$$ z = u^2 + v^2, ~u=ax+by, ~v=px+gy $$

$$ \begin{align*} {dz \over dx} &= { \partial z \over \partial u }{ \partial u \over \partial x } + { \partial z \over \partial v }{ \partial v \over \partial x }\\ &=2ua+2vp\\ &=2(ax+by)a + 2(px+qy)p \end{align*} $$

$$ z = u^2 + v^2, ~u=ax+by, ~v=px+gy $$

$$ \begin{align*} {dz \over dx} &= { \partial z \over \partial u }{ \partial u \over \partial x } + { \partial z \over \partial v }{ \partial v \over \partial x }\\ &=2ua+2vp\\ &=2(ax+by)a + 2(px+qy)p \end{align*} $$

시그모이드 함수 미분

표준 시그모이드 함수 미분을 살펴보자.

$$ \sigma(x) = {1 \over 1 + e^{-x}} $$

시그모이드 함수는 미분하지 않아도 도함수를 구할 수 있다. 도함수를 구하기 전에 아래 미분 공식을 살펴보자.

$$ \left( { 1 \over f(x) } \right) ' = -{f'(x) \over f(x)^2 }, ~ (e^{-x})' = -e^{-x} $$

분수 형태 함수 미분과 자연상수를 가진 지수 함수 미분이다. 이를 기반으로 시그모이드 함수의 도함수를 구해보자.

$$ \begin{align*} \sigma'(x) &= -{(1 + e^{-x})' \over (1 + e^{-x})^2} = {e^{-x} \over (1 + e^{-x})^2} = {1 + e^{-x} - 1 \over (1 + e^{-x})^2} \\ &= {\cancel{1 + e^{-x}} \over \cancel{(1 + e^{-x})}^2} - { 1 \over (1 + e^{-x})^2} = {1 \over 1 + e^{-x}} - \left({ 1 \over 1 + e^{-x}} \right)^2\\ &= \sigma(x) - \sigma(x)^2 \end{align*} $$

도함수가 함수 자신의 연산으로된 식되었다. 쉽게 도함수를 계산할 수 있게 되었다.

근사식

단일 변수 함수는 선형 근사할 수 있다. 극한 개념에 의한 도함수이다.

$$ f'(x) = {f(x+\Delta x) - f(x) \over \Delta x} $$

이를 변형하면

$$ f(x+\Delta x) \simeq f(x) + f'(x) \Delta x $$

x가 상수 a에 근접했다면 $\Delta x = x - a$ 라고 할 수 있다. f$(x) = e^x$가 x=0에 근접할 때에 근사식은 다음과 같다.

$$ e^{x+\Delta x} \simeq e^x + e^x \Delta x $$

$ x → 0, \Delta x → x$ 로 대체하면

$$ e^x \simeq 1 + x $$

변수가 여러 개인 함수 근사식

$$ f(x+\Delta x, y+\Delta y) \simeq f(x,y) + { \partial f(x,y) \over \partial x} \Delta x + { \partial f(x,y) \over \partial y} \Delta y $$

이는 x와 y를 $\Delta x$와 $\Delta y$ 변화할 때 z=f(x,y)의 변화이다. 이를 다음 처럼 표현할 수 있따.

$$ \Delta z \simeq {\partial z \over \partial x} \Delta x + {\partial z \over \partial y} \Delta y $$

$$ e^{x+y} \simeq 1 + x + y $$

벡터 형태로 표현

$$ \nabla z = \left( {\partial z \over \partial x}, {\partial z \over \partial y} \right), ~ \Delta x=(\Delta x, \Delta y) $$

$\nabla$은 nabla 또는 델 연산자라고 한다.

$$ \nabla = \left( {\partial \over \partial x}, {\partial \over \partial y} \right) $$

이를 사용해서 표현하면,

$$ \Delta z = \nabla z \cdot \Delta x $$

최댓값과 최솟값 조건

최댓값과 최솟값 조건을 살펴보자. 최댓값과 최솟값은 순간 변화량이 없다. 최솟값(Global Minimum Value)가 될 경우 변화량이 0가 되기 때문이다. 이는 최댓값(Global Maximum Value)도 동일하다. 즉, 함수 f(x)가 x=a에서 최솟값이면 f’(a) = 0이 된다.

주의 할 부분은 변화량이 0이라고 해서 반드시 최솟값이나 최댓값은 아니다.

라그랑주 승수법으로 최적화

라그랑주 승수법(Lagrange Multiplier Method)으로 최댓값과 최솟값 구해보자. 최솟값을 구할 때 변수에 제약조건을 둘 수 있다. 이 제약조건 내에서 최댓값과 최솟값을 찾는다.

라그랑주 승수법은 제약 조건 함수 g = 0를 만족하는 어떤 목적 함수 f의 최솟값이나 최댓값이 제약 조건 함수 g와 함수 f가 접하는 점이 있다는 개념을 이용한다. 즉, 라그랑주 승수법은 목적 함수 기울기가 제약 조건 함수 기울기에 평행한 지점을 찾는다.

$$ \nabla f(x,y) = \lambda \nabla g(x, y) $$

여기서 $\lambda$는 라그랑수 승수라고 하며, 최적해를 찾기 위한 도구이다. 보통 스칼라 값으로 보조 변수라고 한다.

$x^2 + y^2 = 1$이라는 제약조건이 있을 경우 함수 f(x,y) = x + y의 최솟값을 구해보자. 먼저 $x^2+y^2 = 1$를 $x^2+y^2 - 1 =0$으로 바꾸고 이를 g(x,y)라고 하자. 최적화를 위해 랑그라주 함수 L를 정의해보자.

$$ L(x,y,\lambda) = f(x,y)-\lambda g(x,y)=(x+y)+\lambda(x^2+y^2-1) $$

편미분을 이용해 최솟값을 구해보자. 이때 $\nabla g \ne 0$ 이어야 한다. 제약 조건이 여러 개인 경우 제약 조건마다 라그랑주 승수를 추가한다. 편미분을 이용해 최솟값을 구해보자.

$$ { \partial L \over \partial x} = 1 - 2 \lambda x = 0, ~ { \partial L \over \partial y} = 1 - 2 \lambda y = 0 $$

연립 방정식에 의해서 $\lambda = \frac 1 {2x} = \frac 1 {2y}$로 x = y가 되고, 조건 $x^2 + y^2 = 1$이면, $x = y = \pm 1 / \sqrt 2$ 을 얻을 수 있다. x+y의 최솟값은 $-\sqrt 2$가 된다.

경사하강법

z = f(x,y) 인 함수에서 최소화하는 x, y를 찾아가는 방법이다. 그래프의 경사면을 따라 내려가서 최소값을 찾는다.

$$ {\partial f(x,y) \over \partial x} = 0, ~{\partial f(x,y) \over \partial y} = 0 $$

경사하강법 기본식이다.

$$ (\Delta x, \Delta y) = -\eta \left( {\partial f(x,y) \over \partial x },{\partial f(x,y) \over \partial y } \right ) $$

$\eta$은 작은 양의 정수이다. 너무 크면 발산하고, 너무 작으면 수렴이 너무 느리게 된다. 신경망에서는 작은 양의 실수가 된다. 델 연산자를 이용하여 경사하강법을 표현하면 아래 처럼 간단하게 표현할 수 있다.

$$ (\Delta x, \Delta y) = -\eta \nabla f(x,y) $$

적분

앞의 미분에 의한 미소 양을 쌓아가는 체계이다. 크게 부정적분(Indefinite Integral)과 정적분(Definite Integral)으로 구분된다. 부정적분의 앞의 미분의 역연산이라고 할 수 있고 정적분은 주어진 구간을 구하는 연산한다고 할 수 있다.

부분적분

미분 가능한 연속함수로된 합성함수를 적분하는 방법이다.

$$ \int p(x)q'(x)dx = f(x)g(x)-\int f'(x)g(x)dx\\ \int_a^b p(x)q'(x)dx = [f(x)g(x)]_a^b - \int_a^b f'(x)g(x)dx $$

유도하는 방법이다. 합성합수 p(x)q(x)에 대해서 미분해보자.

$$ \frac d {dx}p(x)q(x) = f(x) \frac {dg(x)} {dx} + \frac {df(x)} {dx} g(x) $$

양변을 적분하자. 그러면 좌변은 미분이 사라진다.

$$ p(x)q(x) = \int f(x) \frac {dg(x)} {dx} dx + \int \frac {df(x)} {dx} g(x) dx $$

우변에 첫번째항을 이항하고 정리하면 다음과 같다.

$$ \int f'(x)g(x)dx = p(x)q(x)-\int f(x)g'(x)dx $$

참고

[1] 와쿠이 요시유키, 와쿠이 사다미, 처음 배우는 딥러닝 수학, 한빛미디어

[2] 이시카와 아키히코, 신상재 이진희, 인공지능을 위한 수학, 프리렉, 2019.09.16

[3] 적분, 나무위키, 2025.02.12, https://namu.wiki/w/%EC%A0%81%EB%B6%84

[4] 상우쌤의수학노트, Lagrange Multiplier Method 랑그랑주 승수법, 2018.10.24, https://www.youtube.com/watch?v=lmD9p6J\_-TA

반응형

'6.수학과 알고리즘' 카테고리의 다른 글

수학기초 2 - 수열  (0) 2025.02.11
수학기초 1 - 함수 종류  (0) 2025.02.04
CNN 이미지 식별 알고리즘  (0) 2024.03.11
BoF 알고리즘  (0) 2024.03.10
Blockchain  (4) 2024.03.07