\(v \times 2^2\) 비대칭 설계와 분석

Montgomery Ch.4.4-4.5 v×2² Design · Analysis

\(v\) 개 levels 의 한 요인 + 두 개 2-수준 요인 의 비대칭 factorial 설계의 구성과 분석 절차를 정리한다. 양적 \(A\) 의 직교 다항식 분해, 산업 실험의 흔한 형태, ML 응용까지 통합 다룬다.

Experimentation
DOE
저자

Kwangmin Kim

공개

2026년 05월 08일

1 정의

정의: \(v \times 2^2\) Design

요인 \(A\)\(v\) 수준, 요인 \(B, C\) 가 각 2 수준. 셀 수 \(4v\).

산업 사례: 처치 종류 (4 가지) × 온도 (저/고) × 압력 (저/고).

2 효과 분해

Effect \(df\)
\(A\) \(v - 1\)
\(B\) 1
\(C\) 1
\(A \times B\) \(v - 1\)
\(A \times C\) \(v - 1\)
\(B \times C\) 1
\(A \times B \times C\) \(v - 1\)
Error \(4v(n-1)\)

총 효과 자유도: \(v - 1 + 1 + 1 + (v-1) + (v-1) + 1 + (v-1) = 4v - 1\). ✓

3 \(A\) 가 양적이면 직교 다항식 분해

\(v = 4\) 등간격 양적 요인 \(A\):

  • \(A_L\) (linear): 자유도 1
  • \(A_Q\) (quadratic): 자유도 1
  • \(A_C\) (cubic): 자유도 1

\(A \times B, A \times C, A \times B \times C\) 도 다항식으로 분해. 총 자유도 보존.

직관: Trend 분해의 가치

\(A\) 가 양적이면: - \(A_L\) 강함: 선형 효과 (단조 증가/감소). - \(A_Q\) 강함: 곡률 (역 U 자, U 자). - \(A_C\) 강함: 비단조 (S 자).

\(A \times B_L\): \(A\) 의 선형 추세가 \(B\) 에 따라 다른가? \(A \times B_Q\): \(A\) 의 곡률이 \(B\) 에 따라 다른가?

각 1 자유도 contrast 가 의미 있는 가설을 검정.

4 ANOVA — 가설 데이터

\(v = 3\) 처치 (A, B, C), \(B\) = 온도 (low/high), \(C\) = 압력 (low/high). 각 셀 \(n = 5\).

Source \(df\) \(F\) \(p\)
\(A\) 2 25 \(<0.001\)
\(B\) 1 12 0.001
\(C\) 1 8 0.005
\(A \times B\) 2 4 0.024
\(A \times C\) 2 1.5 0.235
\(B \times C\) 1 0.8 0.376
\(A \times B \times C\) 2 0.5 0.610
Error 48

해석: - 주효과 모두 유의. - \(A \times B\) 약한 상호작용. - 다른 상호작용 비유의.

5 \(v = 4\) 의 trend 분해 — 가설

\(A\) = dose (1, 2, 4, 8 mg, log 등간격). \(\log_2 A \in \{0, 1, 2, 3\}\) 등간격.

직교 다항식: - Linear: \((-3, -1, +1, +3)\). - Quadratic: \((+1, -1, -1, +1)\). - Cubic: \((-1, +3, -3, +1)\).

각 contrast 의 SS 와 \(F\).

효과 \(F\) \(p\)
\(A_L\) 80 \(<0.001\) — 강한 선형
\(A_Q\) 5 0.03 — 약한 곡률
\(A_C\) 0.5 0.5 — 비유의
\(B\)

해석: \(A\) (dose) 가 양적이고 응답이 거의 선형 증가 (작은 곡률).

6 Python 코드

import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols

np.random.seed(2026)
n = 5
v = 3
A_levels = [0, 1, 2]
B_levels = [0, 1]
C_levels = [0, 1]

records = []
for a in A_levels:
    for b in B_levels:
        for c in C_levels:
            mu = 50 + 3*a - 1 + 2*(2*b-1) + 1*(2*c-1) + 0.5*a*(2*b-1)
            for _ in range(n):
                records.append({"A": a, "B": b, "C": c, "Y": np.random.normal(mu, 2)})

data = pd.DataFrame(records)
model = ols("Y ~ C(A) * C(B) * C(C)", data=data).fit()
print(sm.stats.anova_lm(model, typ=2).round(3))

# Trend decomposition (양적 A)
data["A_lin"] = data["A"] - 1  # -1, 0, 1
data["A_quad"] = (data["A"] - 1)**2 - 2/3

model_trend = ols(
    "Y ~ A_lin + A_quad + C(B) + C(C) + A_lin:C(B) + A_quad:C(B)",
    data=data
).fit()
print("\n=== Trend decomposition ===")
print(sm.stats.anova_lm(model_trend, typ=2).round(3))

7 응용

분야 \(A\) (\(v\) 수준) \(B, C\)
화학 처치 종류 (3~5) 온도, 압력
농학 비료 종류 (4) 관개 (있음/없음), 시기
약리 dose (4 수준) 환자 type, 측정 시점
식품 레시피 (4) 보관 온도, 시간
ML optimizer (3~4) learning rate (저/고), batch size

8 가정과 한계

  • 셀 등표본.
  • \(A\) 가 양적이면 직교 다항식 분해 권장.
  • 고차 상호작용: 보통 작음.
  • 자유도 부족: 작은 \(v\) (\(v = 2\)) 면 일반 \(2^3\) factorial.

9 본 시리즈

G-MON4-0  개관
G-MON4-1  Asymmetrical + Confounded
G-MON4-2  Construction Balanced
G-MON4-3  v×2² Analysis  ← 현재 글
G-MON4-4  Split-Plot Analysis

10 관련 주제

선행 지식

후속 주제

다른 카테고리 연결

11 더 읽을 거리

  • Cochran, W. G., Cox, G. M. (1957). “Experimental Designs” (2nd ed). Wiley.
  • Box, G. E. P., Hunter, J. S., Hunter, W. G. (2005). “Statistics for Experimenters.”
  • Das, M. N., Giri, N. C. (1986). “Design and Analysis of Experiments” (2nd ed).
  • Montgomery, D. C. (2017). “Design and Analysis of Experiments” (9th ed). Wiley.

Subscribe

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