1 들어가며 — Ch.10 의 자리와 순서형 GLMM 의 동기
Ch.9 (이항 GLMM) 가 0/1 두 범주 응답을 다뤘다면, Ch.10 은 그 자연 확장으로 세 개 이상의 순서 범주 를 다룬다. 임상·심리·교육·역학 분야에서 가장 흔한 응답 형태가 순서형 — 그러나 이항 모형으로 처리하려면 인위적 절단이 필요해 정보 손실이 발생한다.
| Chapter | 모형 | 분포 | 응답 형태 |
|---|---|---|---|
| Ch.4-5 | MRM | 정규 | 연속 |
| Ch.6 | CPM | 정규 | 연속 (직접 모형화) |
| Ch.7 | MRM-AC | 정규 | 연속 + 자기상관 |
| Ch.8 | GEE | 자유 | 자유 (marginal) |
| Ch.9 | GLMM | 이항 | 0/1 |
| Ch.10 | GLMM | 순서형 | 순서 범주 (3+) |
| Ch.11 | GLMM | 명목 | 비순서 범주 |
| Ch.12 | GLMM | 카운트 | 0, 1, 2, … |
| Ch.13 | GLMM | 다양 | 3 수준 데이터 |
→ Ch.10 은 이항 (Ch.9) 과 명목 (Ch.11) 의 사이. 이항보다 정보가 풍부 (순서 정보 유지) 하고 명목보다 절약적 (공변량 계수가 범주별이 아니라 공통).
“Ch.10 = Ch.9 의 이항 GLMM 을 \(C\) 범주 순서형으로 확장. 핵심은 (1) \(C\) 범주를 \(C-1\) 개 누적 dichotomization 으로 변환 (식 10.1), (2) 비례 오즈 (proportional odds) 가정 — 공변량 효과가 모든 절단점에서 동일 (Figure 10.2), (3) 위반 시 partial proportional odds 로 완화 (§ 10.2.1), (4) 위치-척도 모형 (§ 10.2.2), 이산 시간 비례 위험 모형 (§ 10.2.3), Gauss-Hermite quadrature 추정 (§ 10.2.4) 까지 확장. NIMH 정신과 (§ 10.3) 와 노숙자 보건서비스 (§ 10.4) 두 응용 사례.”
본 overview 의 절 구성 (Hedeker §10 의 5 절 → 5 주제로 정리):
- § 10.1 순서형 데이터의 동기와 모형 발전사.
- § 10.2 비례 오즈 모형의 정의 (식 10.1) + 잠재 변수 framework (Figure 10.1) + 비례 오즈 가정 (Figure 10.2).
- § 10.2.1-10.2.4 확장 모형의 미리보기.
- § 10.3-10.4 두 응용 사례의 미리보기.
- § 10.5 Chapter 의 핵심 메시지 정리.
2 § 10.1 — 순서형 GLMM 의 동기
2.1 순서형 데이터란
응답이 순서가 있는 범주 로 측정되는 경우. 범주 간 거리는 정의되지 않거나 정확하지 않지만, 순서 는 명확.
전형적인 예:
- Likert 척도 — 강하게 반대 / 반대 / 중립 / 동의 / 강하게 동의.
- 정신과 중증도 — 없음 (none) / 경증 (mild) / 중등도 (moderate) / 중증 (severe).
- 동의 수준 — 반대 / 미정 / 동의.
- 암 stage — Stage I / II / III / IV.
- 회복 정도 — 악화 / 변화 없음 / 호전 / 완치.
순서형 응답을 처리할 때 두 가지 잘못된 방법:
- 연속으로 취급 — Likert 1-5 점을 그대로 회귀의 종속 변수로 사용. 범주 간 거리 가정 (1-2 차이 = 4-5 차이) 이 보통 깨짐 + 천장/바닥 효과 (ceiling/floor effect) 미반영 → 회귀 계수 편향 (McKelvey & Zavoina 1975, Winship & Mare 1984).
- 이항으로 단순화 — 임의 절단점에서 0/1 으로 줄임. 정보 손실 + 절단점 선택의 자의성.
순서형 GLMM 이 제3의 길 — 순서 정보 유지 + 통계적으로 적절한 link 함수.
본문 § 10.1 이 강조하는 흥미로운 활용 — 카운트 데이터를 순서형으로 변환:
- 의료 이용 횟수 같은 카운트 데이터가 0 에 큰 확률, 1-2 에 다수, 일부 극단값을 갖는 경우.
- Poisson 분포 가정의 엄격한 요구사항 (평균 = 분산) 이 깨질 때.
- 음이항 분포로도 부족한 과산포 (overdispersion) 가 있을 때.
→ 0, 1, 2, 3+ 같은 순서형 범주로 변환해 ordinal 모형 적용. 분포 가정이 단순 (각 범주의 확률만 자유) 해 robust.
이 발상은 § 10.4 의 노숙자 보건서비스 데이터 분석에서 직접 응용된다.
2.2 모형 발전사 — 1990s-2000s
- McCullagh (1980) — Cumulative logit 의 proportional odds 모형 (단일 수준). 본 chapter 의 토대.
- Harville & Mee (1984), Jansen (1990) — Mixed-effects 확장 초기.
- Hedeker & Gibbons (1994) — Ordinal probit 의 mixed-effects 일반화.
- Hedeker & Mermelstein (1998) — Partial proportional odds mixed-effects 확장 (비례 위반 처리).
- Agresti & Lang (1993), Tutz & Hennevogl (1996), Ezzet & Whitehead (1991), Fielding (1999), Dos Santos & Berridge (2000), Ten Have (1996) — 다양한 변형.
→ 순서형 GLMM 이 1990s 후반 ~ 2000s 초반에 활발히 발전한 영역.
1980 년대에 이미 Mixed-effects 정규 회귀 (LMM) 와 단일 수준 ordinal 회귀 (McCullagh 1980) 가 정립되었으나, 두 모형의 결합 (mixed-effects ordinal) 이 늦은 이유:
- 계산 부담: cumulative logit 의 적분 (랜덤 효과) 이 이항보다 복잡 — \(C-1\) 개 절단점 + 랜덤 효과 적분의 결합.
- 소프트웨어 부재: 1990 년대까지 ordinal mixed-effects 를 직접 적합하는 패키지가 거의 없음. SAS PROC MIXED 는 정규만, glmer 는 2000 년대 중반.
- 방법론 통합 필요: McCullagh 의 cumulative logit + Bock-Aitkin 의 quadrature + Goldstein-Bryk 의 multilevel 표기를 한 framework 로 통합.
Hedeker 자신이 이 분야의 핵심 기여자 — MIXOR 소프트웨어 (1996) 가 ordinal mixed-effects 의 첫 표준 도구.
3 § 10.2 — Mixed-Effects Proportional Odds Model
3.1 누적 확률과 cumulative logit — 식 (10.1)
순서 범주 \(c = 1, 2, \ldots, C\). 누적 확률:
\[ P_{ijc} = \Pr(Y_{ij} \leq c) = \sum_{k=1}^c p_{ijk} \]
여기서 \(p_{ijk}\) 는 범주 \(k\) 에 응답할 확률.
특수 경계: \(P_{ij0} = 0\), \(P_{ijC} = 1\). 자유 누적 확률은 \(C-1\) 개.
\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \gamma_c - \left[ x_{ij}^\top \beta + z_{ij}^\top T \theta_i \right] \quad (c = 1, \ldots, C-1) \tag{10.1} \]
- \(\gamma_c\): 범주 \(c\) 의 절단점 (threshold). 단조 증가: \(\gamma_1 < \gamma_2 < \cdots < \gamma_{C-1}\).
- \(x_{ij}\): \((p+1) \times 1\) 공변량 벡터 (절편 포함).
- \(\beta\): \((p+1) \times 1\) 회귀 계수 벡터.
- \(z_{ij}\): \(r \times 1\) 랜덤 효과 design 벡터.
- \(T\): \(TT^\top = \Sigma_v\) 의 Cholesky factor.
- \(\theta_i \sim \mathcal{N}_r(0, I)\) 표준화 랜덤 효과.
비표준화 랜덤 효과: \(\upsilon_i = T \theta_i \sim \mathcal{N}_r(0, \Sigma_v)\).
식 (10.1) 의 핵심은 하나의 회귀 공식 + \(C-1\) 개 평행한 절단점:
- \(C-1\) 개 cumulative logit 이 모두 같은 \(\beta\) 와 같은 \(\theta_i\) 를 공유.
- 절단점 \(\gamma_c\) 만 범주별로 다르다.
- 결과: 공변량 효과의 부호가 음 (식 10.1 의 \(-[\cdot]\) 형태) — “공변량이 크면 응답이 큰 범주에 갈 odds 가 큼”.
식 (10.1) 의 부호 관행:
- \(\beta > 0\): \(x\) 가 증가하면 \(P(Y \leq c)\) 가 감소 → \(P(Y > c)\) 가 증가 → 응답이 더 큰 범주로 이동.
- \(\beta < 0\): 반대.
→ “양의 계수 = 응답을 위로 끌어올리는 효과” 라는 자연스러운 해석. 식 (10.6) 의 대안 표기 (\(\gamma_c + x^\top \beta\)) 에서는 부호가 반대.
왜 cumulative logit 인가:
- 범주가 순서 → “어디 이상인가” 가 자연 질문.
- $P(Y c) = $ “\(c\) 이하의 누적 확률” 이 logit 으로 모형화하기 쉬움.
- \(C-1\) 개 누적 비교가 \(C\) 범주의 모든 정보를 담음 (마지막은 자동, \(P_{ijC} = 1\)).
3.2 Threshold Concept — Figure 10.1
§ 9.4 의 이항 잠재 변수 framework 의 자연 확장:
- 관측 가능 응답 \(Y_{ij} \in \{1, 2, \ldots, C\}\).
- 잠재 변수 \(y_{ij}\): 직접 관찰 불가, 연속.
- 절단점 \(-\infty = \gamma_0 < \gamma_1 < \cdots < \gamma_{C-1} < \gamma_C = \infty\).
- 관측 규칙: \(Y_{ij} = c \iff \gamma_{c-1} \leq y_{ij} < \gamma_c\).
3 범주 사례 (Figure 10.1):
- 절단점 2 개: \(\gamma_1, \gamma_2\).
- 잠재 변수가 \(\gamma_1\) 미만 → \(Y = 1\).
- 잠재 변수가 \(\gamma_1\) 과 \(\gamma_2\) 사이 → \(Y = 2\).
- 잠재 변수가 \(\gamma_2\) 초과 → \(Y = 3\).
잠재 변수의 분포가 logistic 이면 logit cumulative 모형, 정규면 probit cumulative 모형.
Ch.9 의 이항 framework 가 하나의 임계값 이었다면, Ch.10 은 여러 임계값:
임상 시나리오 — 정신과 중증도 (없음/경증/중등도/중증, 4 범주):
- 환자의 잠재 정신 상태 \(y\) — 직접 측정 불가.
- 절단점 3 개 (\(\gamma_1, \gamma_2, \gamma_3\)) 가 4 범주를 나눔.
- 환자의 실제 중증도 평가 = 잠재 상태가 어떤 구간에 떨어지는가.
이 framework 의 중요성:
- 연속 cdf 와의 자연 연결: 이항 모형과 동일한 logistic/normal/Gumbel cdf 사용. 식별 불가능성 (잠재 분산 = \(\pi^2/3\) 또는 1) 도 동일.
- 순서형 ↔︎ 이항 ↔︎ 다항 통합: 이항은 \(C = 2\) 의 특수 경우, 명목은 절단점 대신 별도 효용. 같은 잠재 변수 framework 위.
- Subject-specific 해석: 모든 회귀 계수가 “랜덤 효과 조건부” — 같은 잠재 성향의 환자 sub-population 효과.
식별 가능성 issue: 모든 절단점을 자유 추정하면 위치 식별 불가능. 표준 약속:
- 첫 번째 절단점 \(\gamma_1 = 0\) 으로 고정 + 절편 \(\beta_0\) 자유 추정. 또는
- 절편 \(\beta_0 = 0\) 으로 고정 + 모든 절단점 자유 추정.
두 표기는 등가 — \(\gamma^*_c = \gamma_c - \beta_0\) 변환으로 일대일 대응.
3.3 이항 모형과의 등가성 — 식 (10.2-10.3)
이항 응답을 0/1 코딩하면 (\(Y \leq 0\) 이 \(Y = 0\), \(Y > 0\) 이 \(Y = 1\)):
\[ \log \left[ \frac{P_{ij0}}{1 - P_{ij0}} \right] = 0 - [x_{ij}^\top \beta + z_{ij}^\top T \theta_i] \tag{10.2} \]
\(P_{ij0} = p_{ij0}\) (코드 0 응답 확률), \(1 - P_{ij0} = p_{ij1}\) (코드 1 응답 확률).
부호 뒤집기 (\(p_{ij0}\) 의 logit → \(p_{ij1}\) 의 logit):
\[ \log \left[ \frac{p_{ij1}}{1 - p_{ij1}} \right] = x_{ij}^\top \beta + z_{ij}^\top T \theta_i \tag{10.3} \]
→ Ch.9 의 식 (9.24) 와 동일.
식 (10.1) 의 형태가 처음에는 Ch.9 의 식 (9.24) 와 달라 보이지만:
- \(C = 2\) → 절단점 1 개만 (\(\gamma_1\)).
- \(\gamma_1 = 0\) 으로 고정 (관행).
- 부호 뒤집기 — “\(Y \leq 0\) 의 logit” 에서 “\(Y = 1\) 의 logit” 으로 전환.
→ Ch.9 의 형태와 정확히 같음. Ch.10 은 Ch.9 의 진짜 일반화 — 이항이 순서형의 \(C = 2\) 특수 경우.
이 통합이 갖는 의미:
- Ch.9 에서 배운 모든 framework (multilevel, marginal MLE, Gauss-Hermite, Empirical Bayes) 가 Ch.10 에 직접 적용.
- 새로 배워야 할 것 — proportional odds 가정과 그 위반 처리.
→ Ch.10 은 사실상 “Ch.9 + proportional odds 가정 + 절단점 추정” 으로 요약.
3.4 Multilevel Form — 식 (10.4-10.5)
Level-1 공변량 \(x_{ij}\) 한 개의 경우:
\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \gamma_c - [b_{0i} + b_{1i} x_{ij}] \quad (c = 1, \ldots, C-1) \tag{10.4} \]
각 환자의 절편 \(b_{0i}\) 와 기울기 \(b_{1i}\) 가 모든 cumulative logit 에 공통.
Level-2 공변량 \(x_i\) 한 개:
\[ b_{0i} = \beta_0 + \beta_2 x_i + \upsilon_{0i} \] \[ b_{1i} = \beta_1 + \beta_3 x_i + \upsilon_{1i} \tag{10.5} \]
\(\upsilon_i = (\upsilon_{0i}, \upsilon_{1i})^\top \sim \mathcal{N}_2(0, \Sigma_v)\).
→ 이항 모형 (§ 9.5.4) 의 식 (9.31) 과 동일한 level-2 표기.
식 (10.5) 가 이항·순서형·명목·카운트 모두에서 동일한 형태인 이유:
- Level-2 모형은 “환자 특성이 환자별 회귀 계수에 어떤 영향을 미치는가” 만 다룸.
- 응답 분포 (Bernoulli, multinomial ordinal, Poisson 등) 와 link 함수의 선택은 level-1 모형의 책임.
- → Level-2 표기는 응답 형태와 무관하게 같은 framework.
이 분리가 GLMM 의 모듈성 (modularity) 을 만든다 — level-1 link 만 바꾸면 같은 multilevel 도구를 재사용. 새 응답 형태를 추가할 때마다 처음부터 다시 짜지 않아도 된다.
cross-level interaction \(\beta_3\) — “처치가 시간 추세에 미치는 효과” 같은 임상적 핵심 효과가 multilevel form 에서 명확히 드러나는 점도 그대로.
3.5 Proportional Odds 가정 — Figure 10.2
식 (10.1) 에서 \(\beta\) 가 \(c\) subscript 를 갖지 않는다 — 모든 cumulative logit 에 같은 회귀 계수.
→ 공변량 효과가 모든 절단점에서 동일하다는 가정. McCullagh (1980) 의 핵심 가정.
수학적 표현:
\[ \frac{P(Y_{ij} \leq c \mid x_{ij}^{(1)})}{P(Y_{ij} > c \mid x_{ij}^{(1)})} \big/ \frac{P(Y_{ij} \leq c \mid x_{ij}^{(2)})}{P(Y_{ij} > c \mid x_{ij}^{(2)})} = \exp[-\beta (x_{ij}^{(1)} - x_{ij}^{(2)})] \]
→ Odds ratio 가 모든 \(c\) 에서 동일 (proportional). “비례 오즈” 라는 이름의 유래.
3 범주 + 단일 공변량 (\(x \in \{0, 1\}\)) + \(\beta_1 = -0.5\), \(\gamma_1 = -1\), \(\gamma_2 = 1\) 의 예시:
| 그룹 | \(\text{logit}_1 = \gamma_1 - x\beta_1\) | \(\text{logit}_2 = \gamma_2 - x\beta_1\) |
|---|---|---|
| \(x=0\) | \(-1 - 0 = -1\) | \(1 - 0 = 1\) |
| \(x=1\) | \(-1 - (-0.5) = -0.5\) | \(1 - (-0.5) = 1.5\) |
두 그룹의 cumulative logit 이 같은 양 (+0.5) 만큼 평행 이동. 이것이 비례 오즈의 시각적 모습 (Figure 10.2) — 두 곡선이 logit 척도에서 평행.
확률 척도 (logistic cdf 통과 후) 에서는 평행 아니지만, OR 은 절단점 무관:
\[ OR_1 = \frac{e^{-1}/(1+e^{-1})}{1 - e^{-1}/(1+e^{-1})} \cdot \frac{1 - e^{-0.5}/(1+e^{-0.5})}{e^{-0.5}/(1+e^{-0.5})} = \exp(-0.5 \cdot (1 - 0)) = e^{-0.5} \approx 0.607 \]
같은 값이 \(OR_2\) 에도 성립 — 비례 오즈의 핵심.
왜 이 가정이 강력한가: 모형이 매우 절약적 — \(C\) 범주에 공변량 효과 모수가 \(p\) 개 (범주별로 \(p\) 개씩이 아니라). 추정 안정성 ↑, 해석 단순.
가정이 깨질 때: § 10.2.1 partial proportional odds 로 일부 공변량만 범주 가변 효과 허용.
3.6 대안 표기 — 식 (10.6, 생존분석 형태)
\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \gamma_c + x_{ij}^\top \beta + z_{ij}^\top T \theta_i \quad (c = 1, \ldots, C-1) \tag{10.6} \]
식 (10.1) 와 비교: 마이너스가 플러스로 바뀜. \(\beta\) 의 부호가 반대.
생존 분석에서 보통 쓰는 표기 — 양의 계수가 “위험 (hazard) 이 큼 → 사건 빨리 발생”. § 10.2.3 의 이산 시간 비례 위험 모형이 식 (10.6) 형태를 채택.
식 (10.1) (의학 일반) vs 식 (10.6) (생존 분석) 의 표기 차이는 단지 관습. 모수의 절댓값과 통계적 유의성은 동일, 부호만 반대.
실무 권고:
- 본 chapter 의 자체 분석은 식 (10.1) 사용 (Hedeker 의 표기).
- 결과를 생존 분석 문헌과 비교할 때 식 (10.6) 으로 변환.
- 출판 시 어느 표기 사용하는지 명시 (혼란 방지).
4 후속 절의 미리보기
4.1 § 10.2.1 — Partial Proportional Odds
비례 오즈 가정이 모든 공변량에 대해 만족되는 경우는 드물다 (Peterson & Harrell 1990). 위반 사례:
- 어떤 공변량은 낮은 범주에 큰 효과, 높은 범주에 작은 효과.
- 한 약물이 “가벼운 증상은 잘 듣지만 심한 증상에는 효과 없음” 같은 패턴.
Partial Proportional Odds (Hedeker & Mermelstein 1998): 일부 공변량은 범주 가변 효과 (\(\beta_c\) 가 \(c\) 에 따라 변), 일부는 비례 오즈 유지.
식:
\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \gamma_c - [x_{ij}^\top \beta + u_{ij}^\top \alpha_c + z_{ij}^\top T \theta_i] \]
\(x_{ij}\) 는 비례 오즈, \(u_{ij}\) 는 범주별 다른 효과 (\(\alpha_c\)).
자세한 내용은 후속 sub-post.
4.2 § 10.2.2 — Models with Scaling Terms
표준 ordinal 모형은 공변량이 잠재 변수의 평균 (location) 만 변화시킴. 그러나 일부 공변량은 잠재 변수의 분산 (scale) 도 변화시킬 수 있다 — 동일 평균이라도 분산이 크면 극단 범주에 더 자주 응답.
식:
\[ \log \left[ \frac{P_{ijc}}{1 - P_{ijc}} \right] = \frac{\gamma_c - x_{ij}^\top \beta - z_{ij}^\top T \theta_i}{\exp(w_{ij}^\top \tau)} \]
분모의 \(\exp(w_{ij}^\top \tau)\) 가 잠재 변수의 그룹별 표준편차. \(w_{ij}\) 가 분산에 영향을 미치는 공변량.
응용: 동질성 vs 이질성 검정, 측정 도구의 그룹별 신뢰도 비교.
4.3 § 10.2.3 — Survival Analysis Models
이산 시간 (discrete-time) 또는 그룹화된 시간 (grouped-time) 생존 분석:
- 시점 \(t = 1, 2, \ldots, T\) 에 사건 발생 여부 측정.
- 사건이 일어난 시점이 응답 — 본질적으로 순서형 ($Y = $ 사건 발생 시점, \(Y = T+1\) 은 censored).
이 분석이 complementary log-log link 의 ordinal 모형과 동등:
\[ \log[-\log(1 - P_{ijc})] = \gamma_c + x_{ij}^\top \beta \]
→ 같은 framework. 자세한 도출은 § 9.5.5 의 c-log-log 와 후속 sub-post.
4.4 § 10.2.4 — Estimation
§ 9.6 의 marginal MLE + Gauss-Hermite quadrature 를 그대로 적용. 차이:
- Conditional 가능도가 multinomial 형태 (식 9.39 의 Bernoulli → multinomial).
- 절단점 \(\gamma_c\) 추가 추정 (\(C-1\) 개).
- 절단점 단조성 (\(\gamma_1 < \gamma_2 < \cdots\)) 제약 — log-difference 변환 등으로 처리.
알고리즘:
- Fisher scoring (식 9.47 와 동일한 형태).
- Gauss-Hermite quadrature (식 9.55-9.59 와 동일).
- Empirical Bayes (식 9.48 의 ordinal 버전).
소프트웨어: MIXOR (Hedeker & Gibbons 1996a), SAS PROC NLMIXED, R ordinal::clmm, Stata meologit.
4.5 § 10.3 — Psychiatric Example (NIMH 데이터의 순서형 분석)
§ 9.7 에서 IMPS Item 79 를 이항화 (mildly vs moderately ill) 했지만, 원래 7 점 척도. § 10.3 은 4 범주 (정상-경증/중등도/현저/극도) 로 ordinal 분석.
핵심 비교:
- 이항 모형 (Ch.9): 정보 손실, 절단점 자의성.
- 순서형 모형 (Ch.10): 모든 정보 활용.
→ 같은 데이터, 더 풍부한 분석. Drug × Time 효과의 통계적 유의성과 효과 크기 비교.
자세한 분석은 후속 sub-post.
4.6 § 10.4 — Health Services Research Example
노숙자 환자의 거주 형태 추적:
- 응답: street living / community housing / independent housing (3 범주, 순서형).
- 공변량: section 8 certificate (주거 보조 프로그램), 시점.
- 결과: certificate 가 independent housing 으로의 진행에는 유의 효과 — 그러나 community vs street 비교에는 효과 없음. 비례 오즈 가정 위반.
→ § 10.2.1 의 partial proportional odds 모형이 이 비대칭 효과를 정확히 포착. 단순 proportional odds 만으로는 임상적 통찰을 놓침.
자세한 분석은 후속 sub-post.
5 § 10.5 — Chapter 의 핵심 메시지 (요약)
순서형 응답은 흔하다 + 이항·연속 처리는 위험: Likert, 중증도, 카운트 변환 모두 ordinal. 이항으로 줄이면 정보 손실, 연속으로 취급하면 천장/바닥 효과로 회귀 계수 편향.
비례 오즈가 표준 + 위반 흔함: McCullagh (1980) 의 비례 오즈 가정이 절약적이고 해석 쉬움. 그러나 Peterson & Harrell (1990) 이 지적한 위반 사례 흔함 → partial proportional odds 모형 필요.
Mixed-effects 가 종단 데이터에 자연: 같은 환자의 반복 측정 → 환자 이질성을 random effects 로 흡수. Ch.9 의 모든 framework 가 직접 적용.
Population vs Individual 양립: Marginal trajectory (그룹 평균) 와 individual trajectory (Empirical Bayes) 모두 가치 있음. Ch.9 의 NIMH 분석에서 본 패턴 그대로.
확장 모형의 풍부함: Partial proportional odds (§ 10.2.1), 위치-척도 (§ 10.2.2), 이산 시간 생존 (§ 10.2.3) 으로 응용 영역이 매우 넓음. 같은 cumulative logit framework 위.
6 응용 분야
| 분야 | 활용 | 응답 예시 |
|---|---|---|
| 정신과 | 우울증·불안·정신분열증 중증도 추적 | 4 단계 IMPS, 5 단계 HAMD |
| 종양 임상 | 치료 반응 평가 | CR / PR / SD / PD (4 범주) |
| 통증 관리 | 통증 강도 추적 | NRS 0-10 → 4-5 범주화 |
| 행동 중재 RCT | 변화 단계 (transtheoretical model) | precontemplation/contemplation/action/maintenance |
| 보건 서비스 | 의료 이용 패턴 | 0/1/2-3/4+ 회 visits (카운트→ordinal) |
| 사회 정책 | 주거 안정성 | street/community/independent housing |
| 교육 | 학업 성취 등급 | A/B/C/D/F (5 범주) |
| 마케팅 | 만족도 조사 | 5 점 또는 7 점 Likert |
7 코드 예시
7.1 Step 1: 단일 수준 ordinal logit (R MASS::polr)
library(MASS)
# 4 범주 순서형 응답 시뮬레이션
set.seed(2026)
n <- 1000
x <- rnorm(n)
beta <- 0.8
gamma <- c(-1.5, 0, 1.5) # 3 절단점, 4 범주
# 잠재 변수
y_latent <- x * beta + rlogis(n)
# 절단점으로 4 범주 만들기
y <- cut(y_latent, breaks = c(-Inf, gamma, Inf), labels = 1:4, ordered = TRUE)
# Proportional odds logit 적합 (단일 수준)
fit <- polr(y ~ x, Hess = TRUE)
summary(fit)
# Coefficients 의 x 값이 추정된 beta (진짜 0.8 에 가까워야)
# Intercepts 가 추정된 절단점 (진짜 -1.5, 0, 1.5 에 가까워야)polr (Proportional odds Logistic Regression) 의 표기
Coefficients의x값: 식 (10.6) 의 \(\beta\) (양수면 응답 ↑).Intercepts의 값: \(\gamma_c\) (단조 증가).- 통계적 유의성:
t value보고 (z-statistic 으로 해석). - \(-2 \log L\):
fit$deviance또는2 * fit$nobs * fit$logLik.
polr 는 단일 수준 (random effects 없음). 다음 단계의 mixed-effects 로 확장.
7.2 Step 2: Mixed-effects ordinal logit (R ordinal::clmm)
library(ordinal)
# 종단 ordinal 데이터 시뮬레이션
set.seed(2026)
n_subjects <- 200
n_times <- 5
df <- expand.grid(subject = 1:n_subjects, time = 1:n_times)
df$drug <- rep(rbinom(n_subjects, 1, 0.5), each = n_times)
upsilon <- rep(rnorm(n_subjects, 0, 1.2), each = n_times)
# 잠재 변수 (subject random intercept)
y_latent <- 0.5 + 0.3 * df$drug - 0.4 * df$time +
0.2 * df$drug * df$time + upsilon + rlogis(nrow(df))
gamma <- c(-1.5, 0, 1.5)
df$y <- cut(y_latent, breaks = c(-Inf, gamma, Inf),
labels = 1:4, ordered = TRUE)
# Mixed-effects cumulative logit
fit_mixed <- clmm(y ~ drug * time + (1 | subject), data = df)
summary(fit_mixed)ordinal::clmm (Cumulative Link Mixed Model) 의 출력
Coefficients: 식 (10.6) 의 \(\beta\) (시간 + 처치 + 상호작용).Threshold coefficients: \(\gamma_c\) (\(C-1 = 3\) 개).Random effects: \(\sigma_v\) (subject SD).- 추정 방법: Laplace approximation (기본),
nAGQ > 1로 adaptive Gauss-Hermite.
다른 옵션:
clmm2— 더 빠르나 random effect 수 제약.glmer (..., family = ordinal)— lme4 는 ordinal 직접 지원 안 함, brmsfit 권고.- Bayesian: R
brms::brm(..., family = cumulative("logit")).
7.3 Step 3: Cumulative logit 의 시각화 (proportional odds 검증)
library(MASS)
# 같은 데이터에 절단점 별로 별도 이항 logit 적합 → OR 비교
y <- as.numeric(df$y)
df$y_ge2 <- as.numeric(y >= 2)
df$y_ge3 <- as.numeric(y >= 3)
df$y_ge4 <- as.numeric(y >= 4)
# 각 절단점에서 별도 이항 logit
fit_ge2 <- glm(y_ge2 ~ drug, data = df, family = binomial)
fit_ge3 <- glm(y_ge3 ~ drug, data = df, family = binomial)
fit_ge4 <- glm(y_ge4 ~ drug, data = df, family = binomial)
# 처치 효과 (drug 의 OR) 비교
or_ge2 <- exp(coef(fit_ge2)["drug"])
or_ge3 <- exp(coef(fit_ge3)["drug"])
or_ge4 <- exp(coef(fit_ge4)["drug"])
cat("OR for Y >= 2:", round(or_ge2, 3), "\n")
cat("OR for Y >= 3:", round(or_ge3, 3), "\n")
cat("OR for Y >= 4:", round(or_ge4, 3), "\n")
cat("\n비례 오즈 가정이 만족되면 세 OR 가 비슷해야 함\n")세 OR 가 거의 같으면 비례 오즈 가정 만족 → cumulative logit 모형 사용 정당.
OR 가 절단점에 따라 크게 다르면 가정 위반 → partial proportional odds (§ 10.2.1) 또는 명목 모형 (Ch.11) 검토.
공식 검정:
ordinal::nominal_test(fit)— 각 공변량의 비례 오즈 가정 검정 (LR test).MASS::polr후 Brant test.
이 검정은 sample size 가 작으면 보수적 — 시각적 검토 + 임상적 판단 함께.
7.4 Step 4: Threshold 와 cumulative probability 의 시각화
import numpy as np
import matplotlib.pyplot as plt
from scipy.special import expit
# 4 범주 모형 — 3 절단점
gamma = [-1.5, 0, 1.5]
beta = 0.8
# x 범위
x_range = np.linspace(-3, 3, 100)
# 각 그룹 (x = 0, x = 1) 의 cumulative probability
fig, axes = plt.subplots(1, 2, figsize=(14, 5))
for ax_idx, x_val in enumerate([0, 1]):
eta = -x_val * beta # 식 (10.1) 의 -[x*beta] 부분
cum_probs = []
for c, g in enumerate(gamma):
# P(Y <= c) = logistic(gamma_c + eta)
cum_probs.append(expit(g + eta) * np.ones_like(x_range))
cum_probs.append(np.ones_like(x_range)) # P(Y <= 4) = 1
cum_probs = np.array(cum_probs)
cat_probs = np.diff(np.vstack([np.zeros_like(x_range), cum_probs]), axis=0)
ax = axes[ax_idx]
bottom = np.zeros_like(x_range)
colors = ["#E63946", "#F4A261", "#2A9D8F", "#264653"]
for c in range(4):
ax.fill_between(x_range, bottom, bottom + cat_probs[c],
color=colors[c], alpha=0.7, label=f"Y = {c+1}")
bottom = bottom + cat_probs[c]
ax.set_xlim(x_range.min(), x_range.max())
ax.set_ylim(0, 1)
ax.set_xlabel("Latent variable y")
ax.set_ylabel("Probability")
ax.set_title(f"Group x = {x_val}: Category Probabilities")
ax.legend(loc="center right")
plt.tight_layout()두 그룹 (\(x = 0, x = 1\)) 의 범주 확률 누적 영역:
- \(x = 0\): 절단점이 그대로 적용되어 4 범주 균형.
- \(x = 1\): 잠재 평균이 \(\beta = 0.8\) 만큼 위로 → 더 큰 범주에 더 많은 확률.
비례 오즈의 시각적 결과 — 두 그래프의 영역 경계가 logit 척도에서 평행 이동. 확률 척도에서는 평행이 아니지만 (cdf 비선형), 같은 OR 로 모든 cumulative comparison 에 작용.
8 관련 주제
선행 지식
- Ch.9 Overview — 이항 GLMM 의 framework (Ch.10 의 직접 토대)
- § 9.4 Threshold concept — 잠재 변수 framework (Ch.10 의 cumulative logit 의 토대)
- § 9.5 Mixed-effects 정의 — Random effects + Cholesky (Ch.10 에 직접 적용)
- § 9.5.5 Response functions — Logit / probit / c-log-log (Ch.10 의 link 선택지)
- § 9.6 추정 — Marginal MLE, Gauss-Hermite (Ch.10 의 추정 toolkit)
후속 주제 (Ch.10 sub-posts)
- § 10.2.1 — Partial Proportional Odds (Hedeker & Mermelstein 1998 확장)
- § 10.2.2 — Models with Scaling Terms (위치-척도 모형)
- § 10.2.3 — Survival Analysis Models (이산 시간 비례 위험)
- § 10.2.4 — Estimation (cumulative logit 의 marginal MLE 세부)
- § 10.3 — NIMH Schizophrenia 데이터의 4 범주 ordinal 분석 (Ch.9 이항 분석과 비교)
- § 10.4 — 노숙자 보건서비스 (section 8 certificate, partial proportional odds 응용)
관련 개념
- McCullagh (1980) — Proportional odds 모형 원전
- Peterson & Harrell (1990) — 비례 오즈 위반 사례
- Hedeker & Mermelstein (1998) — Mixed-effects partial proportional odds
- McKelvey & Zavoina (1975), Winship & Mare (1984) — Ordinal 을 연속으로 처리할 때 편향
- Ch.11 GLMM 명목 — 비순서 범주 응답
- Ch.12 GLMM 카운트 — Poisson/NB (ordinal 변환의 대안)
- § 9.5.5 c-log-log — 이산 시간 비례 위험의 토대