The Roadmap of Mathematics for Machine Learning

Author: Tivadar Danka (The Palindrome) | Source: thepalindrome.org | Published: 2025-08-06


한 줄 요약

머신러닝은 세 기둥 — 선형대수, 미적분, 확률론 위에 서 있고, 역할 분담이 명확하다: 선형대수는 모델을 기술하고, 미적분은 모델을 데이터에 맞추고, 확률론은 불확실성 하에서 예측하는 이론적 틀을 제공해 전부를 묶는다.

핵심 주장/내용

  • 왜 수학인가: “머신러닝 알고리즘 뒤의 수학을 이해하는 것은 초능력이다.” 실제 문제를 다뤄봤다면 baseline 성능을 넘어서고 싶을 때 세부를 아는 것이 큰 차이를 만든다는 것을 경험했을 것이다. state-of-the-art의 경계를 밀고 싶을 때 특히 그렇다
    • 문제는 이 지식 대부분이 고급 수학 층 뒤에 숨어 있다는 것. SGD 같은 방법은 다변수 미적분과 확률론 위에 지어져 어려워 보인다. 하지만 적절한 기초가 있으면 대부분의 아이디어가 꽤 자연스럽게 보인다
    • 이 글의 목표는 모든 것을 커버하는 것이 아니라 방향을 잡는 것. “한 번에 읽지 말고 학습 중 참조점으로 쓰라 — 소개된 개념 하나를 깊이 파고, 로드맵을 확인하고, 넘어가라. 나는 길을 보여주지만 걷는 것은 당신이어야 한다”

기둥 1 — 선형대수: 모델을 기술한다

신경망 같은 예측 모델은 본질적으로 미적분의 도구로 학습되는 함수지만, 행렬 곱 같은 선형대수 개념으로 기술된다. 실제 문제를 다루는 ML 엔지니어에게는 선형대수가 가장 중요한 주제다.

학습 순서:

  1. 벡터와 벡터 공간 — 가장 기초
  2. Normed space — 거리·크기의 개념
  3. Basis와 orthogonal/orthonormal basis
  4. 선형 변환 — 함수를 행렬로 보는 관점
  5. 행렬과 그 연산
  6. 행렬식(determinant)
  7. 고유값·고유벡터와 행렬 분해
  • 고유값/고유벡터: 행렬 에 대해 를 만족하는 벡터 가 있으면 가 고유값. 즉 가 나타내는 선형 변환이 그 벡터 에 대해서는 단순히 배 스케일링이다
  • 왜 행렬 분해인가 — 계산 관점에서 가장 좋은 행렬은 대각 행렬이다. 선형 변환이 대각 행렬을 가지면 임의 벡터에 대한 값을 계산하는 것이 자명해진다. 대부분의 특수 형태는 행렬 를 여러 행렬의 곱으로 분해하되 그중 최소 하나가 대각이기를 목표한다
  • SVD (Singular Value Decomposition) — 가장 유명한 것. 특수 행렬 , (unitary matrix)와 대각 행렬 가 있어 가 성립한다. 가장 단순하고 잘 알려진 차원 축소 방법인 PCA를 수행하는 데도 쓰인다

기둥 2 — 미적분: 모델을 데이터에 맞춘다

본질적으로 신경망은 미분 가능한 함수이므로 미적분이 학습의 근본 도구다.

  • 미분 — 도함수는 극한으로 정의되고, 극한에서 그것은 점 에서의 접선 기울기다
  • 최적화에의 사용 — 국소 최대/최소에서 도함수가 0이다 (역은 성립하지 않는다 — 의 을 보라). 도함수가 0인 점을 critical point라 하고, 2차 도함수로 최소인지 최대인지 판정한다
  • chain rule이 가장 중요한 규칙 — 합성 함수의 도함수를 계산하는 법을 알려준다. 신경망이 궁극적으로 많은 함수의 합성이므로 이것이 전부의 기초다
  • 적분 — 종종 미분의 역으로 불린다. 부호 있는 곡선 아래 면적으로도 생각할 수 있다. 기댓값 개념을 이해하는 데 역할을 하고, 엔트로피와 KL divergence 같은 양이 적분으로 정의된다

기둥 2.5 — 다변수 미적분: 선형대수와 미적분이 만나는 곳

여기가 신경망 학습의 주 도구인 gradient descent의 기초를 놓는 곳이다. 수학적으로 신경망은 그저 다변수 함수다 (변수 수가 수백만일 수 있을 뿐).

  • gradient — 항상 가장 큰 증가 방향을 가리킨다. 그 방향으로 작은 걸음을 내디디면 고를 수 있었던 다른 모든 방향 중 고도 상승이 최대다
  • gradient descent 알고리즘:
    1. 현재 있는 점 에서 gradient 계산
    2. gradient의 반대 방향으로 작은 걸음을 내디뎌 에 도달 (걸음 크기가 learning rate)
    3. 수렴할 때까지 반복
    • 이 기본 알고리즘에는 여러 결함이 있어 수년간 개선되었다. 현대 optimizer는 adaptive step size, momentum 등을 쓴다
  • total derivative — 벡터-벡터 함수 의 gradient는 번째 행이 번째 성분의 gradient인 행렬로 정의된다
  • 다변수 chain rule — 예를 들어 익숙한 선형 레이어 는 와 의 합성이다. 이것 없이는 신경망의 gradient를 계산할 쉬운 방법이 없다 — 신경망이 궁극적으로 많은 함수의 합성이기 때문
  • 고차 도함수 — 주어진 점이 국소 최소인지 최대인지(또는 둘 다 아닌지) 결정하는 데 역할. 신경망 학습은 학습 데이터에 대한 파라미터의 손실 함수를 최소화하는 것과 동등하다 — 최소가 달성되는 최적 파라미터 구성 를 찾는 일

기둥 3 — 확률론: 불확실성 하의 예측을 묶는다

확률이 무엇을 나타내는가부터. 동전을 던져 앞면이 나올 확률이 50%인데, 10번 반복하면 앞면이 몇 번 나오는가? 5라고 답했다면 틀렸다. 확률 0.5는 두 번마다 한 번씩 앞면이 나옴을 보장하지 않는다. 뜻하는 것은 실험을 아주 큰 번 반복하면 앞면 수가 에 매우 가까워진다는 것이다.

  • 확률의 정의 — 사건(event space 의 부분집합인 집합으로 표현)에 0과 1 사이 수치를 부여하는 함수. 두 정의 속성: ① 전체 event space의 확률이 1 ② 서로소 사건의 확률은 더할 수 있다. 집합 연산이 사건의 언어로 번역된다 — 는 A 또는 B가 일어남, 는 둘 다 일어남
  • 조건부 확률 — 가장 중요한 개념 중 하나로, 관측의 맥락에서 확률을 연구한다. 정의상 두 사건이 모두 일어날 확률과 관측된 사건의 확률의 비. 예: “이메일에 ‘deal’이라는 단어가 있을 때 스팸일 확률은?” — ‘deal’ 같은 키워드를 관측하는 것이 스팸일 확률을 높인다
  • Bayes’ theorem — 실무에서 만 알고 를 추정하고 싶을 때 쓴다. 영어로 말하면 likelihood의 관점에서 prior를 갱신하는 방법
  • 기댓값 — 여섯 면 주사위를 던져 1이나 2가 나오면 300을 따고 아니면 200을 잃는 게임. 1/3 확률로 따고 2/3 확률로 잃으므로 기댓값이 음수 → 이 게임은 하면 안 된다. 기댓값은 장기적으로 라운드당 받게 될 평균 금액
  • 큰 수의 법칙 (LLN) — 사람들이 자주 잘못 귀속시킨다. 연패 중인 도박꾼이 “큰 수의 법칙 때문에 곧 이겨야 한다”고 믿는 것은 완전히 틀렸다
    • 강한 LLN: 같은 실험의 독립 반복 에 대해 확률 1로 장기적 결과의 평균이 기댓값과 같다
    • 해석: 무작위 사건이 충분히 반복되면 개별 결과는 중요하지 않을 수 있다. 카지노에서 기댓값이 음수인 게임을 한다면(다 그렇다) 가끔 이기는 것은 상관없다 — LLN은 당신이 돈을 잃을 것임을 함의한다
    • LLN이 stochastic gradient descent에 필수적이다
  • 정보 이론 — 1과 1024 사이 수를 맞히는 게임. 영리하게 하면 이진 탐색으로 번 질문이면 된다. 그런데 내가 균등 분포를 쓰지 않았다면? 예를 들어 Poisson 분포를 썼다면 분포가 특정 지점 주변에 집중되는 것을 알기 때문에 질문이 더 적게 필요할 것이다
    • 극단적으로 분포가 한 숫자에 집중되어 있으면 0번 질문이면 된다. 일반적으로 필요한 질문 수는 분포가 담고 있는 정보에 달렸다. 균등 분포가 정보를 가장 적게 담고, 특이(singular) 분포는 순수 정보다
    • Entropy가 이것을 정량화하는 측도다 (로그의 밑은 보통 2, , 또는 10인데 별로 중요하지 않다)
    • Cross-entropy loss — 분류 모델에서 만나는 것. 가 ground truth(한 클래스에 집중된 분포)이고 hatted 버전이 클래스 예측. 예측이 ground truth 대비 얼마나 많은 “정보”를 갖는지 측정하고, 예측이 일치하면 0이 된다
    • Kullback-Leibler divergence — 두 확률 분포 , 에 대해. 본질적으로 cross-entropy 빼기 entropy로, 두 분포의 차이를 정량화하는 것으로 생각할 수 있다. GAN 학습 등에 유용 — KL divergence를 최소화하면 두 분포가 비슷해짐이 보장된다

주요 수치 / 사실

  • 세 기둥의 역할 분담:
기둥역할
선형대수모델을 기술한다 (describe)
미적분모델을 데이터에 맞춘다 (fit)
확률론불확실성 하에서 예측하는 이론적 틀을 제공해 전부를 묶는다
  • 추천 학습 자료:
  • 의존 관계 요약: 선형대수(벡터·행렬·SVD) + 단변수 미적분(도함수·chain rule) → 다변수 미적분(gradient, total derivative, 다변수 chain rule) → gradient descent ← LLN → stochastic gradient descent. 그리고 적분 → 기댓값 → entropy / cross-entropy / KL divergence → 손실 함수

관련 위키


Source: 원문 보기