교재링크(광고 아님): freelec.co.kr/book/인공지능을-위한-수학/

 

 

멱함수(power function)

변수를 특정 상수로 거듭제곱하는 함수. 지수함수와 반대의 모습인데 그래프 상으로는 비슷하다. 함수의 모양은 아래와 같다.

$$ f(x) = cx^\alpha $$

 

 

초등함수(elementary function)

단일 변수에 대한 특별히 간단한 함수이거나 그들의 조합을 가한 함수. 특별히 간단한 함수는 정확히 {덧셈, 곱셈, 다항식, 유리함수, 삼각함수, 지수함수, 역함수} 만이다.

초등함수 몇가지 예는 아래와 같다.

$$ f(x) = e^x $$

$$ f(x) = x^{\ln x} $$

$$ f(x) = \sin{(x^2 + 3x + 1)} $$

※ 교재에는 특별히 언급이 없어서 간단한 함수만 초등함수인 것처럼 생각할 수 있으므로, 교재 외의 자료들을 레퍼런스 해보시길 권한다.

 

 

합성함수(composite function)

한 함수의 공역을 다른 함수의 정의역으로 만드는 과정을 뜻하거나 그렇게 유도된 함수를 지칭하는 용어이다. 조금 컴퓨터스럽게 표현하자면 함수의 출력을 다른 함수의 입력으로 넣는 것을 뜻한다. 참고로 합수 합성(function composition)이라는 용어가 더 많이 쓰이는 듯 하다.

표현식으로는 아래와 같다. 예를 들어, f(x)의 출력이 g(x)의 입력이 되는 경우

$$ g(f(x)) = (g \circ f)(x) $$

이 노테이션의 발음은 아래 중에서 고르면 된다.

  • g circle f
  • g round f
  • g about f
  • g composed with f
  • g after f
  • g following f
  • g of f
  • g on f
  • ...

합성함수의 간단한 예를 들어본다.

$$ f(x) = x^2 \quad 및 \quad g(x) = 9x + 8 $$

$$ \text{ => } (g \circ f)(x) = 9x^2 + 8 $$

※ 위 합성의 결과를 보면, 합성된 함수가 다시 초등함수가 된다는 사실을 알 수 있다.

 

 

연쇄법칙(chain rule)

합성함수를(함수의 합성으로 표현된 초등함수 포함) 미분하는 방법. 공식은 아래와 같다.

$$ \frac{dy}{dx} = \frac{dy}{du} \cdot \frac{du}{dx} $$

위 공식은 한번의 합성에 대한 미분 공식이고, 여러번 합성된 함수에 대해서는 아래와 같이 체이닝을 하면 된다.

$$ \frac{dy}{dx} = \frac{dy}{du} \cdot \frac{du}{dv} \cdot \frac{dv}{dw} ... \frac{d?}{dx} $$

 

간단한 예제 하나를 풀어보면 쉽게 이해할 수 있다. 아래의 함수를 연쇄법칙으로 풀어보겠다.

$$ y = (9x + 8)^2 $$

이 함수를 함성합수라 여기고 두 개의 함수로 나눠보면,

$$ f(x) = 9x + 8 $$

$$ g(x) = x^2 $$

$$ (g \circ f)(x) = g(f(x)) = [f(x)]^2 $$

y = g(f(x)) 및 u = f(x)로 놓고 연쇄 법칙을 사용해 보겠다. (무작위하게 대입 처리함)

$$ \frac{dy}{dx} = \frac{d g(f(x))}{dx} = \frac{d g(u)}{du} \cdot \frac{d f(x)}{dx} = \frac{du^2}{du} \cdot \frac{d (9x+8)}{dx} = 2u \cdot 9 $$

이 결과에서 u 에 함수 본체를 대입하면

$$ y' = 2u \cdot 9 = 2(9x + 8) \cdot 9 = 162x + 144 $$

 

사실 위 예제는 제곱을 풀고 바로 미분을 하면 되므로, 사실상 연쇄 법칙이 필요 없다. 하지만, 아주 복잡한 합성함수의 미분에는 상당히 유용한 법칙 임을 충분히 보인 예제라고 생각한다.

인자가 여러 개인(수학에서는 다변수(multivariate)라고 표현) 합성함수의 미분도 원리는 같고, 일반적으로 편미분을 하게 되므로 사용하는 기호만 다르고 동일하게 풀어가면 된다.

 

※ 그런데, 교재에서는 다변수함수(multivariate function)의 합성에 대한 연쇄법칙을 아래와 기술하였다.

예를 들어, z = f(x, y) 일 때,

$$ \frac{\partial z}{\partial x} = \frac{\partial z}{\partial u} \cdot \frac{\partial u}{\partial x} + \frac{\partial z}{\partial v} \cdot \frac{\partial v}{\partial x} $$

이 부분은 합성함수의 미분보다는 함수의 합(summation)에 대한 미분 즉,

$$ z = f(x, y) = u(x, y) + v(x, y) $$

라는 함수를 합의 법칙(sum rule)을 이용하여 x에 대한 편미분(u, v를 합성함수라 가정)을 구하는 것과 동일한 모양이었다. 도대체 어떻게 된 건지 알아보기 위해 여러 자료를 찾아 보니, 합법칙과 연쇄법칙이 무 자르듯이 딱 나눠진 관계가 아니라 상보적인 관계에 있다는 사실을 알게 되었다(다 아는 것처럼 썼으나 사실 잘 모르기 때문에 '더이상의 자세한 설명은 생략'). 더 많은 이해가 필요하시다면 별도의 자료들을 충분히 레퍼런스하시기를 추천한다.

합의 법칙은 앞선 포스트에 간단히 표현해 두었다.

 

2장 미분(3절:상미분과 편미분) - 기본편 - 인공지능을 위한 수학

교재링크(광고 아님): freelec.co.kr/book/인공지능을-위한-수학/ 2-3 상미분과 편미분 상미분(ordinary derivative) : 변수가 하나의 함수의 미분 상미분의 몇가지 공식 예 $$ y = x^r \text{ 일 때 } \frac{dy}..

swjman.tistory.com

 

 

곱의 법칙(product rule)

함수가 두 개 이상의 함수의 곱으로 표현될 수 있을 경우 각각을 미분해주는 법칙. 각각을 미분한다고 해서 합의 법칙(sum rule)처럼 깔끔하게 독립항의 개별 미분이 가능한 것은 아니고 다소 복잡한 공식으로 나타나는데, 컴퓨터 언어로 치면 재귀호출 느낌이다. (물론, 컴언어의 재귀호출은 코딩 상으로는 깔끔하지...)

교재의 공식을 옮겨적기 보단 조금 다른 표현 방식으로 기술해 본다. 포스트를 너무 복잡하게 만들고 싶지 않으니 두개의 함수 곱에 대해서만 기술하련다.

$$ y = f(x) \text{ , } z = g(x) $$

$$ h(x) = f(x) \cdot g(x) = yz $$

$$ h'(x) = (yz)' = y'z + yz' $$

 

이 법칙도 합법칙과 마찬가지로 연쇄법칙과의 관계가 밀접한 것으로 보인다.

 

 

 

※ 오차역전파법(backpropagation) : 용어 이름만으로도 머리가 아픈 이 기술에 편미분 및 연쇄법칙이 쓰인다고 한다. 본 교재 7.9절에 자세히 나온다니 나중에 읽어보고 따로 정리할 예정.

 

※ 사설은 되도록 기재하지 않으려 하였으나, 북 스터디는 서평도 포함한다고 생각하므로 이번 절을 공부하고 나서 느낀 바를 간략히 기록한다.

이 번 섹션은 조금 어리둥절했다. 용어나 규칙을 너무 간단히 설명하고 공식만 나열했다는 느낌이 들었다. 특히, 다변수함수의 연쇄법칙에 대해서는 비약이 심해 다른 참고자료를 구해서 한참을 씨름해야 했다.
뭐, 점점 어려운 내용이 나오다 보니 한정적인 지면에 효과적인 설명을 하기는 어려울테고, 또 제대로 설명하려면 한도 끝도 없을테니 이해가 되지 않는 것은 아니지만, 좀 더 알차게 설명할 수 있지 않았을까 하는 아쉬움이 남았다.

 

Posted by JMAN