* 본 블로그 포스트에서 사용된 표, 이미지 및 기타 관련 자료는 "PROBABILITY AND STATISTICAL INFERENCE 9th Edition"에서 발췌한 것입니다. 이 자료들은 내용을 요약하고 이해를 돕기 위한 참고용으로 제공됩니다. 또한, 해석 과정에서 일부 오류가 있을 수 있으니 원본을 참고하여 확인하시기 바랍니다
1. 이론정리
1) 우도비 검정(Likelihood Ratio Test, LRT)의 개념
(1) 정의
a) 우도비 검정(LRT)은 귀무가설과 대립가설에 대한 우도 함수의 비율을 사용하여 가설을 검정하는 방법임.
b) 일반적으로 검정 가설이 복합 가설(composite hypothesis)일 때 활용되며, 다양한 확률분포에
적용 가능함.
c) Neyman-Pearson 정리의 자연스러운 확장으로 볼 수 있으며, 우도비 검정은 데이터가
귀무가설을 더 지지하는지, 대립가설을 더 지지하는지를 비교함.
(2) 구성 요소
a) 확률밀도함수(pdf)의 형태는 알려져 있으나, 하나 이상의 미지의 모수를 포함하는 경우를 가정함.
b) 전체 모수 공간을 \( \Theta \) 로 정의하고, 귀무가설과 대립가설을 다음과 같이 설정함.
\[
H_0 : \theta \in \omega, \quad H_1 : \theta \in \omega'
\]
여기서 \( \omega \) 는 전체 모수 공간 \( \Theta \) 의 부분집합이며, \( \omega' \) 는 \( \omega \) 의 여집합임.
c) 검정은 귀무가설과 대립가설 각각에서 우도를 최대화한 값의 비율을 사용하여 수행됨.
2) 우도비(Likelihood Ratio)의 정의
(1) 정의
a) 우도비는 다음과 같이 정의됨.
\[
\lambda = \frac{\sup_{\theta \in \omega} L(\theta)}{\sup_{\theta \in \Theta} L(\theta)}
\]
b) 여기서
- \( \sup_{\theta \in \omega} L(\theta) \) : 귀무가설 \( H_0 \) 하에서의 최대 우도
- \( \sup_{\theta \in \Theta} L(\theta) \) : 전체 모수 공간에서의 최대 우도
c) 우도비는 항상 \( 0 \leq \lambda \leq 1 \) 의 값을 가지며, 값이 작을수록 귀무가설을 기각할 가능성이 높아짐.
(2) 기각 기준
a) 특정 임계값 \( k \) 를 설정하여,
\[
\lambda \leq k
\]
일 때 귀무가설을 기각함.
b) \( k \) 값은 유의수준 \( \alpha \) 에 따라 결정됨.
c) 통계량을 로그 변환하여 카이제곱 분포 근사를 활용하는 경우, 기각 기준은 다음과 같음.
\[
-2 \log \lambda \geq \chi^2_{\alpha, d}
\]
여기서 \( d \) 는 자유도임.
3) 정규분포에서의 우도비 검정
(1) 평균에 대한 검정
a) 모집단이 정규분포 \( N(\mu, \sigma^2) \) 를 따를 때,
b) 귀무가설과 대립가설을 설정하면,
\[
H_0: \mu = \mu_0, \quad H_1: \mu \neq \mu_0
\]
c) 우도 함수는 다음과 같음.
\[
L(\mu, \sigma^2) = \prod_{i=1}^{n} \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{(X_i - \mu)^2}{2\sigma^2} \right)
\]
d) 귀무가설 하에서 최대 우도는
\[
L(\hat{\omega}) =
\left( \frac{1}{2\pi} \frac{1}{n} \sum_{i=1}^{n} (X_i - \mu_0)^2 \right)^{n/2}
\]
e) 대립가설 하에서 최대 우도는
\[
L(\hat{\Theta}) =
\left( \frac{1}{2\pi} \frac{1}{n} \sum_{i=1}^{n} (X_i - \bar{X})^2 \right)^{n/2}
\]
f) 우도비는
\[
\lambda = \left( \frac{\sum_{i=1}^{n} (X_i - \bar{X})^2}{\sum_{i=1}^{n} (X_i - \mu_0)^2} \right)^{n/2}
\]
g) 이를 변형하면,
\[
\lambda = \left( \frac{1}{1 + n (\bar{X} - \mu_0)^2 / \sum_{i=1}^{n} (X_i - \bar{X})^2 } \right)^{n/2}
\]
h) 검정 통계량은
\[
T = \frac{\sqrt{n} (\bar{X} - \mu_0)}{\sqrt{\sum_{i=1}^{n} (X_i - \bar{X})^2 / (n - 1)}}
\]
이는 자유도 \( n-1 \) 을 갖는 t-분포를 따름.
i) 따라서, 기각 기준은
\[
|T| \geq t_{\alpha/2, n-1}
\]
(2) 분산에 대한 검정
a) 모집단이 정규분포 \( N(\mu, \sigma^2) \) 를 따를 때, 분산 검정의 귀무가설은
\[
H_0: \sigma^2 = \sigma_0^2, \quad H_1: \sigma^2 \neq \sigma_0^2
\]
b) 우도비 검정 통계량은
\[
W = \frac{\sum_{i=1}^{n} (X_i - \bar{X})^2}{\sigma_0^2}
\]
c) 자유도 \( n-1 \) 을 갖는 카이제곱 분포를 따르므로, 기각 기준은
\[
W \leq \chi^2_{1-\alpha/2, n-1} \quad \text{또는} \quad W \geq \chi^2_{\alpha/2, n-1}
\]
4) 이론정리 요약
a) 우도비 검정은 복합 가설에도 적용 가능함.
b) 정규분포에서 평균과 분산 검정은 각각 t-검정과 카이제곱 검정과 연결됨.
c) 우도비 검정은 충분 통계량을 기반으로 한 검정이며, 일반적인 가설검정과 동일한 결과를 제공함.
2. 예제
1) 문제
(1) 모집단이 정규분포 \( N(\mu, 16) \) 를 따를 때, 귀무가설 \( H_0: \mu = 50 \), 대립가설 \( H_1: \mu \neq 50 \)
에 대한 우도비 검정을 수행하라. 표본 크기는 \( n = 10 \) 이며, 유의수준 \( \alpha = 0.05 \) 로 설정하라.
(2) 모집단이 포아송 분포 \( Poisson(\lambda) \) 를 따를 때, 귀무가설 \( H_0: \lambda = 3 \), 대립가설
\( H_1: \lambda \neq 3 \) 에 대한 우도비 검정을 수행하라. 표본 크기는 \( n = 15 \) 이며, 유의수준 \( \alpha = 0.05 \)
로 설정하라.
(3) 모집단이 이항 분포 \( Bin(n, p) \) 를 따를 때, 귀무가설 \( H_0: p = 0.4 \), 대립가설 \( H_1: p \neq 0.4 \) 에
대한 우도비 검정을 수행하라. 표본 크기는 \( n = 20 \) 이며, 유의수준 \( \alpha = 0.05 \) 로 설정하라.
2) 풀이
계산식의 데이터는 랜덤추출이므로, 하기 코드와 결과가 다를 수 있음
(1) 정규분포 검정
- 주어진 표본 데이터: \( X = \{52, 49, 50, 48, 51, 53, 50, 49, 52, 50\} \)
- 표본 크기: \( n = 10 \), 유의수준: \( \alpha = 0.05 \)
- 표본 평균과 표본 표준편차 계산:
\[
\bar{X} = \frac{1}{10} \sum X_i = \frac{52+49+50+48+51+53+50+49+52+50}{10} = 50.4
\]
\[
S = \sqrt{\frac{1}{n-1} \sum_{i=1}^{n} (X_i - \bar{X})^2} = \sqrt{\frac{(52 - 50.4)^2 + \dots + (50 - 50.4)^2}{9}} = 1.58
\]
- 검정 통계량 계산:
\[
T = \frac{\sqrt{10} (50.4 - 50)}{1.58} = \frac{1.26}{1.58} = 0.797
\]
- 기각 기준:
\[
|T| \geq t_{0.025, 9} = 2.262
\]
- \( |0.797| < 2.262 \) 이므로 귀무가설 기각 불가 (즉, \( \mu = 50 \) 유지)
(2) 포아송 분포 검정
- 주어진 표본 데이터: \( X = \{2, 4, 3, 3, 2, 5, 4, 3, 2, 4, 5, 3, 4, 3, 3\} \)
- 표본 크기: \( n = 15 \), 유의수준: \( \alpha = 0.05 \)
- 표본 평균 계산:
\[
\hat{\lambda} = \frac{1}{15} \sum X_i = \frac{2+4+3+3+2+5+4+3+2+4+5+3+4+3+3}{15} = 3.33
\]
- 검정 통계량 계산:
\[
-2 \log \lambda = 2 \left[ 15(3.33 - 3) + \sum X_i \log \left( \frac{3}{3.33} \right) \right] = 0.583
\]
- 기각 기준:
\[
-2 \log \lambda \geq \chi^2_{0.05, 1} = 3.84
\]
- \( 0.583 < 3.84 \) 이므로 귀무가설 기각 불가 (즉, \( \lambda = 3 \) 유지)
(3) 이항 분포 검정
- 주어진 표본 데이터: \( X = \{1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1\} \)
- 표본 크기: \( n = 20 \), 유의수준: \( \alpha = 0.05 \)
- 표본 비율 계산:
\[
\hat{p} = \frac{\sum X_i}{20} = \frac{13}{20} = 0.65
\]
- 검정 통계량 계산:
\[
-2 \log \lambda = 2 \sum X_i \log \left( \frac{0.65}{0.4} \right) + (20-13) \log \left( \frac{1-0.65}{1-0.4} \right) = 4.78
\]
- 기각 기준:
\[
-2 \log \lambda \geq \chi^2_{0.05, 1} = 3.84
\]
- \( 4.78 > 3.84 \) 이므로 귀무가설 기각 (즉, \( p \neq 0.4 \))
# R code
# (1) 정규분포 검정
mu_0 <- 50
sigma <- 4
n <- 10
alpha <- 0.05
t_alpha <- qt(1 - alpha/2, df = n - 1)
# 우도비 검정 통계량
T <- (sqrt(n) * (mean(X) - mu_0)) / sd(X)
p_value <- 2 * (1 - pt(abs(T), df = n - 1))
cat("정규분포 검정 p-value:", p_value, "\n")
# (2) 포아송 분포 검정
lambda_0 <- 3
X <- rpois(n, lambda_0)
lambda_hat <- mean(X)
lambda_ratio <- sum(dpois(X, lambda_0)) / sum(dpois(X, lambda_hat))
# 검정 통계량
LRT <- -2 * log(lambda_ratio)
p_value <- 1 - pchisq(LRT, df = 1)
cat("포아송 분포 검정 p-value:", p_value, "\n")
# (3) 이항 분포 검정
p_0 <- 0.4
X <- rbinom(n, 1, p_0)
p_hat <- mean(X)
# 우도비 검정 통계량
LRT <- -2 * sum(X * log(p_hat / p_0) + (1 - X) * log((1 - p_hat) / (1 - p_0)))
p_value <- 1 - pchisq(LRT, df = 1)
cat("이항 분포 검정 p-value:", p_value, "\n")
# Python code
import numpy as np
import scipy.stats as stats
# (1) 정규분포 검정
mu_0 = 50
sigma = 4
n = 10
alpha = 0.05
t_alpha = stats.t.ppf(1 - alpha/2, df=n-1)
X = np.random.normal(mu_0, sigma, n)
T = (np.sqrt(n) * (np.mean(X) - mu_0)) / np.std(X, ddof=1)
p_value = 2 * (1 - stats.t.cdf(abs(T), df=n-1))
print("정규분포 검정 p-value:", p_value)
# (2) 포아송 분포 검정
lambda_0 = 3
X = np.random.poisson(lambda_0, n)
lambda_hat = np.mean(X)
lambda_ratio = np.prod(stats.poisson.pmf(X, lambda_0)) / np.prod(stats.poisson.pmf(X, lambda_hat))
LRT = -2 * np.log(lambda_ratio)
p_value = 1 - stats.chi2.cdf(LRT, df=1)
print("포아송 분포 검정 p-value:", p_value)
# (3) 이항 분포 검정
p_0 = 0.4
X = np.random.binomial(1, p_0, n)
p_hat = np.mean(X)
LRT = -2 * np.sum(X * np.log(p_hat / p_0) + (1 - X) * np.log((1 - p_hat) / (1 - p_0)))
p_value = 1 - stats.chi2.cdf(LRT, df=1)
print("이항 분포 검정 p-value:", p_value)'통계' 카테고리의 다른 글
| 9.2 Contingency Tables (0) | 2025.01.03 |
|---|---|
| 9.1 Chi-Square Goodness-of-Fit Tests (0) | 2025.01.03 |
| 8.6 Best Critical Regions (0) | 2025.01.03 |
| 8.5 Power of a Statistical Test (0) | 2025.01.03 |
| 8.4 The Wilcoxon Tests (0) | 2025.01.03 |