Models for Polytomous Data — 개관

다범주 반응 데이터의 측정 척도와 모형 선택 (McCullagh & Nelder Ch.5)

반응변수가 세 개 이상의 범주를 가질 때 필요한 모형 체계를 개관한다. 측정 척도(명목·순서·구간·계층)별로 링크함수가 달라지는 이유, 비례 오즈 모형, 기준 범주 로짓, 연속로그로그 모형의 위치를 정리한다.

Statistics
GLM
저자

Kwangmin Kim

공개

2026년 04월 15일

1 들어가며 — 왜 이항 GLM 으로는 부족한가

이항 자료 GLM(Ch.4)은 반응이 성공/실패 두 값만 가질 때 완결된 이론을 제공한다. 하지만 현실의 많은 반응은 세 개 이상의 범주를 갖는다. 혈액형(O, A, B, AB), 방사선 영상의 ILO 등급(\(0/0,\, 0/1,\, \ldots,\, 3/3\)), 식품 선호도(매우 나쁨~매우 좋음), 사망 원인(생존/비암 사망/기타 암/백혈병) 등이 그 예이다.

이런 반응을 다범주 반응(polytomous response) 이라고 부른다. 단순히 이항을 확장한 것처럼 보이지만, 범주 수가 3 이상이 되는 순간 “범주들이 서로 어떤 관계를 갖는가” 라는 척도(scale)의 문제가 개입한다. 같은 3범주라도 {좋음, 보통, 나쁨}{빨강, 파랑, 노랑} 은 본질적으로 다른 대상이며, 동일한 모형으로 기술할 수 없다.

이 장의 핵심 메시지는 간단하다.

Ch.5 의 중심 주장

측정 척도(measurement scale)의 유형에 따라 질적으로 다른 링크함수가 필요하다. 순서가 있으면 누적 확률을 쓰고, 없으면 범주 확률을 직접 모형화한다. “모든 다범주 반응에 통하는 하나의 모형”은 존재하지 않는다.


2 정의 — Polytomous Response 란 무엇인가

정의: 다범주 반응 (Polytomous Response)

확률변수 \(Y\) 가 유한 개의 범주 \(\{1, 2, \ldots, k\}\) 중 하나의 값만 취할 때, \(Y\)다범주 반응이라 한다. 각 범주의 확률을

\[ \pi_j = \Pr(Y = j), \quad j = 1, \ldots, k, \qquad \sum_{j=1}^k \pi_j = 1 \]

로 표기하며, 범주 확률(category probability) 이라 부른다. 범주가 순서를 가질 때는

\[ \gamma_j = \Pr(Y \le j) = \pi_1 + \pi_2 + \cdots + \pi_j, \quad \gamma_k \equiv 1 \]

누적 확률(cumulative probability) 로 정의한다 (McCullagh & Nelder, 1989, §5.1).

\(k = 2\) 이면 이항이므로, 이 장의 대상은 사실상 \(k \ge 3\) 이다.

직관: \(\pi_j\) 는 “각 범주의 높이”, \(\gamma_j\) 는 “누적된 높이”. 범주에 순서가 없으면 “어디까지 누적했다”는 말 자체가 무의미하므로 \(\gamma_j\) 를 쓸 수 없다. 반대로 순서가 있으면 \(\gamma_j\) 가 훨씬 편리하다 — 범주 경계를 하나씩 옮기며 이항 문제로 바꿀 수 있기 때문이다.


3 핵심 원리 — 측정 척도가 링크를 결정한다

McCullagh & Nelder 는 다범주 반응을 순수 척도(pure scale) 네 가지로 분류한다.

척도 특징 예시 사용 확률
명목형(nominal) 범주 간 순서·거리 모두 없음. 교환 가능(exchangeable) 혈액형, 정당 선호 \(\pi_j\) 직접
순서형(ordinal) 순서는 있으나 간격은 의미 없음 선호도(매우 싫음~매우 좋음) \(\gamma_j\)
구간형(interval) 순서 + 범주에 수치 점수 \(s_j\) 부여 연령 구간(20대·30대·40대) \(\pi_j\) + 점수 \(s_j\)
계층형(nested) 트리 구조의 중첩 분류 생존/사망 → 원인별 사인 단계별 조건부 이항

왜 척도가 중요한가: 범주를 합치거나 쪼개도 결론이 달라지지 않아야 하기 때문이다. 순서형 반응에서 “좋음”과 “매우 좋음”을 하나로 합쳐도, 같은 공변량에 대한 효과의 방향과 크기는 유지되어야 한다. 이 범주 통합 불변성(invariance under category collapse) 을 만족시키는 것이 누적 확률 기반 모형의 존재 이유이다.

3.1\(\pi_j\) 대신 \(\gamma_j\) 인가 — 반사실적 비유

식당에서 5점 척도(“매우 만족”~“매우 불만”)로 고객 평가를 받는다고 하자. 연구 책임자가 “중간 세 등급을 ’보통’으로 합치자”고 제안한다.

  • 범주 확률 \(\pi_j\) 기반 모형: 범주를 합치면 모형의 모수 해석이 전면적으로 바뀐다. 합치기 전의 \(\beta\) 는 합친 후의 \(\beta'\) 와 동일하지 않다.
  • 누적 확률 \(\gamma_j\) 기반 모형: 남아있는 경계에서의 \(\gamma_j\) 는 그대로 보존된다. 따라서 “경계에서의 효과” 인 \(\beta\) 도 안정적으로 유지된다.

순서형 데이터에서 범주 개수·경계는 종종 임의적·주관적이다. 연구자가 바꿀 수 있는 임의 선택으로 결론이 흔들리지 않으려면, 임의 선택에 불변인 표현을 골라야 한다. 이것이 순서형에서 \(\gamma_j\) 가 주인공이 되는 근본 이유이다.


4 모형 지도 — 네 가지 가족

다범주 GLM 은 다음 네 가족으로 정리할 수 있다. 어느 것을 쓸지는 척도가 정한다.

4.1 비례 오즈 모형 (Proportional-Odds Model, 순서형)

순서형 반응의 표준 모형. 누적 확률에 로짓 링크를 건다.

\[ \log \frac{\gamma_j(\mathbf{x})}{1 - \gamma_j(\mathbf{x})} = \theta_j - \boldsymbol{\beta}^\top \mathbf{x}, \qquad j = 1, \ldots, k-1 \]

  • \(\theta_1 \le \theta_2 \le \cdots \le \theta_{k-1}\) — 경계점(cut-points)이 확률 비음조건을 보장한다
  • \(\boldsymbol{\beta}\)모든 경계 \(j\) 에서 공통 — 이것이 “비례 오즈(proportional odds)” 이름의 출처
  • 음수 부호는 관례 — \(\boldsymbol{\beta}^\top \mathbf{x}\) 가 클수록 높은 범주의 확률이 커지도록

직관적 해석: 두 처리군 \(T_1, T_2\) 에 대해

\[ \frac{\text{odds}(Y \le j \mid T_1)}{\text{odds}(Y \le j \mid T_2)} = \exp(-\Delta) \]

이 오즈비는 경계 \(j\) 에 의존하지 않는다. 즉 “1 이하 대 2 이상” 으로 잘라도, “3 이하 대 4 이상” 으로 잘라도 동일한 오즈비를 얻는다. 이 제약이 모형을 극도로 해석 가능하게 만든다. 반면 제약이 어긋나면(비례 오즈 가정 위반) 모형이 데이터를 제대로 설명하지 못한다.

잠재변수 유도(latent variable motivation): 관측되지 않는 연속 확률변수 \(Z\) 가 있어 \(Z - \boldsymbol{\beta}^\top \mathbf{x}\) 가 표준 로지스틱 분포를 따른다고 하자. \(Z\)\(\theta_{j-1} < Z \le \theta_j\) 구간에 들어가면 \(Y = j\) 로 기록되는 것이다.

\[ \Pr(Y \le j) = \Pr(Z \le \theta_j) = \frac{\exp(\theta_j - \boldsymbol{\beta}^\top \mathbf{x})}{1 + \exp(\theta_j - \boldsymbol{\beta}^\top \mathbf{x})} \]

즉 순서형 반응을 구간화된 연속 반응으로 해석할 수 있다. 식품 맛 평가, 통증 척도, 영상 판독 등급처럼 본질은 연속이지만 측정이 구간화된 상황과 정확히 맞물린다.

4.2 비례 위험 모형 (Proportional-Hazards Model, 순서형)

동일한 구조에 보완 로그-로그(complementary log-log) 링크를 건 것.

\[ \log[-\log(1 - \gamma_j(\mathbf{x}))] = \theta_j - \boldsymbol{\beta}^\top \mathbf{x} \]

이것은 Cox (1972) 비례위험 모형의 이산 버전과 같다 — “범주 진입 시점” 을 생존시간처럼 다룰 때 자연스럽다. 극값(extreme-value) 분포를 잠재분포로 갖는다.

4.3 기준 범주 로짓 (Baseline-Category Logit, 명목형)

순서가 없으면 \(\gamma_j\) 자체가 무의미하므로 \(\pi_j\) 를 직접 모형화한다.

\[ \pi_j = \frac{\exp(\eta_j)}{\sum_{\ell=1}^k \exp(\eta_\ell)}, \qquad \eta_j(\mathbf{x}) = \eta_j(\mathbf{x}_0) + \boldsymbol{\beta}_j^\top (\mathbf{x} - \mathbf{x}_0) \]

식별 제약으로 보통 \(\boldsymbol{\beta}_1 = \mathbf{0}\) 을 둔다 (범주 1 을 기준으로).

비례 오즈와의 대비 — 왜 모수가 많아지는가:

항목 비례 오즈 기준 범주 로짓
공변량 계수 \(\boldsymbol{\beta}\) (하나) \(\boldsymbol{\beta}_2, \ldots, \boldsymbol{\beta}_k\) (\(k-1\) 개)
해석 모든 경계에 공통 효과 기준 범주 대비 각 범주의 효과
적용 순서형 명목형

순서가 없으므로 “한 경계의 효과를 다른 경계에 옮겨도 된다”는 단순화가 불가능하다. 따라서 각 비교마다 별도 \(\boldsymbol{\beta}_j\) 가 필요하다. 소프트맥스 회귀(softmax regression) 또는 다항 로지스틱(multinomial logistic)으로 실무에서 불리는 모형이 바로 이것이다.

4.4 계층 모형 (Nested / Continuation-Ratio, 계층형)

반응이 트리 구조를 가질 때 각 단계를 조건부 이항으로 쪼갠다. 예컨대 생존/사망 → (사망이면) 암/비암 → (암이면) 백혈병/기타암 구조라면 세 개의 이항 GLM 을 각각 적합하는 것이 자연스럽다.

연속 비율(continuation-ratio) 모형:

\[ \log \frac{\pi_j}{\pi_{j+1} + \pi_{j+2} + \cdots + \pi_k}, \quad j = 1, \ldots, k-1 \]

“지금까지 오지 않았다가 이 단계에서 멈출 조건부 확률” 을 모형화한다. 생존분석의 이산시간 해저드(discrete-time hazard)와 같은 수학적 형태이다.


5 다항분포 — 모든 다범주 모형의 확률적 토대

세부 모형이 달라도 기저의 확률분포는 동일하다.

정의: 다항분포 (Multinomial Distribution)

\(m\) 개의 독립 시행에서 각 시행이 \(k\) 범주 중 하나로 분류되며 \(\Pr(j) = \pi_j\) 일 때, 각 범주의 도수 \(\mathbf{Y} = (Y_1, \ldots, Y_k)\)

\[ \Pr(\mathbf{Y} = \mathbf{y}) = \frac{m!}{y_1! \cdots y_k!} \pi_1^{y_1} \cdots \pi_k^{y_k}, \qquad \sum_j y_j = m \]

을 따른다. 이를 \(\mathbf{Y} \sim \text{Multinomial}(m, \boldsymbol{\pi})\) 로 쓴다.

왜 다항인가: \(k\) 범주 독립 포아송의 총합을 조건부로 고정하면 정확히 다항분포가 된다. 이 관계는 Ch.6 로그선형 모형과 Ch.5 다범주 모형을 통일적으로 바라볼 수 있게 해 주는 다리이다 — “카운트를 포아송으로 볼 것인가, 조건부 다항으로 볼 것인가” 는 같은 현상의 두 관점이다.

모멘트:

\[ \mathrm{E}[Y_j] = m \pi_j, \quad \mathrm{Var}(Y_j) = m \pi_j (1 - \pi_j), \quad \mathrm{Cov}(Y_j, Y_{j'}) = -m \pi_j \pi_{j'} \]

음의 공분산은 제약 \(\sum_j Y_j = m\) 의 직접적 귀결이다 — 한 범주가 늘면 다른 범주는 그만큼 줄 수밖에 없다. 이 때문에 공분산 행렬이 특이(singular)하고, 추론에는 일반화역행렬이 필요하다.


6 우도와 추정 — 한눈에

다범주 GLM 의 로그우도는 다항분포에서 유도된다. 관측 \(i = 1, \ldots, n\) 에 대해

\[ \ell(\boldsymbol{\theta}, \boldsymbol{\beta}) = \sum_{i=1}^n \sum_{j=1}^k y_{ij} \log \pi_{ij}(\mathbf{x}_i; \boldsymbol{\theta}, \boldsymbol{\beta}) \]

를 최대화한다. 여기서 \(\pi_{ij}\) 는 앞서 본 네 가족 중 어느 모형을 쓰느냐에 따라 \(\gamma_{ij}\) 또는 \(\eta_{ij}\) 를 거쳐 계산된다.

추정 알고리즘은 이항 GLM 과 마찬가지로 반복 재가중 최소제곱(IRLS) 을 따른다. 다만 반응이 벡터이므로 가중행렬 \(\mathbf{W}_i\) 가 단일 분산이 아니라 \(k \times k\) 행렬이 된다. 이탈도(deviance)는 포화 모형과 현재 모형의 로그우도 차이의 2배로 정의된다.


7 응용 — 어떤 분야에서 어떤 모형을 쓰는가

분야 반응 적합 모형 이유
의학 영상 판독 ILO 진폐증 등급 비례 오즈 순서형 + 연속 손상의 구간화
마케팅 제품 선호(브랜드 A/B/C) 기준 범주 로짓 명목형
임상시험 반응 정도(완치/호전/불변/악화) 비례 오즈 순서형
사회조사 정당 선호 기준 범주 로짓 명목형
역학 사망 원인(다단계) 계층/연속비율 트리 구조
교육평가 학점(A/B/C/D/F) 비례 오즈 순서형
신용평가 등급(AAA~D) 비례 오즈 또는 연속비율 순서형 + 단계적 진입

선택 원칙: (1) 척도의 성격을 먼저 판별한다 → (2) 순서 통합 불변성이 필요한가 검토한다 → (3) 해석 단순성(비례 오즈)과 유연성(비례 오즈 완화·기준범주) 사이 절충한다.


8 예시 — 치즈 맛 실험 (McCullagh & Nelder §5.2.6 요약)

네 가지 치즈 첨가물 \(A, B, C, D\) 에 대해 맛을 9점 척도로 평가한 실험을 생각하자. 반응은 순서형, 공변량은 첨가물 수준(factor)이다. 비례 오즈 모형

\[ \log \frac{\gamma_j}{1 - \gamma_j} = \theta_j - (\beta_B \mathbb{1}[B] + \beta_C \mathbb{1}[C] + \beta_D \mathbb{1}[D]) \]

을 적합하면 8 개의 \(\theta_j\) (경계) 와 3 개의 \(\beta\) (첨가물 효과) 가 추정된다. \(\hat{\beta}_D > 0\) 이면 첨가물 \(D\) 는 기준 \(A\) 대비 모든 경계에서 일관되게 더 높은 점수 쪽 확률을 끌어올린다고 해석한다.

해석에서 강조할 점: 비례 오즈 하에서 \(\hat{\beta}\) 는 “9점 척도의 어느 지점을 잘라도 같다”는 공통 오즈비를 나타낸다. 이 가정이 깨지면(예: 첨가물이 낮은 점수에는 효과가 있지만 높은 점수에는 효과가 없는 경우) 비례 오즈가 아닌 유연한 대안(모형 5.4 또는 비평행 회귀)이 필요하다.


9 코드 예시 — 비례 오즈 모형

9.1 Step 1: 순수 Python 구현 (원리 이해)

비례 오즈 모형의 로그우도를 직접 구성하고, 수치 최적화로 추정한다.

import numpy as np
from scipy.optimize import minimize
from scipy.special import expit  # 로지스틱 CDF

rng = np.random.default_rng(0)
n, k = 300, 4  # k 범주
X = rng.normal(size=(n, 1))  # 단일 공변량

# 참 모수: 경계 theta, 기울기 beta
theta_true = np.array([-1.0, 0.0, 1.0])     # k-1 개
beta_true = np.array([0.8])

# 데이터 생성 (잠재변수 방식)
z = X @ beta_true + rng.logistic(size=n)  # Z = beta^T x + 표준로지스틱 잡음
#   Y = j  iff theta_{j-1} < z <= theta_j
y = np.digitize(z, theta_true) + 1  # 1..k

def neg_loglik(params, X, y, k):
    # 경계는 단조 증가 제약 — 소프트플러스 누적 파라미터화
    raw_theta = params[:k-1]
    theta = np.concatenate([[raw_theta[0]], raw_theta[0] + np.cumsum(np.exp(raw_theta[1:]))])
    beta = params[k-1:]
    eta = X @ beta                         # n
    # gamma_j = P(Y<=j) = logistic(theta_j - eta)
    ll = 0.0
    for i in range(len(y)):
        gamma = expit(theta - eta[i])      # k-1
        gamma = np.concatenate([[0.0], gamma, [1.0]])
        p_yi = gamma[y[i]] - gamma[y[i]-1]
        ll += np.log(max(p_yi, 1e-12))
    return -ll

init = np.concatenate([[-1.0, 0.0, 0.0], [0.0]])
res = minimize(neg_loglik, init, args=(X, y, k), method="BFGS")

raw = res.x[:k-1]
theta_hat = np.concatenate([[raw[0]], raw[0] + np.cumsum(np.exp(raw[1:]))])
beta_hat = res.x[k-1:]
print(f"theta_hat = {theta_hat.round(3)}")
print(f"beta_hat  = {beta_hat.round(3)}   (true = {beta_true})")

핵심은 (1) 범주별 확률을 gamma[j] - gamma[j-1] 로 얻는 것과 (2) 경계 단조성을 파라미터화로 강제하는 것이다. 이 두 가지만 맞추면 수치 최적화는 이항 로지스틱과 같은 구조로 작동한다.

9.2 Step 2: statsmodels / R 로 실무 적합

import pandas as pd
import statsmodels.api as sm
# statsmodels 에는 OrderedModel (proportional odds) 이 실험적으로 포함되어 있음
from statsmodels.miscmodels.ordinal_model import OrderedModel

df = pd.DataFrame({"y": y, "x": X.ravel()})
mod = OrderedModel(df["y"], df[["x"]], distr="logit")
res = mod.fit(method="bfgs", disp=False)
print(res.summary())

R 에서는 MASS::polr(y ~ x, method="logistic") 이 표준 구현이다. 명목형의 경우 nnet::multinom() 이 기준 범주 로짓을 제공한다.


10 자주 걸리는 함정

함정 증상 처방
순서형에 다항 로지스틱을 씀 모수 수가 과도, 해석 난해 척도 판별 후 비례 오즈로 교체
명목형에 비례 오즈를 씀 임의로 붙인 범주 순서에 의존하는 결론 기준 범주 로짓으로 교체
비례 오즈 가정 미검정 예측은 맞지만 해석이 틀림 Brant 검정, 비평행 회귀와 비교
계층 구조 무시 상위/하위 분기의 효과가 혼재 단계별 조건부 이항으로 분리
공분산 행렬 특이성 놓침 표준오차 계산 불가 일반화역행렬 또는 \(k-1\) 개 범주만 사용

11 관련 주제

선행 지식

후속 주제 (placeholder — 이 시리즈에서 이어짐)

관련 개념


12 참고문헌

  • McCullagh, P. & Nelder, J. A. (1989). Generalized Linear Models (2nd ed.), Ch.5. Chapman & Hall.
  • McCullagh, P. (1980). Regression models for ordinal data. JRSS B, 42(2), 109–142.
  • Agresti, A. (2010). Analysis of Ordinal Categorical Data (2nd ed.). Wiley.
  • Faraway, J. J. (2006). Extending the Linear Model with R, Ch. on multinomial data.

Subscribe

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