유진정의 기록
[핵심 확률/통계] Analysis of Variance (ANOVA 분산분석) 본문
작년 말쯤 수학 공부를 갑자기 했던 것 같은데, 많이 도움 받았던 강의들을 티스토리에 정리해볼까합니더.
혹시라도 문제가 된다면 댓글 등으로 알려주시면 감사하겠습니다.
[핵심 확률/통계] 표본분산의 분포, 카이제곱분포, t 분포, F 분포 / 김성범 교수님 유튜브 강의
https://www.youtube.com/watch?v=DyBxYsCow9k&list=PLpIPLT0Pf7IqS4as3nefPyGv94r2aY6IT&index=2
ANOVA는 3개 이상의 모집단 평균이 같은지 다른지 비교하는 방법입니다.
이를 통해 그룹 간 차이를 통계적으로 검정할 수 있습니다. 모든 모집단의 분산이 같다는 조건을 만족해야 합니다.
🔍 중요 포인트
- ANOVA를 통해 그룹 간 평균 차이를 통계적으로 검정할 수 있습니다.
- F-통계량을 이용한 가설 검정과 결과 해석이 중요합니다.
- 자유도와 분산분석의 개념을 이해하고 적절히 적용해야 합니다.
✏️ 주요 수식
- ANOVA 가설: $H_0: \mu_1 = \mu_2 = \mu_3 = ... = \mu_k$
- F-통계량: $F = \frac{MSA}{MSE}$
- 샘플 분산: $s^2 = \frac{\sum_{i=1}^{n}(x_i - \bar{x})^2}{n-1}$
- 카이제곱 분포: $X \sim \chi^2(k)$
- F 분포: $F \sim F(k_1, k_2)$
증명과 전개
- ANOVA 수식 유도: 그룹 간 평균과 그룹 내 평균을 비교하여 F-통계량을 계산
- 자유도 계산: 그룹 간과 그룹 내 자유도를 고려하여 ANOVA 결과를 해석
- F-통계량 해석: F 값이 클수록 그룹 간 차이가 크다는 것을 의미
📑 종합 정리
🌟 개념 정리표
개념 | 수식 | 설명 | 주의점 |
---|---|---|---|
ANOVA | $H_0: \mu_1 = \mu_2 = \mu_3 = ... = \mu_k$ | 3개 이상의 모집단 평균 비교 | 모든 모집단의 분산 동일해야 함 |
자크나이프 (Jackknife) | $\hat{\mu}_i = \frac{n-1}{n}\sum_{j=1}^{n} y_{(j)}$ | i번째 레벨의 평균 추정값을 구하는 방법 | 자크나이프를 통해 알려지지 않은 레벨의 추정값을 구할 수 있음 |
샘플 분산 | $s^2 = \frac{\sum_{i=1}^{n}(x_i - \bar{x})^2}{n-1}$ | 표본 데이터의 분산을 계산하는 공식 | 편향 보정을 위해 $n-1$로 나눔 |
카이제곱 분포 | $X \sim \chi^2(k)$ | 자유도 $k$에 따라 분포하는 확률변수 | 자유도가 커질수록 정규분포에 가까워짐 |
F 분포 | $F \sim F(k_1, k_2)$ | 두 개의 카이제곱 분포를 나눈 비율이 따르는 분포 | 분자의 자유도 $k_1$, 분모의 자유도 $k_2$ |
🌟 ANOVA 기본 용어 설명
가설검정
귀무가설(H₀): 모든 그룹의 평균이 같다
대립가설(H₁): 적어도 두 그룹의 평균이 다르다
변동(Sum of Squares)의 종류:
- 전체 변동(SST): 모든 데이터의 전체적인 변화량
- 처리 변동(SSA): 그룹 간의 차이에서 발생하는 변화량
- 오차 변동(SSE): 같은 그룹 내에서 발생하는 변화량
SST = Σ(각 관측값 - 전체평균)² SSA = n × Σ(그룹평균 - 전체평균)² SSE = Σ(각 관측값 - 해당 그룹평균)²
자유도(Degrees of Freedom, DF):
- 데이터가 자유롭게 변할 수 있는 정도를 나타내는 값
- 전체 자유도 = 전체 데이터 수 - 1
- 처리 자유도 = 그룹 수 - 1
- 오차 자유도 = 전체 자유도 - 처리 자유도
평균제곱(MS) 계산:
MSA = SSA / (k-1) [k는 그룹 수]
MSE = SSE / k(n-1) [n은 각 그룹의 표본 수]
ANOVA 표 구조
요인 | 자유도(DF) | 제곱합(SS) | 평균제곱(MS) | F 값 |
---|---|---|---|---|
처리 | k-1 | SSA | MSA | F* |
오차 | k(n-1) | SSE | MSE | |
전체 | nk-1 | SST |
검정 방법 |
- F* = MSA/MSE 계산
이 값이 임계값(F₍α,k-1,k(n-1)₎)보다 크면 귀무가설 기각
해석
- SSA가 SSE보다 매우 크면 그룹 간 차이가 있다고 볼 수 있음
- F값이 크면 그룹 간 차이가 통계적으로 유의미함을 의미
세부 내용
1. ANOVA
ANOVA(Analysis of Variance)는 3개 이상의 모집단을 비교할 때 사용하는 통계적 방법입니다. 두 개의 모집단을 비교할 때는 Two-sample t-test를 사용하지만 (예: 흡연자와 비흡연자의 평균 수명 비교), 세 개 이상의 집단을 비교할 때는 일원분산분석인 ANOVA를 사용합니다. ANOVA의 핵심 개념은 여러 모집단의 평균이 서로 같은지 다른지를 비교하는 것으로, 이는 귀무가설 $H_0: \mu_1 = \mu_2 = \mu_3 = ... = \mu_k$를 통해 검정합니다. 이때 중요한 전제조건은 비교하고자 하는 모든 모집단의 분산이 동일해야 한다는 점입니다.
정의와 필요성
구분 | 내용 | 비고 |
---|---|---|
의미 | Analysis of Variance (분산분석) | 3개 이상 집단 비교 시 사용 |
2개 집단 비교 | Two-sample t-test | - |
3개 이상 집단 비교 | ANOVA | 모든 집단의 분산이 동일해야 함 |
기본 수식
구분 | 수식 | 설명 |
---|---|---|
귀무가설 | $H_0: \mu_1 = \mu_2 = \mu_3 = ... = \mu_k$ | 모든 모집단의 평균이 같다 |
F-통계량 | $F = \frac{MSA}{MSE}$ | 그룹 간/내 변동 비율 |
🌟 통계적 개념
자유도(Degrees of Freedom)
데이터가 자유롭게 변할 수 있는 정도를 나타내는 값입니다.
- 전체 자유도 = 전체 데이터 수 - 1
- 처리 자유도 = 그룹 수 - 1
- 오차 자유도 = 전체 자유도 - 처리 자유도
그룹 간 자유도: df_{between} = k-1
그룹 내 자유도: df_{within} = N-k
(k: 그룹 수, N: 전체 데이터 수)
평균 계산
구분 | 수식 | 의미 |
---|---|---|
전체 평균 | $\bar{Y}{..} = \frac{\sum{i=1}^{a}\sum_{j=1}^{n}Y_{ij}}{N}$ | 모든 데이터의 평균 |
그룹 내 평균 | $\bar{Y}{i.} = \frac{\sum{j=1}^{n}Y_{ij}}{n}$ | 각 그룹별 평균 |
그룹 간 평균 | $\bar{Y}{.j} = \frac{\sum{i=1}^{a}Y_{ij}}{a}$ | 그룹 간 평균 비교값 |
변동(Sum of Squares)의 종류
- 전체 변동(SST) | 모든 데이터의 전체적인 변화량
- 처리 변동(SSA) | 그룹 간의 차이에서 발생하는 변화량
- 오차 변동(SSE) | 같은 그룹 내에서 발생하는 변화량
- 표본 평균의 계산 방법
- 각 수준(i=1,...,k)의 표본 평균 |
$\hat{\mu}_i = \bar{Y}_{i.} = \frac{\sum_{j=1}^n Y_{ij}}{n}$분포 수식 특징 카이제곱 분포 $X \sim \chi^2(k)$ 자유도 증가 시 정규분포에 근사 F 분포 $F \sim F(k_1, k_2)$ 두 카이제곱 분포의 비율 샘플 분산 $s^2 = \frac{\sum_{i=1}^{n}(x_i - \bar{x})^2}{n-1}$ n-1로 나누어 편향 보정 - 전체 표본 평균 |
$\hat{\mu} = \bar{Y}_{..} = \frac{\sum_{i=1}^k\sum_{j=1}^n Y_{ij}}{nk}$
- 각 수준(i=1,...,k)의 표본 평균 |
주요 통계량
- F-통계량 | $F = \frac{MSA}{MSE}$
- 샘플 분산 | $s^2 = \frac{\sum_{i=1}^{n}(x_i - \bar{x})^2}{n-1}$
- 카이제곱 분포 | $X \sim \chi^2(k)$ * F 분포: $F \sim F(k_1, k_2)$
🌟 ANOVA 표 구조
요인 | 자유도(DF) | 제곱합(SS) | 평균제곱(MS) | F 값 |
---|---|---|---|---|
처리 | k-1 | SSA | MSA | F* |
오차 | k(n-1) | SSE | MSE | |
전체 | nk-1 | SST |
변동(SS) 계산
$SST = \sum(각 관측값 - 전체평균)^2$
$SSA = n \times \sum(그룹평균 - 전체평균)^2$
$SSE = \sum(각 관측값 - 해당 그룹평균)^2$
평균제곱(MS) 계산
평균제곱(MS) 계산: $MSA = \frac{SSA}{k-1}$ [k는 그룹 수]
$MSE = \frac{SSE}{k(n-1)}$ [n은 각 그룹의 표본 수]
실제 적용 예시
< 예시 1 >
공부 방법 비교
- 방법: 인디비주얼, 그룹스터디, 혼자공부
- 데이터: 각 방법별 4명의 시험 점수
- 가설: $H_0: \mu_1 = \mu_2 = \mu_3$
학생들의 수학 공부 방법을 세 가지(개인+그룹 혼합학습, 그룹 학습만, 개인 학습만)로 나누어 어떤 방법이 더 효과적인지 비교하려고 합니다. 각 방법별로 4명의 학생 점수가 있고, 우리가 알고 싶은 것은 "과연 이 세 가지 공부 방법에 따른 점수 차이가 실제로 있는가?" 입니다.
이럴 때 ANOVA(분산분석)를 사용하는데, 우선 귀무가설을 세웁니다
"세 가지 공부 방법의 평균 점수는 모두 같다" ($H_0: \mu_1 = \mu_2 = \mu_3$)
데이터를 보면
- 혼합학습(개인+그룹): 80, 70, 85, 89점 (평균 81점)
- 그룹학습: 60, 55, 58, 62점 (평균 58.75점)
- 개인학습: 65, 60, 62, 58점 (평균 61.25점)
단순히 평균만 봐도 혼합학습이 다른 방법들보다 20점 정도 높습니다. 하지만 이 차이가 통계적으로 의미가 있는지를 ANOVA로 검정해봐야 합니다. ANOVA를 통해 이 차이가 우연히 발생한 것인지, 아니면 실제로 공부 방법 때문에 생긴 차이인지 알 수 있죠.
이런 데이터를 보면, 혼합학습이 다른 방법들보다 확실히 좋은 결과를 보이는 것 같습니다. 통계적 검정을 통해 이 차이가 유의미하다고 나온다면, 학생들에게 개인학습과 그룹학습을 적절히 혼합하는 방법을 추천할 수 있겠네요.
< 예시 2 >
연성철(ductile iron)의 담금질 온도(annealing temperature)가 인장강도(tensile strength)에 미치는 영향을 조사하는 실험이 제시되어 있습니다. 이 실험에서는 750°C, 800°C, 850°C, 900°C 네 가지 온도 조건에서 각각 5개의 샘플 값을 측정했습니다.
일원분산분석 모델의 수학적 표현이 제시되어 있습니다. 모델은 다음과 같이 표현됩니다.
$Y_{ij} = μi + ε{ij}$
$Y_{ij}$는 i번째 수준의 j번째 관측값
$μi$는 알려지지 않은 모수(진정한 평균)
$ε{ij}$는 평균이 0이고 분산이 $σ^2$인 정규분포를 따르는 독립적인 무작위 오차입니다.
< 예시 mobility >
치료 효과 비교
세 가지 다른 치료 방법이 환자들의 이동성에 미치는 영향을 분석합니다. 높은 점수일수록 이동성이 좋다는 것을 의미합니다. 연구에는 세 그룹이 포함됩니다.
- 대조군: 치료 없음
- 물리치료군: 물리치료만 실시
- 복합치료군: 상담과 물리치료 모두 실시]
[ 정리 ]
- 그룹: 컨트롤, 물리치료, 카운셀링+물리치료
- 분석: 모빌리티 스코어 비교
- 결과 해석: F값과 유의수준 비교
가설 설정
- 귀무가설(H₀): 세 그룹의 평균이 모두 같다 (m_control = m_physical = m_counseling&physical)
- 대립가설(H₁): 적어도 두 그룹의 평균이 다르다
- 유의수준: α = 0.05
데이터 분석 결과
전체 평균 = 41.7
그룹별 평균
- 대조군 = 36.0
- 물리치료군 = 44.0
- 복합치료군 = 45.0
🌟 분산분석 계산
그룹 | SSE 계산 | 결과 |
---|---|---|
대조군 | Σ(x - 36)² | 118 |
물리치료군 | Σ(x - 44)² | 122 |
복합치료군 | Σ(x - 45)² | 142 |
총 SSE | 382 |
F-통계량 계산
F = MSA/MSE = 146/25.47 = 5.73
해석 방법
- F-통계량이 크면(5.73) 그룹 간 차이가 그룹 내 차이보다 크다는 의미
- ANOVA는 그룹 간 차이의 존재 여부만 알려주며, 어떤 그룹들이 다른지는 알려주지 않음
- 그룹 간 구체적인 차이를 알기 위해서는 사후 검정이 필요
SSE(그룹 내 변동) = 382 : 각 그룹 내의 변동성 MSA/MSE > F-critical : 귀무가설 기각 가능성 높음 F = 5.73 : 그룹 간 유의미한 차이 존재
p-값 계산
ANOVA의 F-통계량에 대한 p-값을 계산하는 과정을 보여줍니다.
F-통계량 = 5.73
자유도: 분자 = 2 (그룹 수-1)
분모 = 15 (전체 관측수-그룹 수)
유의수준(α) = 0.05
- p-값(0.014) < 유의수준(0.05)이므로 귀무가설 기각
- 결론: 적어도 두 그룹의 평균이 통계적으로 유의미하게 다름
- 추가 분석 필요성: 구체적으로 어떤 그룹들이 다른지 확인하기 위해 다중비교검정 필요
ANOVA 결과표
요약 통계량
그룹 | 표본수 | 합계 | 평균 | 분산 |
---|---|---|---|---|
대조군 | 6 | 216 | 36 | 23.6 |
물리치료 | 6 | 264 | 44 | 24.4 |
복합치료 | 6 | 270 | 45 | 28.4 |
ANOVA 분석 결과
변동요인 | SS | df | MS | F | P-value |
---|---|---|---|---|---|
Level | 292 | 2 | 146 | 5.73 | 0.014 |
Error | 382 | 15 | 25.47 | ||
Total | 674 | 17 |
- 처리 효과가 통계적으로 유의미함 (p < 0.05)
- 세 그룹의 치료 효과가 다름을 확인
- 어떤 그룹들이 서로 다른지 확인하기
🌟 Jackknife 추정 참고
구분 | 내용 | 설명 |
---|---|---|
목적 | 모든 관측치에 대한 추정값 도출 | 알려지지 않은 새로운 레벨의 추정에 활용 |
기본 수식 | $\hat{\mu}_i = \frac{n-1}{n}\sum_{j=1}^{n} y_{(j)}$ | i번째 레벨의 평균 추정값 계산 |
- $\hat{\mu}_i$: i번째 레벨의 평균 추정값
- $y_{ij}$: i번째 레벨의 j번째 관측치
- n: 총 관측치 개수
활용 방법
- 레벨 간 차이 확인
- ssa와 sse 값 비교
- 레벨 간 차이의 유의성 판단
- 유도 과정
1단계: i번째 레벨의 모든 관측치 합산 2단계: 관측치 수로 나누어 평균 계산 3단계: 새로운 레벨의 추정값 도출
- 결과 해석
- ssa > sse: 레벨 간 차이 존재
- ssa < sse: 레벨 내 변동이 커서 차이 판단 어려움
🌟 분석 절차
- 가설 설정
- $H_0$: 모든 그룹의 평균이 같다
- $H_1$: 적어도 한 그룹의 평균이 다르다
- 계산 과정
- MSA, MSE 계산
- F-통계량 도출
- 유의수준과 비교
- 결과 해석
- F값이 크면 그룹 간 차이가 큼
- 필요시 사후 검정 실시
- ssa, sse 값으로 레벨 간 차이 판단
🌟 결과 해석
F-통계량 해석
F값 특성 | 의미 | 후속 조치 |
---|---|---|
F > F 임계값 | 귀무가설 기각 | 사후 검정 필요 |
F ≤ F 임계값 | 귀무가설 채택 | 추가 분석 불필요 |
레벨 간 차이 분석
ssa값과 sse값 비교:
- ssa가 큰 경우 → 그룹 간 차이 명확
- sse가 큰 경우 → 그룹 내 변동이 커서 차이 판단 어려움
주의사항
ANOVA 사용 전 체크리스트
- 모든 집단의 분산 동일성 확인
- 데이터의 정규성 검정
- 독립성 가정 확인
- 충분한 표본 크기 확보
실무 적용 시 고려사항
상황 | 해결방안 | 비고 |
---|---|---|
표본 크기 불균형 | 조화평균 사용 | 그룹별 크기 차이가 클 때 |
이상치 존재 | 비모수 검정 고려 | Kruskal-Wallis 검정 등 |
분산 불균일 | Welch's ANOVA | Brown-Forsythe 검정도 가능 |
🌟 종합 정리
ANOVA의 장점
- 다중 비교 시 1종 오류 통제
- 효율적인 그룹 간 차이 검정
- 체계적인 변동성 분석 가능
한계점
- 평균만 비교 가능
- 정규성, 등분산성 가정 필요
- 어떤 그룹 간 차이인지 직접 알 수 없음
'개인공부 > 기초 수학' 카테고리의 다른 글
고윳값 분해와 푸리에 변환의 관계 (0) | 2025.01.14 |
---|---|
Mathematical Definitions in Data Science (1) | 2025.01.09 |
[용어] 아벨군(Abelian Group) (0) | 2025.01.03 |
[머신러닝 수학의 바이블] 선형대수학 - 보충편 (0) | 2025.01.03 |
[머신러닝 수학의 바이블] 선형대수학 Part 4 - 차원과 선형변환 (0) | 2025.01.03 |