courses
일부 함수는 직접 다루기엔 너무 복잡합니다. 그래서 수학자들은 다항식으로 그 함수를 흉내 내는 방법을 고안했습니다.
이것이 맥클로린 급수의 기본 아이디어입니다. 함수의 0에서의 도함수를 이용해 만들어진 다항식 항들의 무한 합으로 함수를 나타냅니다. 이렇게 하면 원래 함수가 너무 복잡하더라도 실제로 계산 가능한 형태를 얻을 수 있습니다.
맥클로린 급수는 테일러 급수의 특수한 경우로, 중심을 0에 두는 것이라고 볼 수 있습니다. 이 제약 덕분에 유도는 더 간단해지고 적용은 더 쉬워집니다.
이 글에서는 맥클로린 급수의 공식을 소개하고, 가장 흔한 전개를 살펴본 뒤, 이를 해석하고 활용하는 방법을 설명합니다.
맥클로린 급수란?
맥클로린 급수는 함수의 0에서의 도함수들로 구성된 항들의 무한 합으로 함수를 표현합니다.
각 항은 다항식입니다. 즉, 도함수 값으로 스케일된 x의 거듭제곱입니다. 이러한 항을 충분히 결합하면, 적어도 0 근방에서는 원래 함수와 똑같이 거동하는 다항식을 얻게 됩니다.
복잡한 함수를 다항식으로 근사하는 것이 맥클로린 급수의 핵심 아이디어입니다. 다항식은 계산, 미분, 적분이 모두 쉽지만 대부분의 다른 함수는 그렇지 않습니다.
맥클로린 급수 vs. 테일러 급수
테일러 급수는 임의의 점 a를 중심으로 한 무한 다항식으로 함수를 근사합니다. 점을 선택하고 그 점을 중심으로 급수를 구성하면, 그 점 근방에서 잘 작동하는 다항식을 얻습니다.
맥클로린 급수는 a = 0인 테일러 급수일 뿐입니다. 그게 유일한 차이입니다.
중심을 0으로 잡으면 다항식 항에서 (x - a)가 사라지고 x의 순수한 거듭제곱만 남아 수학이 간단해집니다. 미적분, 물리, 머신러닝에서 다루게 되는 대부분의 표준 함수는 그 결과로 깔끔하고 널리 알려진 맥클로린 전개를 갖습니다.

테일러 급수와 맥클로린 급수 비교
정리하자면, 0이 아닌 특정 점 근방에서 함수를 근사해야 한다면 테일러 급수를, 0이 시작점인 경우에는 맥클로린 급수를 사용하세요. 실제로 그런 경우가 자주 있습니다.
맥클로린 급수 공식
맥클로린 급수 공식은 임의의 함수 f(x)를 다음과 같은 무한 합으로 표현합니다:

맥클로린 급수 공식
이를 전개하면 다음과 같습니다:

맥클로린 급수 공식의 전개형
각 항은 세 부분으로 이루어집니다:
-
f⁽ⁿ⁾(0)-f의 n차 도함수를 0에서 평가한 값입니다. 이 값은 그 지점에서 함수가 어떻게 거동하는지 보여줍니다 -
n!-n의 계승으로,n이 커져도 급수가 안정적으로 유지되도록 각 항을 줄여 줍니다 -
xⁿ-x의 n제곱으로, 각 항이 0에서 얼마나 멀리까지 영향을 미치는지를 결정합니다
첫 항 f(0)은 다항식을 함수의 0에서의 값에 맞춥니다. 이후의 각 항은 보정값을 더합니다. 기울기, 굴곡(곡률) 등등을 조정해 다항식이 원래 함수에 필요한 만큼 가깝게 일치하도록 합니다.
요약하면, 항을 더 많이 포함할수록 근사는 더 좋아집니다.
맥클로린 급수가 작동하는 방식
맥클로린 급수를 만드는 과정은 하나의 반복된 동작으로 귀결됩니다. 0에서의 도함수들을 평가하고, 그 결과를 다항식으로 쌓는 것입니다.
단계별로는 다음과 같습니다.
- 함수를 0에서 평가:
x = 0을f(x)에 대입합니다. 이것이 첫 항이 됩니다. 다항식의 시작 값을 정하는 상수항입니다 - 도함수 계산:
f'(x),f''(x),f'''(x)등을 계산합니다. 각 단계마다 결과를 0에서 평가합니다. 각 값은 함수의 거동, 즉 기울기, 곡률, 곡률 변화 속도 등에 대해 알려줍니다 - 다항식 구성: 각 도함수 값을 해당 계승으로 나누고, 대응하는
x의 거듭제곱을 곱합니다
이제 모든 항을 합합니다:

맥클로린 급수의 작동 방식
각 항은 근사를 개선합니다. 첫 항은 함수값을 맞추고, 두 번째는 기울기를, 세 번째는 곡률을 맞춥니다. 이런 식으로 계속됩니다.
필요한 정확도에 도달하면 이 과정을 멈추면 됩니다. 더 높은 정밀도가 필요하다면 계속 더하면 됩니다.
자주 쓰이는 맥클로린 급수 전개
너무 자주 등장해서 외워둘 만한 함수들이 몇 가지 있습니다. 가장 자주 보게 될 네 가지를 소개합니다.
eˣ
지수 함수는 가장 단순한 경우입니다. eˣ의 모든 도함수는 여전히 eˣ이므로, 0에서 평가한 모든 도함수 값은 1입니다.

ex 전개
계수는 단순히 1/n!입니다. 이 급수는 모든 x에 대해 수렴하므로 실무에서 가장 유용한 전개 중 하나입니다.
sin(x)
사인 함수는 x의 홀수 차수 항만을 갖고, 부호는 양과 음이 번갈아 나타납니다.

sin(x) 전개
sin(x)의 짝수 차 도함수를 0에서 평가하면 모두 0이므로 해당 항이 사라집니다. 남는 것은 홀수 차수, 계승 분모, 교대 부호입니다. eˣ와 마찬가지로 이 급수도 모든 x에서 수렴합니다.
cos(x)
코사인 전개는 사인의 거울상입니다. x의 짝수 차수 항만 나타나며, 부호 패턴은 동일하게 번갈아 듭니다.

cos(x) 전개
이는 cos(x)가 sin(x)의 도함수이기 때문에 자연스럽습니다. sin(x) 전개를 항별로 미분하면 이 급수를 얻을 수 있습니다. 홀수 차수 항이 사라지는 이유도 사인에서 짝수 차수 항이 사라지는 것과 같습니다. 0에서의 도함수가 그것들을 소거합니다. 이 급수도 모든 x에서 수렴합니다.
1 / (1 − x)
네 가지 중 패턴이 가장 단순합니다. 모든 계수가 1이고, 계승도 교대 부호도 없습니다.

1/(1-x) 전개
기하급수(등비급수)이기 때문에 패턴이 매우 깔끔해 보입니다. 하지만 위의 세 함수와 달리, 이 급수는 |x| < 1일 때만 수렴합니다. x를 그 범위 밖으로 두면 항들이 0으로 작아지지 않고 오히려 발산합니다.
마지막으로, 시각적 학습자를 위해 네 가지 급수 전개를 여러 항까지 비교한 차트를 보여드립니다:

자주 쓰이는 맥클로린 급수
맥클로린 급수로 함수 근사하기
맥클로린 급수는 유용하려면 모든 무한 항이 꼭 필요하지는 않습니다. 실제로는 부분합, 즉 처음 몇 개의 항만 취해 근사로 사용합니다.
항을 더 많이 포함할수록 부분합은 원래 함수를 더 가깝게 추적합니다. 두 항에서 자르면 0 근방에서 대략 맞습니다. 몇 항을 더하면 더 멀리까지 근사가 유지됩니다. 새로운 항 하나하나가 이전 항들이 놓친 부분을 보정합니다.
구체적인 예로 sin(x)를 살펴보겠습니다. 전체 급수는 다음과 같습니다:

sin(x) 근사 공식
sin(0.3)를 부분합으로 근사해 보고, 각 근사가 정확한 값과 어떻게 비교되는지 확인해 봅시다.
-
1항:
0.3- 오차 약 0.0045 -
2항:
0.3 - (0.3³/6)=0.2955- 오차 약 0.0000196 -
3항:
(0.3⁵/120)추가 =0.29552- 오차 약 0.0000000239
세 항만으로도 소수점 여섯째 자리 수준의 정확도를 얻습니다. 대부분의 경우 이 정도면 충분합니다.
같은 아이디어를 Python으로 보면 다음과 같습니다:
import numpy as np
from math import factorial
def maclaurin_sin(x, n_terms):
return sum(((-1)**n * x**(2*n+1)) / factorial(2*n+1) for n in range(n_terms))
vec_sin = np.vectorize(maclaurin_sin)
x_val = 0.3
print(f"Approximating sin({x_val}):")
print(f" Exact value : {np.sin(x_val):.10f}")
for n in [1, 2, 3, 4]:
approx = maclaurin_sin(x_val, n)
error = abs(np.sin(x_val) - approx)
print(f" {n} term(s) : {approx:.10f} | error: {error:.2e}"
이 코드를 실행하면 x = 0.3에서의 부분합 값과 오차가 출력됩니다:

sin(x) 맥클로린 근사의 Python 예시
이를 시각적으로 확인할 수도 있습니다:

sin(x) 맥클로린 근사의 차트
sin(x) 함수를 각 근사가 얼마나 잘 따라가는지 확인할 수 있습니다.
맥클로린 급수의 수렴
맥클로린 급수가 항상 모든 x에 대해 작동하는 것은 아닙니다. 어떤 함수들은 0 주변의 특정 구간에서만 급수가 올바른 값에 수렴합니다. 그 범위를 벗어나면 부분합이 0으로 수렴하지 않고 발산합니다.
이 범위를 수렴 반경이라고 합니다. 0으로부터 어느 정도까지 급수가 신뢰할 수 있는지 알려줍니다.
거동은 함수에 따라 다릅니다:
-
eˣ,sin(x),cos(x)- 모든x에 대해 수렴합니다. 어떤 수를 대입해도 급수가 올바른 답을 줍니다 -
1/(1-x)-|x| < 1일 때만 수렴합니다.x = 1에서 함수 자체가 발산하며, 급수도 그 점 근방에서 수렴하지 못하는 모습으로 이를 반영합니다
수렴 반경을 0을 중심으로 한 신뢰의 원이라고 생각해 보세요. 그 안에서만 급수가 유효한 근사입니다.
항상 수렴 반경을 계산할 필요는 없습니다. 표준 함수들의 경우 이미 알려져 있습니다. 하지만 덜 익숙한 함수를 다룰 때는 맥클로린 근사에 의존하기 전에 수렴을 확인하는 습관이 좋습니다.
맥클로린 급수가 중요한 이유
맥클로린 급수는 수학, 물리, 머신러닝 전반의 실제 계산 작업에 널리 등장합니다.
수치 해석
컴퓨터는 대부분의 함수를 기호적으로 계산하지 못하고, 다항식을 계산합니다. 라이브러리가 sin(x)나 eˣ를 계산할 때는 종종 해당 함수의 맥클로린 또는 테일러 전개에서 유도된 다항식 근사를 사용합니다. 급수는 하드웨어가 실제로 빠르게, 무한 반복 없이 계산할 수 있는 형태를 제공합니다.
물리학에서의 근사
물리학에서는 정확한 해가 너무 복잡할 때마다 맥클로린 급수를 사용합니다. 가장 흔한 예는 소각(작은 각) 근사입니다. θ가 작을 때 sin(θ) ≈ θ입니다. 이는 sin(x) 맥클로린 급수의 첫 항일 뿐입니다. 이 근사는 진자 방정식, 광학 계산, 파동 모델을 단순화하여, 비선형 문제를 실제로 풀 수 있는 선형 문제로 바꿔 줍니다.
머신러닝과 최적화
머신러닝에서 테일러와 맥클로린 전개는 우리가 매일 접하는 많은 수학의 배경에 있습니다. 경사하강법은 손실함수의 1차 근사를 사용해 이동 방향을 결정합니다. 뉴턴 방법 같은 2차 방법은 곡률 항을 사용합니다. 연구자들이 모델의 손실 곡면이 국소적으로 어떻게 거동하는지 분석할 때, 종종 한 점 주변의 테일러 전개로 사고합니다.
또한 sigmoid와 tanh 같은 활성화 함수를 이론적으로 분석할 때도 맥클로린 급수로 근사합니다. 다항식으로 전개하면 그래디언트와 포화 거동을 더 쉽게 파악할 수 있습니다.
결론
맥클로린 급수는 한 가지를 합니다. 0을 중심으로 한 다항식으로 함수를 근사합니다. 단순하지만 적용 범위가 매우 넓은 아이디어입니다.
수치 계산부터 물리학, 머신러닝까지 패턴은 같습니다. 복잡한 함수를 충분히 가까운 다항식으로 바꾸고, 실제 문제 해결에 집중하는 것입니다. 경사하강법의 수학, 소각 근사, 표준 라이브러리 함수의 내부 구현은 모두 이 핵심 아이디어로 귀결됩니다.
eˣ, sin(x), cos(x), 1/(1-x)의 전개는 기억해 둘 가치가 있습니다. 연구 논문을 읽을 때 특히, 눈에 띄자마자 알아보면 실제로 시간을 절약할 수 있을 만큼 자주 등장합니다.
맥클로린 급수 FAQ
맥클로린 급수를 쉽게 설명하면 무엇인가요?
맥클로린 급수는 함수의 0에서의 도함수로 구성된 다항식 항들의 무한 합으로 함수를 나타냅니다. 항을 더 많이 포함할수록 다항식은 원래 함수에 더 가까워집니다. 복잡한 대상을 컴퓨터나 사람이 실제로 계산할 수 있는 것으로 바꿔치는 방법입니다.
맥클로린 급수와 테일러 급수의 차이는 무엇인가요?
테일러 급수는 임의의 점 a를 중심으로 한 다항식으로 함수를 근사합니다. 맥클로린 급수는 그 점이 0으로 고정된 테일러 급수입니다.
맥클로린 급수는 실무에서 어디에 사용되나요?
맥클로린 급수는 수치 계산, 물리학, 머신러닝에서 쓰입니다. 프로그래밍 라이브러리는 sin(x)와 eˣ 같은 함수를 효율적으로 계산하기 위해 다항식 근사를 사용합니다. 머신러닝에서는 경사하강법과 뉴턴 방법 같은 최적화 기법 뒤에 테일러 전개가 자리합니다.
맥클로린 급수에서 수렴 반경은 무엇을 의미하나요?
수렴 반경은 맥클로린 급수가 0에서 얼마나 떨어진 곳까지 정확하게 유지되는지를 정의합니다. 그 범위 안에서는 부분합이 정확한 함수값에 가까워집니다. 밖에서는 항이 작아지지 않고 커지며 근사가 무너집니다. eˣ와 sin(x) 같은 함수는 어디서나 수렴하지만, 1/(1-x)처럼 제한된 범위에서만 수렴하는 함수도 있습니다.
좋은 맥클로린 근사를 위해서는 몇 항이 필요하나요?
필요한 정밀도와 함수를 0에서 얼마나 떨어진 곳에서 평가하느냐에 달려 있습니다. 0에 가까우면 몇 개 항만으로도 작은 오차 범위 안에 들어옵니다. 더 멀리서라면 정확도를 유지하려면 더 많은 항이 필요합니다. 수렴 반경 밖이라면 항을 아무리 더해도 올바른 결과를 얻지 못합니다.