인공지능 중에서 주로 데이터를 처리하는 머신러닝에 대해서 살펴보고자 한다. 머신러닝에 있어서 수학은 이론적인 배경과 알고리즘을 구성하는 기본적인 근간이다. 여기에는 수학의 다양한 분야가 함께 적용된다. 예를 들어 확률적 경사 하강법(SGD, Stochastic Gradient Descent)과 같은 방법을 이해하기 위해서는 다변수 미분법과, 확률론도 알고 있어야 한다. 지금 인공지능에 대한 관심을 보이고 있는 청소년을 비롯해 수학 전공을 충분히 듣지 못한 대학생들에게는 무척 어려운 일이다. 이 때문에 수학에 관심을 가졌다가도 ‘이게 무슨 말이야? 수식이네. 에잇..’하고 책을 덮거나 포기하는 경우가 많다. 이는 수학을 배웠더라도 오랫동안 전공책을 보지 않아서 대부분 잊어버린 모두(당연히 일부 수학교사도 포함)에게 해당된다.
그래서 앞으로 살펴볼 수학은 엄밀하게 정의를 하면서 살펴보기보다는 의미가 무엇인지 간단하게 다루고, 왜 이러한 개념이 필요하게 되었는지 초점을 맞추어 살펴볼 것이다. 만약 대학생이라면 (원하든, 원하지 않든) 수강해야 하는 과목에 대해 큰 틀을 잡을 수 있을 것이고, 고등학생이라면 지금 배우고 있는 과목들이 후에 어떤 분야와 연결이 되는지 좀 더 큰 틀에서 살펴볼 수 있을 것이다. 마치 카메라의 줌을 최대한 당겨놨다가 화각을 넓게 펴서 수학의 지식이나 개념들이 어떤 위치에서 자리를 잡고 있는지를 큰 시각으로 바라보는 경험을 할 수 있기를 기대해본다.
먼저 위의 도표를 살펴보면 크게 4개의 수학 분야가 데이터 과학과 머신러닝에서는 활용되고 있다는 것을 알 수 있다. 바로 선형대수학(Linear Algebra)과 다변수 미적분학(Multivariable Calculus), 확률론(Probability)과 통계(Statistics)이다. 약간의 차이점은 존재하는데 머신 러닝은 데이터의 처리에 초점이 있는 만큼 계산을 위한 수학인 선형대수학과 미적분학의 비중이 높다. 반면 데이터 과학은 주어진 데이터를 정제하고 특징을 추출하며 해석하는 확률과 통계에 비중이 높은 것을 확인할 수 있다.
그런데 선형대수학과 미적분학, 확률론 및 통계는 어떠한 과목들일까? 먼저 각 과목들에 대한 소개를 한 번 전체적으로 살펴보고, 이후 각 과목은 어떠한 내용이 있는지 살펴보자.
4. 머신러닝에서 주로 사용하는 수학 소개
1) 선형대수학 : 어떻게 조사 대상을 형식화할 것인가?
대수학은 수학적 대상에 대해서 덧셈이나 곱셈과 같은 연산을 정의하고, 그 연산에 따라 나타나는 여러 성질과 수학적 구조를 연구하는 학문이다. 예를 들어 정수라는 숫자들의 모임이 있다고 가정을 해보자. 그럼 여기에 더하기, 곱하기라는 연산을 도입할 수 있다. 이렇게 더하고 곱할 때 나타나는 성질, 그리고 그 부족한 성질을 포함한 더 큰 집합을 찾기도 하는 등 수학적인 구조와 연산의 성질 등을 탐구하는 학문이 대수학이다.
대수학 중 선형대수학은 ‘벡터’에 대해서 주로 다루는 학문이다. 벡터라고 하니 고등학교 기하 시간이나 과학 시간에 배웠던 ‘힘’과 같은 화살표 모양을 떠올릴 수 있을 것이다. 선형 대수학에서는 이러한 벡터들을 좀 더 확장시켜서 정의를 한다. 이런 벡터들로부터 유도되는 또 다른 벡터 중 하나인 ‘행렬’을 다루면서 이와 관련한 구조와 기능을 살펴보고, 벡터의 공간적인 성질도 살펴본다. 벡터 자체에 대한 기하적인 내용은 고등학교의 기하 교과에서 배우는 내적을 활용하여 다 유도를 해내기 때문에 그렇게 어렵지는 않다.
실제 우리가 살아가는 세계의 많은 현상들을 수학으로 가지고 올 때 대부분 벡터의 형태로 표현이 된다. 이러한 벡터를 가장 기본적으로 다루고 연산하는 방법이 선형대수학에 있기 때문에 대부분 머신러닝이나 데이터를 다루는 대부분의 학과에서 선형대수학은 필수적으로 배운다. 선형대수학은 대학교 1, 2학년에서 주로 배우고 있다.
2) 미적분학 : 알고리즘을 어떻게 이해하고, 훈련 과정을 최적화할 수 있을까?
고등학교에서 함수는 2가지 개념에 근거하여 다루고 있다. 1학년 때는 정의역, 공역, 치역이라는 용어와 함께 집합 사이의 ‘대응’의 측면에서 정의를 하고, 이를 그래프에 주로 나타내는 법을 배운다. 그런데 2학년 (2015 교육과정에서 수학2)에 함수의 극한, 미분으로 도입이 되면 ‘변화’의 측면으로 함수를 바라보기 시작한다. 예를 들어 x가 a로 한없이 가까워질 때 f(x)의 값은 어디로 가까이 가는지를 살펴보는 극한, 그리고 x가 a로 한없이 가까워질 때 x의 변화량과 y의 변화량의 비를 통해 순간 변화율(미분계수)을 살펴보기도 한다. 고등학교에 다루는 미분과 적분은 하나의 변수를 다루고 있다.
Graph of a function of two variables. https://towardsdatascience.com/the-roadmap-of-mathematics-for-
이후 대학에서 1학년 1학기부터 배우는 미적분(Calculus)에서는 변수의 개수를 2개 이상으로 확장한다. 이러한 변수가 2개 이상으로 확장이 되었을 때 미분을 정의하는 방법, 하나의 변수에 대해서만 변화율을 알아보는 편미분, 편미분을 활용해서 한 점에서 함수에 의해 어떤 쪽으로 변화하는지 방향을 알려주는 gradient 등을 살펴본다. 이러한 내용은 나중에 근을 구할 때 어떤 방향으로 접근하는 것이 가장 근을 빠르게 찾을 수 있는지를 알 수 있다. 이는 뒤에 최적화 이론 (Optimization)과 딥러닝의 경사 하강법, 회귀분석(Regression) 등에서 매우 유용하게 활용된다.
3) 확률론 : 통계 법칙을 어떻게 설명하지? 불확실성을 어떻게 양적으로 측정할까?
확률론은 고등학교 과정에서 ‘확률과 통계’라는 교과에서 배우고 있다. 이 교과에서는 기본적인 ‘세기(counting’ 방법인 순열과 조합 등을 다루고, 뒤이어 이를 활용한 수학적 확률 구하기, 그리고 확률 변수로 살펴보는 통계 등을 교육과정 내에서 배우고 있다.
이 교과에서 배우는 것은 고등학교에서 배우는 것과 비슷하다. 어떠한 확률변수 X에 대한 확률 분포가 주어져 있다고 할 때, 실제 시행했을 때 얼마가 예상되는지를 어림잡아주는 기댓값, 통계적 확률의 시행 횟수가 많아지면 수학적 확률로 수렴한다는 큰 수의 법칙 등은 고등학교 내용에서 연장이 된다. 이 외에도 엔트로피라는 개념을 다루는 information theory(정보 이론)도 등장을 하는데, 실제 측정한 값과 비교하여 예측값이 얼마나 많은 정보를 가지고 있는지를 측정할 수 있다. 실제 이러한 엔트로피는 머신러닝에서 의사 결정 나무, 딥러닝의 cost function 등에서 다양하게 활용하고 있다.
4) 통계론 : 수많은 데이터의 특징들을 어떻게 알 수 있을까?
데이터 과학에서 통계는 데이터의 특징들을 추출하고 많은 데이터의 중요한 속성만으로 간추리는 추상화 및 요약에서 가장 중요한 역할을 감당한다. 반면 머신 러닝에서는 실제적인 데이터의 작업보다는 모델의 설계에 중요한 역할을 하고 있다.
통계론에서 많이 다루는 것은 베이지언 통계(Bayesian Statistics)이다. 이 통계 방법을 통해 데이터로부터 얻은 정보 외에 사전 지식이나 신념 등과 같은 주관적인 정보도 이용하여 알지 못하는 모집단의 특성에 대한 불확실성을 분포로 나타낼 수 있다.
고등학교의 통계 단원 마지막에 모집단(전체)의 평균을 알 수 없을 때 표본(일부)의 평균을 활용하여 모집단의 평균을 예측(추정)하는 ‘통계적 추정’이라는 단원이 있다. 전체 모집단의 분포를 구하기 어려울 때 표본 집단의 통계량으로 모집단의 특성을 추정하는 모수 추정을 활용한다.
마지막으로 모델이 얼마나 적절하게 잘 만들어졌는지를 살펴보는 것도 통계의 역할이다. 머신러닝의 학습을 통해 어떠한 모델을 만들었는데, 이 모델이 현실 데이터와 얼마나 잘 맞는지를 통계를 활용해서 측정하고 판단한다. 지나치기 훈련 데이터에만 딱 맞고 실제로는 활용을 하기 어려운 과적합(Overfitting)을 피하는 방법 등의 방법에도 통계를 활용한다.
5) 그 외의 수학 과목들
대표적인 4개의 과목을 예시로 들었지만 당연히 많은 분야들이 존재한다. 미분을 활용하여 가장 빨리 해결책을 찾아보는 최적화 이론(Optimization), 수많은 데이터들을 간단하게 나타내는 모델링 방법인 회귀 분석 등도 있다. 또한 각 분야 내에서도 차원 축소법이나 데이터들의 분포 상태를 살펴보는 밀도 추정법 등과 같은 이론들이 활용되기도 한다. 이러한 이론들은 위의 주요 4개의 학문들을 기반으로 배울 수 있다.