2024 가을 오마카세: 이원수와 자동미분
소개
손님 여러분 안녕하세요. 처서 매직이 오지 않아 실망한 여러분을 위해 특별한 오마카세 메뉴를 준비했습니다. 이번 코스에서는 ‘이원수와 자동미분’이라는 주제로 다양한 글을 소개해드릴 예정입니다. 마치 오마카세 요리를 즐기듯, 순서대로 하나씩 맛보며 수학적 사고의 깊이를 더해보세요.
메뉴
이원수
먼저, 이번 오마카세의 스타터로 이원수에 대해서 알아보겠습니다. $0$은 아니지만 제곱해서 $0$이되는 어떤 수를 $\epsilon$이라 합시다.
$$ \epsilon \ne 0, \qquad \epsilon^{2} = 0 $$
직관적으로 이는 말이 안된다고 생각하실지 모르겠지만, 제곱해서 $-1$이 되는 수 또한 직관과는 멀리 떨어진 수라는 걸 생각하시면 받아들이기 쉽지 않을까 합니다. 이제 두 실수 $a, b \in \mathbb{R}$에 대해서 다음과 같은 꼴을 이원수라고 하겠습니다.
$$ a + b\epsilon $$
모양만 봤을 때는 마치 복소수 $x + yi$와 비슷한 꼴이죠? 이원수의 의미와 구체적인 성질에 대해서는 다음의 글을 참고해주세요.
이원수 위에서 정의되는 함수
어떤 미분가능한 함수 $f : \mathbb{R} \to \mathbb{R}$이 주어졌다고 합시다. 이 함수를 이원수 위에서 정의할 수 있을까요? 주어진 $f$에 대해서 다음과 같은 함수 $F$를 생각하여 자연스럽게 확장시킬 수 있습니다.
$$ F(a+b\epsilon) = f(a) + f^{\prime}(a)b\epsilon $$
이렇게 정의하면 아주 재미난 성질을 발견할 수 있습니다. 자세한 내용은 다음의 글을 참고해주세요.
자동미분
자동미분이라는 말을 들어보셨나요? 자동미분automatic differentiation이란 컴퓨터에서 미분계수를 계산하는 방법 중 하나로, 이미 도함수가 알려진 함수들의 덧셈, 곱셈, 합성으로 이루어진 함수에 대해서 적용할 수 있습니다. 어려운 말 같지만, 사실 본질은 연쇄법칙입니다.
자동미분과 이원수
이원수에 대해서 설명하다가 뜬금없이 미분 얘기가 나와서 당황하셨나요? 사실 이원수와 자동미분은 깊은 관련이 있습니다. 이원수를 이용하면 자동미분을 쉽게 구현할 수 있습니다. 굉장히 순수수학적인 정의를 갖는 이원수와 컴퓨터에서 미분을 구현하기 위한 방법인 자동미분이 서로 연관되어있다는 것이 참 재미있는 점입니다(게다가 이렇게 구한 미분계수는 딥러닝에 쓰입니다!).
줄리아에서 이원수로 자동미분 구현하기
마지막 디저트로는 앞서 소개한 개념들을 바탕으로 실제 자동미분을 구현하는 내용을 준비했습니다. 자동미분을 구현하는 과정은 생각보다 간단하며, 여기에서는 줄리아를 사용합니다. 이 과정을 통해 이론이 어떻게 실질적인 코드로 변환되는지 확인해보세요.