Mathematics/Calculus

[Calculus] Taylor series 는 무엇일까?

언킴 2022. 3. 11. 20:20
반응형

 

 

테일러 급수(Taylor series)는 임의의 함수 $f(x)$를 다항함수로 표현하는 것을 일컫는다. 머신러닝이나 딥러닝에서는 실제 데이터의 함수가 어떻게 생겼는지 알지 못한다. 이런 상황에서 임의의 함수 $f(x)$를 다항식으로 근사하여 점 $a$에서의 $f(x)$ 값을 도출할 수 있으며, 항이 많아질수록 근사의 정확도는 높아진다. 

 

우리는 임의의 점 $a$에 대해서 함숫값 $f(a)$가 주어지고, 그의 도함수인 $f^{\prime}(a)$가 주어졌을 때 이웃한 점에서의 함숫값을 추정할 수 있을 것이다. 다만, 테일러 급수에서 주의해야될 점은 $x$에서 근처 임의의 점($a$) 간의 거리가 멀어질수록 큰 오차를 가지게 된다. 그렇기에 점 $x$와 점 $a$ 간의 거리를 최소화 하는 지점을 적절히 선정해야한다. $f(x)$의 x=a에서의 테일러 급수의 수식은 다음과 같다. 

\[ f(x) = f(a) + \frac{f'(a)}{1!}(x-a) + \frac{ f^{(2)}(a)}{2!}(x-a)^2 + \cdots + \frac{f^{(n)}(a)}{n!}(x-a)^n + \cdots \]

\[ f(x) = \sum_{n=0}^{\infty} \frac{ f^{(n)}(a)}{n!}(x-a)^n \]

이때 $a=0$인 경우를 매클로린 급수(Maclaurin's series)라고 하며, 수식으로 표현하면 다음과 같다. 

\[ f(x) = f(0) + \frac{f'(0)}{1!}x + \frac{f''(0)x^2}{2!} + \frac{f^{(3)}(0)x^3}{3!} + \cdots + \frac{f^{(n)}(0)}{n!}x^n + \cdots \]

 

수식의 이해를 돕기 위해 $f(x) =sin(x)$ 함수를 매클로린 급수에 적용해보자. 우리는 함수 $f'(x)cos(x), \ f''(x)= sin(x), \ f^{(3)}(x) = cos(x), \ f^{(4)}(x) = \sin(x), ... $가 반복된다. $\sin(0)=1$이고, $\cos(0)=0$이기에 $f''(0) = 0$, $f^{(4)}(0)=0$이 될 것이므로 수식은 다음과 같이 간략하게 표현할 수 있다. 

 

\[ \sin(x) = \frac{x}{1!} - \frac{x^3}{3!} + \frac{x^5}{5!} - \cdots = \sum_{i=0}^{\infty} (-1)^i \frac{x^{2i+1}}{(2i+1)}! \]

여기서 $i$가 커지면 커질수록 $\sin(x)$ 값에 점점 근사되면서 수렴할 것이다. $i$가 어느 순간에 도달할 경우 더 $i$를 키우더라도 함수에 영향을 미치지 않을 수 있다. 분석을 수행하는 연구자가 적절하게 $i$를 설정해 불필요한 연산을 없애는 것이 중요하다. 

 

 

 

지금까지는 테일러 급수의 수식으로 어떠한 접근이 가능한지에 대해서 알아보았다. 이번에는 조금 더 깊게 들어가서 테일러 급수의 공식을 어떻게 유도하는지에 대해 알아보자. 우리는 미적분학의 기본정리로부터 테일러 급수를 유도할 수 있다. 먼저 미적분학의 기본정리는 다음과 같다. 

 

\[ \int_a^x f'(t)dt = f(x)-f(a) = \int_a^x 1 \cdot f'(t)dt = f(x) - f(a) \]

우리는 위 식의 좌변을 부분적분 하고자 한다. 좌변을 $u'=1$라 하고, 우변을 $v = f'(t)$라고 하면, 부분 적분은 다음과 같다. 

\[ u' = 1, \ v=f'(x), \ u = t + C, \ v' = f''(t) \]

라고 할 수 있다. 여기서 $C$는 적분 상수를 의미한다. $C$는 상수에 불과하기에 상수 $C$는 $-x$로 표기하기로 하자. 그렇다면 $u$와 $v'$를 다음과 같이 표기할 수 있다. 

\[ u = t - x, \ v' = f''(t) \]

부분적분에 대해서 잘 모를 수 있기 때문에 부분 적분의 수식을 먼저 전개한 후, 미적분학의 기본정리에 부분적분을 적용해보자. 부분적분은 다음과 같이 정의할 수 있다. 

\[ \begin{equation} \begin{split}  \int_a^b v(x)u'(x)dx & =  \begin{bmatrix} v(x)u(x) \end{bmatrix}^b_a - \int^b_a v'(x)u(x)dx & \\ & = v(b)u(b) - v(a)u(a) - \int_a^b v'(x)u(x)dx \\ \end{split} \end{equation} \]

위 수식을 똑같이 기본정리에 적용시키면 다음과 같은 수식으로 표현할 수 있다. 

\[ \begin{equation} \begin{split} & \Rightarrow \begin{bmatrix} (t-x)f'(t) \end{bmatrix}^x_a - \int^x_a (t-x)f''(t)dt \\ & \\ & \Rightarrow (x-a)f'(a) - \int^x_a (t-x)f''(t)dt \\ & \\ & \Rightarrow (x-a)f'(a) - \begin{Bmatrix} \begin{bmatrix} \frac{1}{2}(t-x)^2f''(x) \end{bmatrix}^x_a (t-x)^2f^{(3)}(t)dt \end{Bmatrix} \\ & \\ &  \Rightarrow (x-a)f'(a) + \frac{1}{2} (x-a)^2f''(a) + \frac{1}{2} \int^x_a (t-x)^2f^{(3)}(t)dt \end{split} \end{equation} \]

이와 같이 계속해서 전개할 수 있을 것이다. 위 패턴을 정리해 수식으로 표현하면 다음과 같다. 

\[ \Rightarrow \sum_{n=1}^{\infty} \frac{1}{n!}(x-a)^nf^{(n)}(a) \]

맨 위로 다시 올라가서 기본정리의 수식과 같이 표현하면 다음과 같다. 

\[ f(x) - f(a) = \sum_{n=1}^{\infty} \frac{1}{n!} (x-a)^n f^{(n)}(a) \] 

\[ f(x) = f(a) + \sum_{n=1}^{\infty} \frac{1}{n!} (x-a)^n f^{(n)}(a) \]

 

\[ \Rightarrow \sum_{n=0}^{\infty} \frac{1}{n!} (x-a)^n f^{(n)}(a) \]

 

이로써 테일러 급수를 유도해보았다.