[기초통계] MLE, 최대우도추정법

Hyunjun Kim·2025년 9월 26일

통계학기초

목록 보기
16/24

데이터 분석과 머신러닝에서 핵심적인 추정 방법 중 하나가 최대우도추정법(MLE, Maximum Likelihood Estimation)이다.
MLE는 데이터가 가장 그럴듯하게 나올 수 있는 모수(Parameter)를 추정하는 방법이다.


모수(Parameter)란 무엇인가?

정의

  • 모집단(Population)의 확률 분포를 완전히 규정하는 값이다.
  • 즉, 모집단이 따르는 확률 분포를 수학적으로 표현할 때 필요한 고정된 값이다.

예시: 정규분포

정규분포

N(μ,σ2)N(\mu, \sigma^2)

에서

  • μ\mu : 평균 (모평균, population mean)
  • σ2\sigma^2 : 분산 (모분산, population variance)

→ 이 두 값이 바로 모수(Parameter)이다.

모수와 통계량의 차이

  • 모수(Parameter): 모집단의 특성을 나타내는 값 → 보통 알 수 없다.
  • 통계량(Statistic): 표본으로부터 계산된 값 → 모수를 추정하기 위해 사용한다.

예시

  • 모평균 μ\mu (모수) ↔ 표본평균 xˉ\bar{x} (통계량)
  • 모분산 σ2\sigma^2 (모수) ↔ 표본분산 s2s^2 (통계량)

표본 통계량이 해당 모수를 추정하는 역할을 한다.
우리가 모집단 전체를 알 수 없기 때문에, 일부 표본을 뽑아 평균과 분산을 계산한다.

이렇게 계산된 표본평균과 표본분산이 바로 모수(μ, σ²)를 가장 잘 나타내는 값이 된다.

즉, 화살표는 "추정 대상 ↔ 추정값"의 관계를 나타낸다.

정리

  • 모수는 모집단 전체를 규정하는 값이다.
  • 통계량은 표본 데이터를 기반으로 계산되어, 모수를 추정하는 데 사용된다.

우도(Likelihood)란?

정의: 주어진 데이터가 특정 모수(Parameter) 값에서 나올 가능성을 수치로 나타낸 것.

직관적으로 말하면:
"이 데이터가 관측되었을 때, 어떤 모수 값이 가장 그럴듯한가?"

중요한 포인트: 우도는 데이터가 고정되어 있고, 모수가 변수라는 관점에서 계산된다.

확률(Probability)은 모수가 고정되어 있고, 데이터가 변수일 때 계산한다.
우도(Likelihood)는 반대로, 데이터는 고정, 모수가 변수다.

수학적 표현

  • 데이터: x1,x2,,xnx_1, x_2, \ldots, x_n
  • 모수: θ\theta
  • 확률모형: f(xθ)f(x|\theta)

우도함수(Likelihood function):

L(θx1,x2,,xn)=i=1nf(xiθ)L(\theta | x_1, x_2, \ldots, x_n) = \prod_{i=1}^{n} f(x_i | \theta)

MLE는 이 우도함수를 최대화하는 θ\theta를 찾는 과정이다.

확률 vs. 우도 비교

구분확률(Probability)우도(Likelihood)
데이터변수고정
모수고정변수
의미데이터가 일어날 가능성주어진 데이터에서 모수가 일어날 가능성

직관적 예시

동전 던지기 10번에서 앞면이 7번 나왔다고 하자.
이때 동전의 앞면 확률 pp가 얼마일 때 이 결과가 가장 그럴듯한지(MLE 문제)?

L(p7,3)=p7(1p)3L(p | 7앞, 3뒤) = p^7 (1-p)^3

최대화하면 p=0.7p = 0.7가 된다.
즉, 우도는 "데이터를 가장 잘 설명하는 모수값"을 찾는 도구이다.

동전을 10번 던졌고, 앞면이 7번, 뒷면이 3번 나왔다고 하자.
동전 앞면이 나올 확률을 𝑝라고 하면, 각 던짐은 독립적 사건이다.

  • p7p^7
    • 7번의 앞면이 나올 확률을 곱한 것 ( p×p××p=p7p×p×⋯×p=p7 )

  • (1p)3(1-p)^3
    • 3번의 뒷면이 나올 확률을 곱한 것
    • 뒷면이 나올 확률은 (1p)(1−p)

  • 두 개를 곱한 이유
    • 독립 사건의 확률 곱셈 법칙: 독립 사건 A, B가 있을 때
      P(A와 B)=P(A)P(B)P(A와 B)=P(A)⋅P(B)

MLE란 무엇인가?

직관적으로 말하면:
"이 데이터가 이런 확률 분포에서 나왔다고 가정했을 때, 어떤 모수 값이 가장 그럴듯할까?"를 찾는 과정이다.

이를 수학적으로 표현하면 우도함수(Likelihood function)가 된다.

수학적 정의

  • 데이터: x1,x2,,xnx_1, x_2, \ldots, x_n
  • 모수: θ\theta
  • 확률모형: f(xθ)f(x|\theta)

우도함수

L(θx)=i=1nf(xiθ)L(\theta|x) = \prod_{i=1}^{n} f(x_i|\theta)

관측된 데이터가 θ\theta라는 모수 하에서 나올 가능성을 모두 곱한 값이다.

로그우도

(θ)=logL(θx)=i=1nlogf(xiθ)\ell(\theta) = \log L(\theta|x) = \sum_{i=1}^{n} \log f(x_i|\theta)

로그를 취하면 곱셈이 덧셈으로 바뀌어 계산과 최적화가 쉬워진다.
MLE는 결국 (θ)\ell(\theta)를 최대화하는 θ\theta를 찾는 과정이다.


예시: 정규분포의 MLE

정규분포 N(μ,σ2)N(\mu, \sigma^2)에서 표본을 얻었다면,
MLE는 아래와 같이 모수를 추정한다.

  • 평균: μ^MLE=xˉ\hat{\mu}_{MLE} = \bar{x} (표본 평균)
  • 분산: σ^MLE2=1n(xixˉ)2\hat{\sigma}^2_{MLE} = \frac{1}{n}\sum (x_i - \bar{x})^2 (표본 분산)

즉, 우리가 익숙하게 쓰는 평균과 분산도 사실 MLE의 결과이다.


데이터 분석 면접에서 MLE를 묻는 이유

  1. 통계적 추정 개념의 이해

    • 데이터로부터 모수를 어떻게 추정하는지 아는가?
  2. 최적화 과정 이해

    • 로그우도 최대화를 통해 수학적 최적화를 이해하고 있는가?
  3. 실무 적용 능력

    • 로지스틱 회귀, 딥러닝 손실 함수, HMM 등 다양한 모델 학습과 연결할 수 있는가?

추가로 알아야 할 정보

1. MLE vs MAP

MLE (Maximum Likelihood Estimation)

  • 정의:

    • 데이터만을 기반으로, 관측된 데이터를 가장 잘 설명하는 모수(Parameter)를 찾는 방법이다.
  • 장점:

    • 표본이 충분히 많으면 추정값이 일치성(consistency)을 가지며, 표본 크기가 커질수록 실제 모수에 가까워진다.
    • 점근정규성(asymptotic normality): 큰 표본에서 추정치의 분포가 정규분포에 가까워진다.
  • 단점:

    • 작은 표본에서는 불안정할 수 있음
    • 복잡한 모델의 경우, 우도 함수를 최대화하기 위해 수치 최적화가 필요

MAP (Maximum A Posteriori)

  • MLE: 데이터만 고려

    θ^MLE=argmaxθL(θx)\hat{\theta}_{MLE} = \arg\max_{\theta} L(\theta \mid x)
  • MAP: 데이터 + 사전분포 고려

    θ^MAP=argmaxθL(θx)P(θ)\hat{\theta}_{MAP} = \arg\max_{\theta} L(\theta \mid x) P(\theta)

활용

  • 로지스틱 회귀, 크로스엔트로피 손실, EM 알고리즘 등 다양한 모델 학습에서 MLE 또는 MAP가 사용된다.
  • 작은 표본에서는 MAP가 사전 지식을 활용해 추정 안정성을 높일 수 있다.

2. Python 예제: 정규분포에서 MLE로 모수 추정

import numpy as np

# 예시 데이터
data = np.array([5.1, 4.9, 5.0, 5.2, 5.1, 5.0])

# MLE: 정규분포 평균과 분산 추정
mu_mle = np.mean(data)          # 평균
sigma2_mle = np.var(data)       # 분산 (MLE는 n으로 나눔)

print(f"MLE로 추정한 평균: {mu_mle:.3f}")
print(f"MLE로 추정한 분산: {sigma2_mle:.3f}")

결과 예시 :
MLE로 추정한 평균: 5.050
MLE로 추정한 분산: 0.008

profile
Data Analytics Engineer 가 되

0개의 댓글