GLM 도입과 단일·두 그룹 모형

Y = μ + ε 에서 시작하는 모형 비교 — 최소제곱 추정과 t 검정의 재해석

일반선형모형 (General Linear Model) 의 구조와 단일 그룹·두 그룹 사례를 Maxwell Ch.3 의 모형 비교 관점으로 정리한다. 최소제곱 추정의 정당성, 표본 평균이 LSE 인 이유의 대수적 증명, one-sample t 검정과 two-sample t 검정이 모형 비교의 특수 사례라는 통찰을 다룬다.

Experimentation
Fundamentals
저자

Kwangmin Kim

공개

2026년 05월 08일

1 도입 — 가장 단순한 모형부터

ANOVA 를 3 그룹 이상 의 검정으로 시작하면 수식의 짐이 무겁다. Maxwell 은 한 그룹 사례부터 시작한다. 이 글은 그 점진성을 따라가며 왜 모형 비교 관점이 자연스러운가 를 보여준다.

순서:

  1. 일반선형모형 (GLM) 의 일반 형태
  2. One-Group 사례 — \(Y_i = \mu + \varepsilon_i\)
  3. 최소제곱 추정 — 표본 평균이 LSE 인 이유
  4. Two-Group 사례 — \(Y_i = \mu_j + \varepsilon_i\) (\(j \in \{1, 2\}\))
  5. 두 모형의 SSE 비교 = t 검정 = F 검정의 특수 사례

2 일반선형모형 — 모든 분석의 토대

정의: 일반선형모형 (General Linear Model)

종속 변수 \(Y\)예측 변수의 선형 결합 + 무작위 오차 로 표현되는 모형이다.

\[ Y_i = \beta_0 X_{0i} + \beta_1 X_{1i} + \beta_2 X_{2i} + \cdots + \beta_p X_{pi} + \varepsilon_i \]

  • \(Y_i\): \(i\) 번째 관측의 종속 변수
  • \(X_{ji}\): \(i\) 번째 관측의 \(j\) 번째 예측 변수 값
  • \(\beta_j\): 효과 모수 (모집단 값, 미지)
  • \(\varepsilon_i\): \(i\) 번째 잔차 (무작위)

이 모형은 t 검정, ANOVA, ANCOVA, 회귀, 다원 ANOVA 까지 모두 특수 사례 로 포함한다.

핵심 아이디어는 다음과 같다.

  • = 관측 (개인, 시점, plot 등)
  • = 예측 변수 (그룹 라벨, 공변량, 시간 등)
  • 모수 = 각 예측 변수의 효과 크기

이 구조 안에서 어떤 예측 변수를 모형에 포함할지 가 모형 선택 (model selection) 이다. 그리고 두 모형 (full, restricted) 의 비교 가 가설 검정이다.

직관 — GLM 의 단계적 일반화

GLM 을 다음과 같이 단계적으로 본다.

모형 의미
절편만 \(Y_i = \mu + \varepsilon_i\) 평균 추정 (one-group)
그룹 라벨 \(Y_i = \mu_j + \varepsilon_i\) 그룹별 평균 (two-group, ANOVA)
연속 예측 변수 \(Y_i = \beta_0 + \beta_1 X_i + \varepsilon_i\) 단순 회귀
다중 예측 변수 \(Y_i = \beta_0 + \sum_j \beta_j X_{ji} + \varepsilon_i\) 다중 회귀, ANOVA
상호작용 포함 \(Y_i = \cdots + \beta_{12} X_{1i} X_{2i} + \cdots\) 요인 설계

이 표는 ANOVA·회귀·요인 설계가 같은 가족 임을 보여 준다. 절편만 모형에서 시작하여 예측 변수를 점진적으로 추가하면 모든 분석이 자연스럽게 구성된다.

이 통합 시각이 모형 비교 관점의 위력이다. 학생이 t 검정·ANOVA·회귀·ANCOVA 를 별개의 절차 로 외울 필요 없이, GLM 의 어떤 특수 사례인가 만 이해하면 된다.

3 One-Group 사례 — \(\widehat{\mu} = \bar{Y}\) 의 정당성

가장 단순한 사례는 한 그룹의 평균 추정이다. 모형:

\[ Y_i = \mu + \varepsilon_i, \quad i = 1, 2, \ldots, n \]

이 모형은 종속 변수 \(Y\) 가 모집단 평균 \(\mu\) 와 개인별 무작위 오차 \(\varepsilon_i\) 의 합이라고 가정한다.

3.1 모수 추정 — 어떻게 \(\widehat{\mu}\) 를 정하는가

\(Y_i = \mu + \varepsilon_i\)\(n\) 개의 관측에 대해 \(n\) 개의 식이고, 미지수는 \(\mu\) 1 개와 \(\varepsilon_i\) \(n\) 개로 총 \(n+1\) 개이다. 미지수가 더 많으므로 추가 제약 이 필요하다.

자연스러운 제약: 예측 오차가 평균적으로 작아지도록 \(\widehat{\mu}\) 를 고른다. 그런데 단순히 오차의 합 을 작게 하면 양수 오차와 음수 오차가 상쇄된다. 따라서 제곱한 오차의 합 을 최소화한다.

정의: 최소제곱 기준 (Least Squares Criterion)

잔차 제곱합 \(\sum_{i=1}^{n} (Y_i - \widehat{\mu})^2\) 을 최소화하는 \(\widehat{\mu}\)최소제곱 추정량 (LSE) 으로 정의한다.

\[ \widehat{\mu} = \arg\min_{c} \sum_{i=1}^{n} (Y_i - c)^2 \]

3.2 정리: \(\widehat{\mu} = \bar{Y}\) 가 LSE

표본 평균 \(\bar{Y} = \frac{1}{n} \sum Y_i\) 가 위 최소제곱 문제의 해이다. 즉

\[ \widehat{\mu} = \bar{Y} \]

3.3 증명

임의의 상수 \(C\) 에 대해 잔차 제곱합을 분해한다. 핵심 트릭은 \(\bar{Y}\) 를 더했다 빼는 것이다.

\[ \sum (Y_i - C)^2 = \sum (Y_i - \bar{Y} + \bar{Y} - C)^2 \]

전개하면

\[ = \sum (Y_i - \bar{Y})^2 + 2 (\bar{Y} - C) \sum (Y_i - \bar{Y}) + \sum (\bar{Y} - C)^2 \]

여기서 \(\sum (Y_i - \bar{Y}) = 0\) 이므로 중간항이 사라진다. 또한 \(\sum (\bar{Y} - C)^2 = n (\bar{Y} - C)^2\) 이므로,

\[ \sum (Y_i - C)^2 = \sum (Y_i - \bar{Y})^2 + n (\bar{Y} - C)^2 \tag{$\star$} \]

오른쪽 두 항 모두 비음수이고, 두 번째 항 \(n (\bar{Y} - C)^2\)\(C = \bar{Y}\) 일 때만 0 이 된다. 따라서 \(C = \bar{Y}\) 가 잔차 제곱합을 최소화한다. \(\square\)

직관 — 식 \((\star)\) 의 시각적 의미

\((\star)\) 는 ANOVA 의 분산 분해 의 가장 단순한 형태다. 잔차 제곱합을 두 부분으로 나눈다.

  • \(\sum (Y_i - \bar{Y})^2\)최소 잔차 (모형이 자유로울 때)
  • \(n (\bar{Y} - C)^2\)추가 잔차 (모형을 \(\mu = C\) 로 제한할 때)

이 분해가 ANOVA 의 핵심인가? 가설 검정에서 우리는 두 모형을 비교한다.

  • Full: \(Y_i = \mu + \varepsilon_i\)\(\mu\) 자유 → 잔차 \(\sum (Y_i - \bar{Y})^2\)
  • Restricted: \(Y_i = \mu_0 + \varepsilon_i\)\(\mu = \mu_0\) 고정 → 잔차 \(\sum (Y_i - \mu_0)^2\)

\((\star)\) 에서 \(C = \mu_0\) 으로 놓으면, 두 모형의 잔차 차이\(n (\bar{Y} - \mu_0)^2\) 이다. 이 양이 클수록 제한 모형이 부족하다 — 즉 \(H_0: \mu = \mu_0\) 가 거짓일 가능성이 크다. 이 양을 적절히 정규화한 것이 t 통계량 (또는 \(F = t^2\)) 이다.

4 One-Sample t 검정의 재해석

이제 one-sample t 검정을 모형 비교로 재해석한다.

4.1 두 모형

  • Full model: \(Y_i = \mu + \varepsilon_i\)\(\mu\) 는 미지, 자유롭게 추정
  • Restricted model: \(Y_i = \mu_0 + \varepsilon_i\)\(\mu = \mu_0\) 으로 고정 (예: \(\mu_0 = 100\))

4.2 잔차 제곱합

\((\star)\) 에서 \(C = \mu_0\) 으로 놓으면:

\[ \text{SSE}_R = \text{SSE}_F + n (\bar{Y} - \mu_0)^2 \]

즉 제한 모형의 잔차 제곱합 = 전체 모형의 잔차 제곱합 + \(n (\bar{Y} - \mu_0)^2\).

4.3 F 통계량

\[ F = \frac{(\text{SSE}_R - \text{SSE}_F) / 1}{\text{SSE}_F / (n-1)} = \frac{n (\bar{Y} - \mu_0)^2}{s^2} \]

여기서 \(s^2 = \text{SSE}_F / (n-1) = \frac{1}{n-1} \sum (Y_i - \bar{Y})^2\) 는 표본 분산이다.

4.4 t 통계량과의 관계

전통적인 one-sample t 통계량은:

\[ t = \frac{\bar{Y} - \mu_0}{s / \sqrt{n}} \]

이를 제곱하면:

\[ t^2 = \frac{n (\bar{Y} - \mu_0)^2}{s^2} = F \]

one-sample t 검정 = 모형 비교 F 검정. 두 검정은 수학적으로 동치 이다.

4.5 함의

이 동치성이 무엇을 시사하는가?

  1. t 검정도 사실은 모형 비교다. “두 모형 중 어느 것이 더 자료를 잘 설명하는가” 를 묻는다.
  2. F 의 분포가 t 의 분포의 제곱. \(F_{1, n-1} = (t_{n-1})^2\).
  3. 확장성. 두 그룹, 여러 그룹으로 확장할 때 F 통계량의 형태는 그대로 유지 된다.

5 Two-Group 사례 — 일반화

이제 두 그룹의 평균 비교로 확장한다. 모형:

\[ Y_{ij} = \mu_j + \varepsilon_{ij}, \quad j \in \{1, 2\}, \; i = 1, \ldots, n_j \]

\(\mu_j\) 는 그룹 \(j\) 의 모집단 평균이다.

5.1 모수 추정

각 그룹의 LSE 는 그룹별 표본 평균이다.

\[ \widehat{\mu}_1 = \bar{Y}_1, \quad \widehat{\mu}_2 = \bar{Y}_2 \]

이는 일변수 사례의 직접 확장이다. 각 그룹에 대해 식 \((\star)\) 를 적용하면 그룹별 표본 평균이 잔차 제곱합을 최소화함을 알 수 있다.

5.2 두 모형

  • Full model: \(Y_{ij} = \mu_j + \varepsilon_{ij}\) — 그룹마다 다른 평균 (\(\mu_1, \mu_2\) 각자 추정)
  • Restricted model: \(Y_{ij} = \mu + \varepsilon_{ij}\) — 모든 그룹이 같은 평균 (\(\mu_1 = \mu_2 = \mu\))

귀무가설 \(H_0: \mu_1 = \mu_2\)restricted model 이 충분하다 와 동치이다.

5.3 잔차 제곱합

  • \(\text{SSE}_F = \sum_{i, j} (Y_{ij} - \bar{Y}_j)^2\) — 각 그룹 평균에 대한 잔차
  • \(\text{SSE}_R = \sum_{i, j} (Y_{ij} - \bar{Y})^2\) — 전체 평균에 대한 잔차 (\(\bar{Y}\) 는 전체 평균)

대수적으로 다음 관계가 성립한다 (분산의 between-within 분해).

\[ \text{SSE}_R = \text{SSE}_F + \sum_{j=1}^{2} n_j (\bar{Y}_j - \bar{Y})^2 \tag{$\star\star$} \]

오른쪽 두 번째 항이 그룹 간 제곱합 (sum of squares between, \(\text{SS}_B\)) 이다.

5.4 F 통계량

\[ F = \frac{\text{SS}_B / 1}{\text{SSE}_F / (n_1 + n_2 - 2)} = \frac{n_1 (\bar{Y}_1 - \bar{Y})^2 + n_2 (\bar{Y}_2 - \bar{Y})^2}{s_p^2} \]

여기서 \(s_p^2 = \text{SSE}_F / (n_1 + n_2 - 2)\) 는 풀링된 분산이다.

5.5 Two-Sample t 와의 관계

두 그룹 비교의 t 통계량:

\[ t = \frac{\bar{Y}_1 - \bar{Y}_2}{s_p \sqrt{1/n_1 + 1/n_2}} \]

이를 제곱하면 위 F 와 같다. 다시 한 번:

\[ F_{1, n_1 + n_2 - 2} = (t_{n_1 + n_2 - 2})^2 \]

직관 — 두 그룹 사례에서 SSE 분해

\((\star\star)\) 의 의미를 시각적으로 본다.

자료를 두 그룹의 점들로 그리고, 두 가지 평균 라인을 그린다.

  • 전체 평균 \(\bar{Y}\) — 한 개의 가로선
  • 그룹별 평균 \(\bar{Y}_1, \bar{Y}_2\) — 그룹 영역에 따라 두 개의 가로선

각 점에서 전체 평균 라인까지의 수직 거리 제곱합이 \(\text{SSE}_R\) 이다. 각 점에서 자기 그룹 평균 라인까지의 수직 거리 제곱합이 \(\text{SSE}_F\) 이다.

만약 두 그룹 평균이 전체 평균과 같다면 (\(H_0\) 참), 두 라인이 일치하고 \(\text{SSE}_F = \text{SSE}_R\). 이 경우 F 의 분자가 0 이라 F = 0. 만약 두 그룹 평균이 멀리 떨어져 있다면, 그룹 라인이 전체 라인보다 자료에 잘 맞아 \(\text{SSE}_F < \text{SSE}_R\). 이 차이가 \(\text{SS}_B\) 이고 F 의 분자가 된다.

따라서 F 통계량은 “그룹 라인이 전체 라인보다 얼마나 더 자료에 맞는가” 를 정량화한 것이다. 이 직관이 모형 비교의 본질이다.

6 두 그룹 검정의 두 가지 분해

두 그룹 검정의 잔차 제곱합 분해는 다음과 같다.

\[ \underbrace{\text{SS}_T}_{\text{전체}} = \underbrace{\text{SS}_B}_{\text{그룹 간}} + \underbrace{\text{SS}_W}_{\text{그룹 내}} \]

여기서

  • \(\text{SS}_T = \sum_{i, j} (Y_{ij} - \bar{Y})^2\) — 전체 자료의 변동
  • \(\text{SS}_B = \sum_j n_j (\bar{Y}_j - \bar{Y})^2\) — 그룹 평균이 전체 평균과 다름으로 인한 변동
  • \(\text{SS}_W = \sum_{i, j} (Y_{ij} - \bar{Y}_j)^2 = \text{SSE}_F\) — 그룹 내 잔차

이 분해가 분산의 분석 (analysis of variance) 의 어원이다. 자료의 전체 변동그룹 간 변동그룹 내 변동 으로 분해한다.

6.1 자유도의 분배

\[ \underbrace{n - 1}_{\text{SS}_T \text{ 자유도}} = \underbrace{1}_{\text{SS}_B \text{ 자유도}} + \underbrace{n - 2}_{\text{SS}_W \text{ 자유도}} \]

자유도의 의미:

  • \(\text{SS}_T\) 의 자유도는 \(n - 1\) (전체 평균 1 개를 추정했으므로)
  • \(\text{SS}_B\) 의 자유도는 \(J - 1 = 2 - 1 = 1\) (그룹 평균 1 개의 자유로움)
  • \(\text{SS}_W\) 의 자유도는 \(n - J = n - 2\) (각 그룹에서 평균 1 개씩 추정했으므로)

이 자유도가 F 분포의 모수가 된다: \(F_{J-1, n-J}\).

7 평균 제곱 (Mean Squares)

각 SS 를 자유도로 나눈 것이 평균 제곱 (mean square, MS) 이다.

\[ \text{MS}_B = \frac{\text{SS}_B}{J - 1}, \quad \text{MS}_W = \frac{\text{SS}_W}{n - J} \]

F 통계량은 두 MS 의 비율이다.

\[ F = \frac{\text{MS}_B}{\text{MS}_W} \]

전통적으로 ANOVA 표는 다음 형식이다.

Source SS df MS F
Between \(\text{SS}_B\) \(J - 1\) \(\text{MS}_B\) \(\text{MS}_B / \text{MS}_W\)
Within (Error) \(\text{SS}_W\) \(n - J\) \(\text{MS}_W\)
Total \(\text{SS}_T\) \(n - 1\)

이 표가 ANOVA 출력의 표준 형식이며, 두 그룹 사례에서 시작해 일반 그룹 수로 자연스럽게 확장된다.

8 \(F = t^2\) 의 함의

두 그룹 비교에서 \(F = t^2\) 라는 사실은 깊은 함의를 가진다.

측면 t 검정 F 검정
검정 대상 두 평균 차이 모형 비교
분포 \(t_{n-2}\) \(F_{1, n-2}\)
양측·단측 양측·단측 모두 가능 본질적으로 양측
자유도 \(n - 2\) \(1, n - 2\)
일반화 두 그룹에 한정 임의 그룹 수에 적용

t 검정은 방향성 (한쪽 그룹이 더 큰가?) 을 다룰 수 있지만, F 검정은 본질적으로 차이의 존재 여부 만 검정한다. 두 그룹 사례에서는 t 검정이 약간 더 정보를 준다.

그러나 세 그룹 이상 으로 확장하면 t 검정은 직접 사용할 수 없고, F 검정이 자연스럽게 일반화된다. 따라서 ANOVA 의 표준은 F 검정이다.

9 코드 예시 — 모형 비교로서의 t 검정

import numpy as np
import pandas as pd
from scipy.stats import ttest_ind, f
from statsmodels.formula.api import ols
import statsmodels.api as sm

np.random.seed(42)
n_each = 20
group_A = np.random.normal(5.0, 1.0, n_each)
group_B = np.random.normal(5.8, 1.0, n_each)

# 1. 표준 t 검정 (Welch 가정 X)
t_stat, p_t = ttest_ind(group_A, group_B, equal_var=True)
print(f"t = {t_stat:.3f}, p = {p_t:.4f}")
print(f"t² = {t_stat**2:.3f}")

# 2. 모형 비교로서의 F 검정
data = pd.DataFrame({
    'y': np.concatenate([group_A, group_B]),
    'group': ['A']*n_each + ['B']*n_each
})
model_full = ols('y ~ C(group)', data=data).fit()
model_restricted = ols('y ~ 1', data=data).fit()
anova_table = sm.stats.anova_lm(model_restricted, model_full)
print(anova_table)

# 3. F = t² 확인
f_stat = anova_table['F'].iloc[1]
print(f"F = {f_stat:.3f}, t² = {t_stat**2:.3f}, 일치 여부: {np.isclose(f_stat, t_stat**2)}")

# 4. SSE 분해 직접 확인
y_all = np.concatenate([group_A, group_B])
y_overall_mean = y_all.mean()
sse_restricted = ((y_all - y_overall_mean)**2).sum()  # SST
sse_full = ((group_A - group_A.mean())**2).sum() + ((group_B - group_B.mean())**2).sum()  # SSW
ss_between = sse_restricted - sse_full

print(f"\nSSE_R (restricted, SST) = {sse_restricted:.2f}")
print(f"SSE_F (full,       SSW) = {sse_full:.2f}")
print(f"SS_Between             = {ss_between:.2f}")
print(f"F = (SS_B / 1) / (SSE_F / df) = {(ss_between / 1) / (sse_full / (2*n_each - 2)):.3f}")

이 코드의 마지막 블록은 F 통계량을 두 모형의 SSE 차이로 직접 계산 한다. 이는 표준 t 검정 결과와 일치하며, 모형 비교 관점이 완전히 동등한 표현 임을 보여 준다.

10 후속 — 일반 그룹 사례로

이 글에서는 한 그룹과 두 그룹 사례를 다뤘다. 다음 글 A-MAX3-2 는 임의의 J 그룹 사례로 일반화한다. 핵심 변화는 다음과 같다.

  • 그룹 수 \(J\) 가 임의로 일반화 (\(J = 2\)\(J = 3, 4, \ldots\))
  • 자유도가 \(J - 1\)\(n - J\) 로 일반화
  • F 분포의 모수가 \(F_{J-1, n-J}\) 로 일반화

수식 형태는 동일하게 유지된다. 이것이 모형 비교 관점의 우아함 이다.

11 관련 주제

선행 지식

후속 주제 (Phase A)

다른 카테고리 연결

Subscribe

Enjoy this blog? Get notified of new posts by email: