머신러닝을 위한 ‘확률론’

조회수: -

Published:

딥러닝 모델은 관찰된 데이터 $X$가 주어졌을 때, 최적의 파라미터 $\theta$를 찾기 위해 Posterior $P(\theta \mid X)$를 최대화하려고 합니다. 베이즈 정리에 따르면, Posterior는 Likelihood $P(X \mid \theta)$와 Prior $P(\theta)$의 곱에 비례하고 딥러닝에서는 보통 Prior를 균일 분포로 가정해 Posterior를 Likelihood에 비례한다고 간주합니다. 따라서 모델은 $P(X \mid \theta)$를 최대화하는 방향으로 학습합니다. 실제 학습 과정에서는 Likelihood의 Negative Log를 Loss 함수로 사용하며, 이를 최소화하는 방향으로 학습이 진행됩니다.

머신러닝은 데이터를 바탕으로 패턴을 학습하고 예측을 수행하는 기술로, 데이터에 숨겨진 구조를 이해하고 복잡한 문제를 해결하는 데 중점을 둔다. 이러한 과정에서 확률론은 머신러닝의 기반을 이루며, 데이터의 특성과 수학적 원리를 깊이 이해하는 데 핵심적인 역할을 한다. 데이터를 효과적으로 다루고 활용하려면 확률 통계에 대한 이해가 필수적이다.

데이터는 항상 불완전하고, 종종 노이즈가 포함되어 있다. 확률은 이러한 불완전성과 불확실성을 수학적으로 모델링하고 관리할 수 있게 한다. 예를 들어, 머신러닝 모델이 예측을 수행할 때, 그 결과가 얼마나 신뢰할 만한지 또는 얼마나 불확실한지를 표현하려면 확률적 개념이 필수적이다. 또한, AI/ML 알고리즘의 많은 부분이 확률적 사고를 바탕으로 설계되어 있기 때문에 모델의 작동 원리를 이해하기 위해서도 확률 통계를 이해하는 것이 필요하다.

더 나아가, AI/ML 분야에서는 데이터를 효율적으로 압축하거나 정보량을 계산하는 데 사용되는 정보이론도 중요하다. 딥러닝에서 흔히 사용하는 EntropyKL Divergence(Kullback-Leibler Divergence)는 학습 과정과 데이터 분포를 이해하기 위해 중요한 개념이다. 이렇듯 확률론은 데이터의 불확실성을 처리하고, 모델의 성능을 평가하며, 더 나아가 효율적인 의사결정을 내리는 데까지 널리 활용된다.

이번 글에서는 AI/ML 직군에서 꼭 알아야 할 확률론의 주요 개념들을 살펴보고, 이를 어떻게 실제로 활용할 수 있는지 구체적인 예를 들어 설명한다. AI/ML을 공부하는 분들뿐만 아니라 실무에서 일하고 있는 분들에게도 실질적인 도움을 줄 수 있는 내용을 담는다.

확률 통계(Probability and Statistics)는 수학의 한 분야로, 불확실한 현상을 이해하고 데이터를 분석하는 데 사용되는 이론과 방법들을 포괄하는 개념이다. AI/ML 직군에서는 데이터가 가지고 있는 불확실성을 모델링하고, 의사 결정을 내리는 데 있어 이 두 가지 개념이 핵심 역할을 한다.


1. 확률

1.1. 기본 개념

확률(Probability)은 어떤 사건이 일어날 가능성을 수학적으로 표현한 개념이다. 예를 들어, 공정한 동전을 던질 때 앞면이 나올 확률은 0.5로 표현된다. 머신러닝에서 확률은 데이터의 특성을 이해하거나 모델의 출력값을 해석할 때 중요한 개념으로 사용된다. 예를 들어, 분류 문제에서 모델이 특정 클래스에 속할 확률을 예측하거나, 시계열 데이터에서 미래 값이 특정 범위에 속할 확률을 추정할 수 있다.

1.2. 조건부 확률

조건부 확률(Conditional Probability)은 한 사건이 이미 발생했을 때, 다른 사건이 발생할 가능성을 계산하는 개념이다. 예를 들어, “오늘 비가 오는 날일 때, 우산을 들고 있는 사람의 비율”을 알고 싶다면 조건부 확률을 사용해 계산할 수 있다. 수식으로는 다음과 같이 표현된다.

\[P(B|A) = \frac{P(A \cap B)}{P(A)}\]
  • $P(BA)$: 사건 $A$가 일어난 상황에서 사건 $B$가 일어날 확률
  • $P(A \cap B)$: 사건 $A$와 $B$가 동시에 일어날 확률
  • $P(A)$: 사건 $A$가 일어날 확률

예를 들어, 의료 검사를 생각해 본다. 검사가 양성인 경우 환자가 실제로 질병을 가지고 있을 확률을 계산할 때, 조건부 확률을 사용할 수 있다. 만약 검사가 양성일 확률 $(P(\text{양성}))$과, 양성 판정이 나온 경우 질병을 가지고 있을 확률 $(P(\text{양성} \cap \text{질병}))$을 알고 있다면, 조건부 확률 공식을 사용해 양성일 때 질병을 가지고 있을 확률 $P(\text{질병} \mid \text{양성})$을 계산할 수 있다.

1.3. 독립성

독립성(Independence)은 두 사건이 서로 영향을 미치지 않을 때 성립하는 관계이다. 즉, 한 사건($A$)의 발생 여부가 다른 사건($B$)의 확률에 영향을 주지 않는 경우를 말한다. 이를 수식으로 표현하면 아래와 같다.

\[P(A \cap B) = P(A) \cdot P(B)\]

독립성이 성립하면 조건부 확률도 간단하게 계산할 수 있다.

\[P(B|A) = P(B)\]

독립성을 가정하면 계산이 간단해지기 때문에, 머신러닝에서 독립성 가정은 많은 알고리즘(예: 나이브 베이즈 분류기)에서 효율성을 높이는 데 활용된다.


2. 베이즈 정리

2.1. 베이즈 정리 공식

베이즈 정리(Bayes’ Theorem)는 어떤 사건에 대한 사전 확률(prior probability)과 새로운 증거(evidence)를 기반으로 사건의 사후 확률(posterior probability)을 계산하는 통계적 방법이다.

\[P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)}\]
  • $P(AB)$: 사건 $B$가 일어난 상황에서 사건 $A$가 일어날 확률(Posterior)
  • $P(BA)$: 사건 $A$가 일어났을 때 사건 $B$가 일어날 확률(Likelihood)
  • $P(A)$: 사건 $A$가 일어날 사전 확률 (Prior)
  • $P(B)$: 사건 $B$가 일어날 전체 확률

2.1.1. 조건부 확률과 베이즈 정리 예시

다음은 질병 검사를 예로 들어 베이즈 정리를 활용하는 방법을 보여준다. 검사가 양성일 때, 실제로 병이 있을 확률 $P(\text{병} \mid \text{양성})$은 얼마일까?

  • 병이 있을 확률: $P(\text{병}) = 0.01$ (1%)
  • 병이 없을 확률: $P(\text{비병}) = 0.99$ (99%)
  • 병이 있을 때 양성 판정을 받을 확률: $P(\text{양성} \mid \text{병}) = 0.95$
  • 병이 없을 때 양성 판정을 받을 확률: $P(\text{양성} \mid \text{비병}) = 0.05$

풀이 과정 전체 확률 $P(\text{양성})$ 계산

$P(\text{양성}) = P(\text{양성} \mid \text{병})P(\text{병}) + P(\text{양성} \mid \text{비병})P(\text{비병})$ $P(\text{양성}) = (0.95)(0.01) + (0.05)(0.99) = 0.059$

베이즈 정리 적용 이제 베이즈 정리를 사용해 $P(\text{병} \mid \text{양성})$을 계산해 본다.

$P(\text{병} \mid \text{양성}) = \frac{P(\text{양성} \mid \text{병})P(\text{병})}{P(\text{양성})} = \frac{(0.95)(0.01)}{0.059} \approx 0.161$

검사가 양성일 때 실제로 병이 있을 확률은 약 16.1%이다.

2.2. 베이즈 정리와 딥러닝

딥러닝 모델과 베이즈 정리는 밀접한 관계를 가지고 있다. 딥러닝 모델의 학습 과정은 본질적으로 베이즈 정리의 Posterior를 최대화하는 방향으로 이루어지기 때문이다. Posterior $(P(\theta \mid X))$는 관찰된 데이터 $X$를 바탕으로 모델의 파라미터 $\theta$가 가질 확률을 나타내며, 이는 다음과 같은 베이즈 정리로 표현된다.

\[P(\theta \mid X) = \frac{P(X \mid \theta) P(\theta)}{P(X)}\]
  • $P(\theta \mid X)$: 데이터 $X$가 주어졌을 때 파라미터 $\theta$에 대한 확률 (Posterior)
  • $P(X \mid \theta)$: 파라미터 $\theta$에서 데이터 $X$가 관찰될 확률 (Likelihood)
  • $P(\theta)$: 파라미터 $\theta$에 대한 사전 확률 (Prior)
  • $P(X)$: 데이터 $X$가 관찰될 전체 확률 (Evidence)

2.2.1. Posterior를 최대화하는 이유

딥러닝의 학습 목표는 데이터 $X$가 주어졌을 때 최적의 파라미터 $\theta$를 찾는 것이다. 베이즈 정리에 따르면, Posterior $P(\theta \mid X)$를 최대화하는 것이 곧 데이터에 가장 잘 맞는 모델 파라미터를 찾는 과정이다. 하지만 $P(X)$ (Evidence)는 주어진 데이터 $X$에 대해 상수로 간주할 수 있으므로, Posterior를 최대화하는 과정에서 Likelihood $P(X \mid \theta)$와 Prior $P(\theta)$만 고려하면 된다.

2.2.2. MLE(Maximum Likelihood Estimation)와 딥러닝

대부분의 딥러닝 모델은 Maximum Likelihood Estimation(MLE) 방식으로 학습이 이루어진다. 이 경우, Prior $P(\theta)$를 균일 분포(Uniform Prior)로 가정하면 Posterior는 Likelihood에 비례하게 된다.

\[P(\theta \mid X) \propto P(X \mid \theta)\]

Likelihood를 최대화하는 파라미터 $\theta$는 다음과 같이 정의된다.

\[\theta_{\text{MLE}} = \arg \max_\theta P(X \mid \theta)\]

딥러닝에서 Loss 함수로 자주 사용되는 Cross-Entropy Loss는 Negative Log-Likelihood(NLL)로 해석된다. Loss 함수 $L$은 다음과 같이 정의된다.

\[L = -\log P(X \mid \theta)\]

Loss $L$을 최소화하는 것은 Likelihood $P(X \mid \theta)$를 최대화하는 것과 같으며, 이는 Posterior를 최대화하는 방향으로 이어집니다.

예시 강아지와 고양이를 분류하는 딥러닝 모델이 있다고 가정한다. 현재 강아지 이미지($X$)가 입력으로 주어진 상황에서, 모델이 출력한 확률은 $P(\text{강아지} \mid X, \theta) = 0.7$ 그리고 $P(\text{고양이} \mid X, \theta) = 0.3$이라고 가정한다. 여기서 $\theta$는 모델이 학습한 파라미터를 의미한다. 이 경우, 실제 라벨이 “강아지”라면, 모델이 강아지일 확률로 출력한 값($P(\text{강아지} \mid X, \theta) = 0.7$)이 얼마나 신뢰할 수 있는지를 Loss 함수로 평가하게 된다.

딥러닝에서 Negative Log-Likelihood(NLL)를 사용해 Loss을 계산할 수 있다. Loss 함수는 다음과 같이 정의된다.

\[L = -\log P(\text{강아지} \mid X, \theta) = -\log(0.7) \approx 0.357\]

Loss $L$의 값이 낮다는 것은 모델이 데이터를 잘 설명하고 있다는 뜻이다. 반대로, $P(\text{강아지} \mid X, \theta)$가 더 낮은 값을 출력했다면(예: $0.2$), Loss 값은 더 커지게 되고, 이는 모델이 현재 데이터를 잘 설명하지 못하고 있다는 신호로 해석할 수 있다.

이제 모델의 목표는 Loss $L$을 줄이고 $P(\text{강아지} \mid X, \theta)$를 더 높이는 방향으로 파라미터 $\theta$를 조정하는 것이다. 즉, 모델은 Likelihood $P(X \mid \theta)$를 최대화하는 방향으로 학습하게 된다. 학습이 진행될수록 $P(\text{강아지} \mid X, \theta)$가 0.8이나 그 이상으로 증가할 가능성이 높아지고, 이는 모델이 더 정확해진다는 것을 의미한다.

2.2.3. MAP(Maximum A Posteriori)와 Prior 활용

베이즈 정리는 단순히 Likelihood뿐만 아니라 Prior(사전 확률)도 고려할 수 있는 장점이 있다. MAP(Maximum A Posteriori) 추정은 Posterior를 최대화하는 방향으로 학습한다. Posterior는 다음과 같이 표현된다.

\[\theta_{\text{MAP}} = \arg \max_\theta P(X \mid \theta) P(\theta)\]
  • $P(X \mid \theta)$: 데이터 $X$가 주어졌을 때, 모델의 파라미터 $\theta$가 데이터를 얼마나 잘 설명하는지 나타내는 Likelihood.
  • $P(\theta)$: 파라미터 $\theta$에 대한 사전 확률(Prior). 모델이 학습 전에 파라미터 $\theta$가 특정 분포를 따를 것이라고 가정한 정보를 반영한다.

Prior를 고려한다는 의미

Prior를 고려한다는 것은 모델 학습 과정에서, 데이터로부터 얻는 정보(Likelihood) 외에도 사전 지식을 추가적으로 반영한다는 뜻이다.
예를 들어, 특정 문제에서 파라미터 $\theta$가 특정 분포(예: 가우시안 분포)를 따른다는 사전 지식을 모델에 반영함으로써, 파라미터가 과도하게 커지거나 이상한 값을 가지는 것을 방지할 수 있다.

이러한 Prior는 모델의 일반화 성능을 높이고, 데이터가 부족하거나 분포에 큰 변화가 있는 상황에서 매우 유용하다.

실제로 MAP가 활용되는 사례

1. 베이지안 신경망(Bayesian Neural Networks)

  • MAP 추정은 베이지안 신경망에서 핵심적으로 활용된다. 베이지안 신경망은 학습 데이터가 적거나 불확실성이 높은 상황에서 Prior를 활용해 안정적인 학습을 가능하게 한다.
  • : 강아지와 고양이를 분류하는 모델이 있다고 가정한다. 학습 데이터가 강아지보다 고양이 이미지를 더 많이 포함하고 있다면, MAP는 강아지 클래스의 Prior를 더 크게 설정해 데이터 부족으로 인한 불확실성을 보완할 수 있다. 이로 인해 모델은 강아지를 과소평가하지 않으면서도 고양이에 대해 높은 정확도를 유지할 수 있다.

2. OOD(Out-Of-Distribution) 탐지

  • MAP는 OOD 데이터 탐지와 같은 문제에서 효과적으로 활용된다. 학습 데이터의 분포를 Prior를 통해 명시적으로 반영함으로써, 새로운 데이터가 학습 데이터 분포와 다를 경우 이를 감지할 수 있다. OOD 탐지에서는 모델이 관찰된 데이터(Likelihood $P(X \mid \theta)$)와 사전 지식(Prior $P(\theta)$)을 결합해 해당 데이터가 학습된 분포 내에 있는지 판단한다.
  • : 학습 데이터가 일반적인 질병 사례로 구성되어 있는 의료 모델에서 새로운 환자 데이터가 학습 데이터와 크게 다른 분포(예: 희귀 질병 증상)를 가진 경우, Likelihood $P(X \mid \theta)$와 Prior $P(\theta)$를 기반으로 “이 데이터는 학습되지 않은 희귀 질병일 가능성이 있다”는 결론을 내릴 수 있다. 이를 통해 OOD 데이터가 중요한 이상 패턴을 탐지하는 데 도움을 줄 수 있다.

3. Regularization

  • MAP는 정규화와 직접적으로 연결될 수 있다. L2 정규화는 파라미터 $\theta$에 대해 가우시안 분포를 Prior로 설정한 것으로 해석할 수 있다. 이로 인해 모델이 파라미터 크기를 제한하며 더 일반화된 성능을 발휘하게 된다.
  • Loss 함수 표현 ($\lambda$는 정규화 강도를 조절) \(L = -\log P(X \mid \theta) + \lambda ||\theta||^2\)

베이즈 정리는 AI/ML 분야에서 확률적 사고를 기반으로 데이터를 이해하고 모델을 설계하는 데 필수적인 개념이다. 딥러닝에서는 Loss 함수 설계와 학습 과정을 MLE 관점에서 설명할 수 있으며, MAP를 통해 Prior를 반영하면 불확실성 관리, OOD 탐지, 불균형 데이터 처리 등에서 안정적이고 일반화된 학습을 지원할 수 있다. 이를 통해 베이즈 정리는 단순한 확률 계산을 넘어, 데이터 기반 의사결정을 이끌고 더 신뢰할 수 있는 모델을 설계하는 데 중요한 역할을 한다.


3. 확률 변수와 확률 분포

확률 변수(Random Variable)는 실험이나 관찰 과정에서 결과를 수학적으로 표현하는 변수로, 특정 값이 발생할 확률을 나타내는 데 사용된다. 확률 변수는 데이터의 특성을 수학적으로 다루는 데 중요한 개념이며, 이를 기반으로 확률 분포를 정의할 수 있다.

3.1. 확률 변수란?

확률 변수는 이산형 확률 변수(Discrete Random Variable)연속형 확률 변수(Continuous Random Variable)로 나뉜다.

1. 이산형 확률 변수(Discrete Random Variable)
이산형 확률 변수는 특정한 값을 가질 수 있는 확률 변수를 의미한다.
예를 들어, 동전 던지기의 결과를 생각해 본다. 앞면이 나올 경우를 “1”, 뒷면이 나올 경우를 “0”으로 정의하면, 동전 던지기의 결과는 이산형 확률 변수가 된다. 또 다른 예로는 주사위를 던졌을 때 나오는 눈의 값(1, 2, 3, 4, 5, 6)이 있다. 이산형 확률 변수는 값들이 서로 떨어져 있어서 개별적인 값들의 확률을 정의할 수 있다.

2. 연속형 확률 변수(Continuous Random Variable)
연속형 확률 변수는 연속적인 값을 가질 수 있는 확률 변수를 의미한다.
예를 들어, 사람의 키(165.3cm, 170.1cm)나 특정 지역의 온도(20.5°C, 25.7°C)와 같은 값들은 연속형 확률 변수에 해당한다. 연속형 확률 변수는 이산형과 달리 특정 값에 대한 확률이 아니라, 값이 특정 구간에 속할 확률을 확률 밀도 함수(PDF)를 통해 정의한다.

3.2. 확률 분포란?

확률 분포(Probability Distribution)는 확률 변수가 취할 수 있는 값과 해당 값이 발생할 확률을 나타낸다. 확률 분포는 데이터의 패턴을 이해하고, 머신러닝에서 데이터 모델링이나 샘플링을 수행하는 데 필수적인 개념이다. 확률 분포는 크게 이산형 분포연속형 분포로 나뉜다.

1. 주요 이산형 분포
이산형 확률 변수는 이산형 분포를 따르며, 다음과 같은 주요 분포가 있다.

베르누이 분포(Bernoulli Distribution)는 단일 사건(예: 성공/실패)의 확률을 나타내는 분포이다.
예를 들어, 동전 던지기에서 앞면이 나올 확률 $p$와 뒷면이 나올 확률 $1-p$를 표현할 수 있다. 수식으로는 다음과 같이 나타낸다.

\[P(X = x) = p^x (1-p)^{1-x}, \quad x \in \{0, 1\}\]

또한, 다항 분포(Multinomial Distribution)는 여러 카테고리로 나뉘는 사건의 확률을 모델링한다.
예를 들어, 머신러닝에서 소프트맥스 함수(Softmax)는 다항 분포를 기반으로 각 클래스에 속할 확률을 계산한다.

2. 주요 연속형 분포
연속형 확률 변수는 연속형 분포를 따르며, 가장 널리 알려진 분포는 정규 분포이다.

정규 분포(Normal Distribution)는 평균 $\mu$와 분산 $\sigma^2$에 의해 정의되며, 데이터가 평균을 중심으로 대칭적으로 분포하는 경우를 나타낸다.
확률 밀도 함수(PDF)는 다음과 같이 정의된다.

\[f(x) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)\]

정규 분포는 사람의 키, 몸무게와 같은 자연 현상뿐만 아니라 머신러닝에서 모델의 가중치 초기화에 자주 활용된다. 또 다른 연속형 분포로는 지수 분포(Exponential Distribution)가 있으며, 이는 사건이 발생하는 간격을 모델링한다. 예를 들어, 서버 요청 간의 시간 간격을 분석하는 데 유용하다.

3.3. 머신러닝에서 확률 변수와 분포의 활용

머신러닝에서는 확률 변수와 확률 분포가 데이터 모델링, 학습 과정, 그리고 모델의 해석 가능성을 높이는 데 다양하게 활용된다. 각 데이터 샘플은 확률 변수로 간주되며, 이 확률 변수의 분포를 분석함으로써 데이터의 특성을 이해하거나 이상값을 탐지할 수 있다.

확률 분포는 단순히 데이터를 설명하는 데 그치지 않고, 머신러닝 모델의 동작을 해석하거나 모델 성능을 최적화하는 데에도 중요한 역할을 한다.

3.3.1. 확률 분포 중심의 연구와 응용

확률 분포는 머신러닝 연구와 실무에서 다양한 영역에 활용된다. 모델의 학습 과정, 데이터 생성, 이상 탐지, 불확실성 관리, 그리고 모델 해석에 이르기까지 확률 분포는 AI/ML에서 필수적인 도구로 자리 잡고 있다.

1. Decision Boundary와 확률 기반 분석
확률 분포는 머신러닝 모델의 Decision Boundary(의사결정 경계)를 이해하고 분석하는 데 중요한 도구이다. Decision Boundary란, 모델이 입력 데이터를 분류할 때 클래스 간의 경계를 나타내는 공간적 구분으로, 확률 분포는 다음과 같은 방식으로 이를 정의하고 분석하는 데 도움을 준다.

  • 확률 기반 경계 정의
    예를 들어, Logistic Regression과 같은 모델은 입력 데이터의 확률 분포를 바탕으로 특정 클래스에 속할 확률을 계산한다. $P(\text{Class 1} \mid X)$가 50%를 넘는 경우 해당 클래스로 분류하는 방식이다. 이와 같은 확률 기반 접근법은 의사결정 경계를 확률적으로 정의하는 데 사용된다.

  • 불확실성 영역 탐지
    확률 분포는 의사결정 경계 근처에서 모델의 예측 불확실성을 분석하는 데 유용하다. 경계 근처에서 출력 확률이 50:50에 가까운 데이터는 불확실성이 높다고 간주되며, 이는 OOD(Out-of-Distribution) 탐지나 Active Learning 같은 응용에서 중요한 역할을 한다.

  • Bayesian Neural Networks
    베이지안 신경망은 확률 분포를 기반으로 학습하므로, 의사결정 경계 근처에서 모델의 불확실성을 정교하게 추론할 수 있다. 이를 통해 모델이 데이터를 분류할 때 각 클래스에 속할 확률뿐 아니라, 예측에 대한 신뢰도까지 함께 분석할 수 있다.

2. Generative Models (생성 모델)
확률 분포는 데이터 생성 모델의 핵심 원리로 사용된다.

  • VAE (Variational Autoencoder): Latent Space를 가우시안 분포로 모델링하여 새로운 데이터를 생성한다.
  • GAN (Generative Adversarial Networks): 데이터 분포를 학습하여 실제와 유사한 샘플을 생성한다.

3. Uncertainty Quantification (불확실성 정량화)
불확실성의 정량화는 확률 분포를 활용해 모델이 얼마나 신뢰할 수 있는 예측을 하는지를 평가한다.

  • Bayesian Neural Networks는 Posterior 분포를 근사하여 모델의 예측 불확실성을 제공한다.
  • Monte Carlo Dropout은 확률적 드롭아웃을 사용해 모델의 불확실성을 추론한다.

4. Anomaly Detection (이상 탐지)
확률 분포를 통해 정상 데이터의 분포를 학습하고, 이와 크게 벗어나는 데이터(이상치)를 탐지한다.

  • Gaussian Mixture Model(GMM)을 사용해 정상 데이터의 분포를 모델링한 뒤, 이상값(outliers)을 탐지.
  • OOD(Out-of-Distribution) 탐지에서는 학습된 데이터 분포를 벗어난 새로운 데이터가 들어왔을 때 이를 감지하는 데 확률 분포를 활용한다.

5. Bayesian Optimization (베이지안 최적화)
확률 분포는 최적화 알고리즘에도 활용된다.

  • 베이지안 최적화는 탐색 공간에서 함수의 사후 확률 분포를 모델링하여, 가장 가능성이 높은 최적점을 탐색하는 방식으로 작동한다. 이는 하이퍼파라미터 튜닝과 같은 문제에 많이 응용된다.

3.3.2. 확률 분포와 모델 학습 과정

확률 분포는 머신러닝 모델 학습 과정에서도 중요한 역할을 한다. 예를 들어, Loss 함수는 확률 분포를 기반으로 설계되며, 분포에 대한 가정을 통해 모델을 최적화할 수 있다. 분류 문제에서 자주 사용하는 크로스 엔트로피 Loss(Cross-Entropy Loss)는 다항 분포의 개념에서 도출된 것으로, 각 클래스의 확률 분포를 비교하여 Loss을 계산한다. 반면, 회귀 문제에서는 출력값이 정규 분포를 따른다고 가정하여 평균 제곱 오차(MSE, Mean Squared Error)를 Loss 함수로 사용한다. 이러한 Loss 함수들은 확률 분포를 모델링하고, 모델이 데이터를 효과적으로 학습할 수 있도록 돕는다.

확률 분포는 모델의 가중치 초기화와 샘플링 과정에서도 중요한 역할을 한다. 예를 들어, 모델의 가중치를 정규 분포로 초기화하면 학습이 안정적이고 빠르게 이루어질 가능성이 높다. 또한, 생성 모델(GAN, VAE)이나 강화 학습에서는 확률 분포를 기반으로 데이터를 샘플링하거나 행동(action)을 선택하는 과정에서 활용된다. 이러한 활용은 모델이 확률적으로 더 적합한 선택을 할 수 있도록 돕고, 결과적으로 학습 성능을 향상시킨다.


4. 정보 이론

정보 이론(Information Theory)은 데이터의 정보량, 불확실성, 확률 분포를 수학적으로 다루는 학문으로, 머신러닝에서는 Loss 함수 설계, 데이터 압축, 모델 해석 등 다양한 응용 분야에서 핵심적인 역할을 한다. 정보 이론의 개념은 확률 통계와 밀접하게 연결되어 있어, 머신러닝 모델이 데이터를 다루고 학습하는 과정을 더욱 정교하게 설계할 수 있게 해준다.

4.1. Entropy: 불확실성의 측정

Entropy는 확률 분포가 가지는 불확실성의 정도를 측정하는 개념이다. 쉽게 말해, 엔트로피는 특정 사건이 얼마나 “예측하기 어려운지”를 수치로 나타낸다. 이는 다음과 같은 수식으로 정의된다.

\[H(X) = - \sum_{x \in \mathcal{X}} P(x) \log P(x)\]

여기서 $H(X)$는 확률 변수 $X$의 엔트로피를 의미하며, $P(x)$는 사건 $x$가 발생할 확률이다.

  • 높은 Entropy는 데이터가 더 무작위적이고 불확실성이 크다는 것을 의미한다.
  • 낮은 Entropy는 데이터의 패턴을 예측하기가 더 쉽다는 뜻이다.

예를 들어, 공정한 동전의 경우 앞면($P(\text{앞면}) = 0.5$)과 뒷면($P(\text{뒷면}) = 0.5$)의 확률이 동일하므로 엔트로피는 다음과 같이 계산된다.

\[H(X) = - (0.5 \log 0.5 + 0.5 \log 0.5) = 1 \, \text{bit}\]

반면, 한쪽으로 치우친 동전(예: $P(\text{앞면}) = 0.9$, $P(\text{뒷면}) = 0.1$)의 엔트로피는 더 낮아진다.

머신러닝에서는 Entropy를 데이터의 복잡성을 이해하거나, 최적의 데이터 표현을 설계하는 데 사용한다.

4.2. Cross-Entropy Loss

Cross-Entropy는 두 확률 분포 간의 차이를 측정하는 지표로, 머신러닝에서 Loss 함수로 널리 사용된다.
분류 문제에서는 모델이 예측한 확률 분포와 실제 레이블의 분포 간 차이를 계산하기 위해 Cross-Entropy를 사용한다. 수식은 다음과 같다.

\[H(p, q) = - \sum_{x \in \mathcal{X}} p(x) \log q(x)\]
  • $p(x)$: 실제 레이블의 확률 분포 (주로 One-hot 벡터로 표현된다)
  • $q(x)$: 모델이 예측한 확률 분포

Cross-Entropy Loss는 모델이 예측한 확률 분포 $q(x)$가 실제 레이블 분포 $p(x)$에 얼마나 가까운지를 측정하며, 이를 최소화하는 방향으로 모델을 학습한다.

예를 들어, 강아지와 고양이를 분류하는 모델에서 강아지 이미지에 대한 실제 레이블이 $p = [1, 0]$이고, 모델의 출력 확률이 $q = [0.8, 0.2]$라면, Cross-Entropy Loss는 다음과 같이 계산된다:

\[H(p, q) = - (1 \cdot \log 0.8 + 0 \cdot \log 0.2) = - \log 0.8 \approx 0.22\]

Cross-Entropy가 낮을수록 모델의 예측이 더 정확하다는 것을 의미한다.

4.3. KL Divergence

KL Divergence (Kullback-Leibler Divergence)는 두 확률 분포 간의 차이를 측정하는 데 사용된다. 특히, 모델이 학습한 분포가 실제 데이터의 분포에 얼마나 가까운지를 측정하는 데 활용된다. 수식은 다음과 같다.

\[D_{\text{KL}}(P || Q) = \sum_{x \in \mathcal{X}} P(x) \log \frac{P(x)}{Q(x)}\]
  • $P(x)$: 실제 데이터 분포
  • $Q(x)$: 모델이 학습한 분포

KL Divergence는 두 분포가 동일할 때 $0$이 되며, $Q$가 $P$와 다를수록 값이 커진다.

예를 들어, 생성 모델인 VAE (Variational Autoencoder)에서는 KL Divergence를 사용해 Latent Space의 분포가 정규 분포와 가까워지도록 제약을 가한다. 이를 통해 모델이 더 일반화된 데이터를 생성할 수 있게 돕는다.

4.4. 정보 이론과 AI/ML의 응용

정보 이론은 머신러닝에서 데이터의 불확실성을 이해하고 모델의 성능을 최적화하며, 데이터 표현 방식을 설계하는 데 핵심적인 역할을 한다. 첫 번째로, 정보 이론은 Loss 함수 설계에서 중요한 역할을 한다. 예를 들어, Cross-Entropy Loss 함수는 모델이 예측한 확률 분포와 실제 레이블 간의 차이를 계산하여 모델이 점진적으로 더 정확한 예측을 하도록 학습을 유도한다. 또한, KL Divergence는 모델이 학습한 분포가 실제 데이터의 분포와 얼마나 다른지를 측정하여, 분포 간 차이를 줄이는 방향으로 학습을 진행하게 만든다. 이러한 Loss 함수들은 모델 최적화 과정의 기초를 이루며, 분류 문제, 생성 모델 등 다양한 영역에서 널리 사용된다.

두 번째로, 정보 이론은 데이터 압축과 표현 학습에서도 중요한 역할을 한다. Entropy는 데이터의 복잡도를 측정하여, 데이터 압축과 효율적인 표현을 설계하는 데 도움을 준다. Variational Autoencoder(VAE)와 같은 생성 모델은 정보를 압축하면서도 재구성 가능한 잠재 표현(latent representation)을 학습하여 새로운 데이터를 생성할 수 있도록 설계된다. 이 과정에서 KL Divergence는 잠재 공간의 분포가 정규 분포와 비슷해지도록 제약을 가하여 모델이 더 일반화된 잠재 표현을 학습하도록 만든다.

세 번째로,정보 이론은 불확실성 정량화에서도 유용하게 활용된다. 예측이 정확하지 않을 가능성을 정량적으로 표현하는 것은 모델의 신뢰도를 평가하는 데 매우 중요하다. KL Divergence와 같은 지표는 모델이 학습한 분포와 실제 분포 간의 차이를 계산하여, 예측이 얼마나 신뢰할 수 있는지를 파악하는 데 도움을 준다. 예를 들어, Bayesian Neural Networks는 예측값과 불확실성을 동시에 출력하는데, 이러한 불확실성 정량화는 OOD(Out-of-Distribution) 데이터 탐지와 같은 문제를 해결하는 데 필수적이다.

마지막으로, 정보 이론은 모델 해석 가능성(Interpretability)에도 기여한다. 모델이 데이터를 처리하고 분류하는 방식을 설명하기 위해, 정보량과 불확실성을 기반으로 한 분석이 활용된다. 예를 들어, 모델이 어떤 입력 데이터에 대해 내린 예측이 얼마나 신뢰할 수 있는지, 그리고 특정 클래스에 속할 가능성이 왜 높은지를 분석하는 데 정보 이론의 개념이 적용된다. 이를 통해 AI/ML 모델의 예측 과정을 더 투명하게 만들고, 실질적으로 신뢰할 수 있는 AI 시스템을 구축할 수 있다.


이로써 AI/ML을 위한 “확률론”에 대한 설명을 마친다. 확률론은 사실 매우 광범위하고 어려운 주제라서, AI/ML 논문이나 복잡한 모델 설계를 깊이 이해하려면 더 깊은 지식이 필요할 수도 있다. 하지만 이번 글에서 다룬 개념만 잘 이해하고 있어도 실무와 학습에서 큰 어려움 없이 적용할 수 있을 것이다.