1 서론 — Fig.12.3 의 세 구성과 세 측도
어떤 관측치가 “이상해 보인다” 고 해도 그 이상함에는 여러 성격 이 있다. McCullagh-Nelder §12.7 은 Fig.12.3 의 세 구성을 통해 그 차이를 드러낸다.
| 구성 | 극단점의 위치 | 포함/제외 효과 |
|---|---|---|
| (a) | \(x\) 값이 평균 근처 · \(y\) 값만 극단 | 절편에 큰 영향, 기울기는 거의 불변 |
| (b) | \(x\) 값이 극단 · 전체 추세와 일치 | \(\widehat\beta\) 정확도 상승, 추정치 거의 불변 |
| (c) | \(x\) 값이 극단 · 추세에서 벗어남 | 기울기·이탈도 급변 |
세 구성을 구별하기 위해 세 독립 측도 를 도입한다.
| 측도 | 정의 | 무엇을 잡나 | (a) | (b) | (c) |
|---|---|---|---|---|---|
| 레버리지 (leverage) \(h_i\) | \(H_{ii}\) (햇 행렬 대각) | “공변량 공간에서 얼마나 외톨이인가” | 낮음 | 높음 | 높음 |
| 일관성 (consistency) \(r_i^*\) | 삭제잔차 | “나머지 모형 예측과 얼마나 어긋나는가” | 높음 | 낮음 | 높음 |
| 영향력 (influence) \(D_i, C_i\) | Cook 통계량 | “이 점을 빼면 적합이 얼마나 달라지나” | 중간 | 낮음 | 높음 |
1.1 왜 세 측도 모두 필요한가
한 측도만으로는 위험을 정확히 식별할 수 없다.
- \(h\) 만 크다: 위치는 특이하지만 추세 일치 가능 — 구성 (b) — 제거하면 오히려 손해.
- \(|r^*|\) 만 크다: \(y\) 가 튀지만 공변량 공간에서 평범 — 구성 (a) — 절편만 약간 영향.
- \(h\) 와 \(|r^*|\) 둘 다 크다: 구성 (c) — 위험. 혼자서 적합을 왜곡.
즉 영향력 은 단일 측도가 아니라 레버리지와 일관성의 결합 효과 다. 이 결합을 수학적으로 보여 주는 것이 Cook 공식 (12.9) 다.
이번 글은 다섯 소절 §12.7.1~§12.7.5 를 순서대로 심화한다.
2 §12.7.1 — 레버리지
2.1 선형 회귀의 \(h_i\)
선형 회귀의 햇 행렬
\[H = X(X^TX)^{-1}X^T, \qquad h_i = x_i^T(X^TX)^{-1}x_i.\]
\(h_i\) 의 기하 해석: “점 \(i\) 의 \(y\) 값이 자기 적합값 \(\widehat\mu_i\) 에 기여하는 가중치”. §12.5 에서 이미 다뤘다.
2.2 직교화를 통한 해석적 공식
\(X\) 의 열을 직교화하고 첫 번째 열을 상수 1 로 유지하면 (\(H\) 는 불변):
\[h_i = \frac{1}{n} + \frac{x_{i2}^2}{\sum_j x_{j2}^2} + \cdots + \frac{x_{ip}^2}{\sum_j x_{jp}^2}.\]
2.3 해석적 함의
\(h_i - 1/n\) 은 점 \(i\) 와 공변량 공간 중심 사이의 표준화 거리 제곱 이다.
- \(x_i\) 가 중심에 있으면 \(h_i = 1/n\) — 최소 가능.
- \(x_i\) 가 극단이면 \(h_i \to 1\) — 최대 가능.
“나와 비슷한 공변량을 가진 친구가 몇 명이나 있는가” 를 측정한다고 보면 된다.
- 친구가 많으면 (\(x_i\) 가 중심): 다른 점들이 자기를 대신 설명해 줌 → \(h_i\) 작음.
- 친구가 없으면 (\(x_i\) 가 외톨이): 자기를 설명할 수 있는 점은 자기뿐 → \(h_i\) 큼.
이것이 \(h_i \in [1/n, 1]\) 경계와 \(\sum h_i = p\) 의 물리적 의미다.
2.4 표준화 레버리지 \(h_i'\) 와 Hoaglin-Welsch (1978) 규칙
\(\sum h_i = p\) 이므로 평균 레버리지는 \(p/n\). 비교를 위해 표준화:
\[h_i' = \frac{n h_i}{p}, \qquad \sum h_i' = n.\]
\(h_i' = 1\) 이 “평균 수준”. Hoaglin-Welsch 의 실무 규칙:
\[h_i > \frac{2p}{n}, \quad \text{즉} \quad h_i' > 2 \quad \Rightarrow \quad \text{고레버리지 의심.}\]
index plot (관측 번호 vs \(h_i'\), \(h' = 2\) 수평선) 이 표준 시각 진단 도구.
2.5 GLM 확장 — 가중치의 영향
GLM 에서 (12.3)
\[H = W^{1/2} X (X^T W X)^{-1} X^T W^{1/2}\]
\(X\) 대신 \(W^{1/2} X\) 를 사용. IRLS 가중치 \(w_i = (\partial\mu_i/\partial\eta_i)^2 / V(\mu_i)\) 가 작은 점은 공변량 공간에서 극단이더라도 \(h_i\) 가 작을 수 있다.
포아송 GLM 에서 예측값 \(\widehat\mu_i\) 가 매우 작으면 가중치 \(w_i = \widehat\mu_i\) (로그 링크) 도 작아진다. 이 점은 공변량 공간에서 외톨이여도 모형의 실질적 영향은 미미 하다 — 정보를 거의 담지 않는다.
반대로 \(\widehat\mu\) 가 큰 점은 가중치가 커서 레버리지도 증폭된다.
실무 해석: 레버리지는 “정보 가중된 고립도” 이지, 순수 공변량 공간 거리가 아니다. GLM 진단에서 이 차이를 기억해야 한다.
2.6 레버리지의 비대칭적 역할
레버리지가 높다고 나쁜 게 아니다. Fig.12.3(b) 는 고레버리지 점이 추정을 개선 하는 경우다. 레버리지의 위험은 \(|r^*|\) 가 동시에 높을 때 드러난다. 단일 측도로는 위험 판단 불가.
3 §12.7.2 — 일관성
3.1 삭제잔차가 자연스러운 측도
일관성의 정의: “점 \(i\) 가 나머지 모형의 예측과 얼마나 어긋나는가”.
삭제잔차 (§12.5):
\[r_i^* = \frac{y_i - \widehat\mu_{(i)}}{s_{(i)}\sqrt{1 + h_{(i)}}}.\]
\(\widehat\mu_{(i)}\) 는 점 \(i\) 없이 적합한 모형으로 예측한 값. 이 잔차가 크면 “나머지가 제안하는 추세에서 점 \(i\) 가 벗어났다” 는 증거 — 비일관성.
3.2 GLM 에서의 1-step 근사
점 \(i\) 를 실제로 빼고 재적합하면 IRLS 가 수렴까지 돌아야 해 계산 비용이 크다. §12.5 의 Williams (1987) 1-step 공식
\[r_{D,i}^{*2} \simeq h_i \cdot {}_1 r_{P,i}^{\prime 2} + (1-h_i) \cdot {}_1 r_{D,i}^{\prime 2} \tag{12.6}\]
가 실무의 표준. 삭제 잔차의 일관성 해석 은 §12.5 의 Pierce-Schafer 결과로 확증된다 — 이탈도 기반 잔차는 귀무 하에서 대략 정규 분포를 따른다.
3.3 이상점 식별 기준
전통적 규칙: \(|r^*| > 2\) 면 의심, \(|r^*| > 3\) 이면 강한 의심. 그러나 \(n\) 개 점 중 가장 큰 \(|r^*|\) 를 선택 한 뒤의 검정은 다중 비교 보정이 필요 — §12.7.4 의 Normal 플롯 + envelope 으로 보정한다.
4 §12.7.3 — 영향력
4.1 Cook 통계량의 정의 (1977)
Cook 거리:
\[D_i = \frac{(\widehat\beta_{(i)} - \widehat\beta)^T (X^TX) (\widehat\beta_{(i)} - \widehat\beta)}{p s^2}. \tag{12.8}\]
\(\widehat\beta_{(i)}\) 는 점 \(i\) 를 뺀 계수 추정치. 분자는 계수 벡터의 변동을 Mahalanobis 거리 (\(X^TX\) 를 내적 행렬로) 로 측정. 분모 \(p s^2\) 은 스케일 정규화.
4.2 왜 Mahalanobis 거리인가
단순 유클리드 거리 \((\widehat\beta_{(i)} - \widehat\beta)^T (\widehat\beta_{(i)} - \widehat\beta)\) 는 계수들의 스케일 차이 를 무시한다. \(\beta_1 = 1000\) 과 \(\beta_2 = 0.001\) 의 단위 변화가 같은 거리로 취급됨.
\((X^TX)\) 를 가중치로 쓰면, 이것이 바로 \(\widehat\beta\) 의 공분산 역행렬 의 스케일이다. 즉 “계수의 \(\sigma\) 단위 변화” 를 잰다. 결과적으로 \(D_i\) 는 “점 \(i\) 제거가 추정치를 표준 오차 단위로 얼마나 움직였는가” 를 측정.
4.3 공식 유도 — (12.9)
핵심 등식 (Atkinson, 1985, p.21):
\[\widehat\beta_{(i)} - \widehat\beta = -\frac{(X^TX)^{-1} x_i r_i}{1 - h_i}.\]
이 등식은 Sherman-Morrison 으로 유도된다 (§12.5 의 잔차 업데이트 공식과 같은 기원).
대입하면
\[ D_i = \frac{1}{p s^2} \cdot \frac{r_i^2}{(1-h_i)^2} \cdot x_i^T (X^TX)^{-1} (X^TX) (X^TX)^{-1} x_i = \frac{r_i^2}{p s^2 (1-h_i)^2} \cdot x_i^T (X^TX)^{-1} x_i. \]
\(x_i^T (X^TX)^{-1} x_i = h_i\) 이므로
\[ \boxed{\;D_i = \frac{r_i^{\prime 2}}{p} \cdot \frac{h_i}{1 - h_i}\;} \tag{12.9} \]
여기서 \(r_i^\prime = r_i/\{s\sqrt{1 - h_i}\}\) 는 Studentized 표준화 잔차. \(\square\)
4.4 분해의 의미
(12.9) 는 영향력을 두 인수의 곱 으로 분해한다.
| 인수 | 측도 |
|---|---|
| \(r_i^{\prime 2} / p\) | 일관성 (정확히는 Studentized 잔차 제곱) |
| \(h_i / (1-h_i)\) | 레버리지 (\(h_i \to 1\) 에서 발산) |
\(D_i\) 가 크려면 두 측도가 모두 커야 한다. 하나라도 작으면 영향력이 작다.
- \(r_i^\prime\) 크고 \(h_i\) 작음 (구성 a): \(D_i\) 중간 — 절편만 약간 움직임.
- \(r_i^\prime\) 작고 \(h_i\) 큼 (구성 b): \(D_i\) 작음 — 고레버리지지만 추세 일치.
- 둘 다 큼 (구성 c): \(D_i\) 큼 — 진짜 위험.
이 곱셈 구조가 “세 측도가 독립적인데 왜 영향력은 나머지 둘의 함수인가” 를 설명한다. 독립적으로 정의된 두 측도가 곱으로 결합해 세 번째 측도를 만든다.
4.5 Atkinson (1981) 의 수정 — \(C_i\)
Cook \(D_i\) 에 세 가지 수정:
- \(r_i^\prime\) 을 삭제잔차 \(r_i^*\) 로 교체 (식 \(r_i^* = r_i' \cdot s/s_{(i)}\) 로 연결, §12.5).
- 스케일 인수 \((n-p)/p\) 를 곱해 평균 레버리지에서 \(C_i = r_i^{*2}\) 이 되도록 정규화.
- 제곱근을 취해 선형 단위 로.
결과:
\[ \boxed{\;C_i = \left\{\frac{n-p}{p} \cdot \frac{h_i}{1-h_i}\right\}^{1/2} |r_i^*|.\;} \tag{12.10} \]
4.6 왜 세 수정이 도움이 되는가
- \(s \to s_{(i)}\): 큰 이상점에서 \(s\) 가 오염돼 \(D_i\) 가 과소평가. \(s_{(i)}\) 는 오염 없음.
- \((n-p)/p\) 인수: \(h_i = p/n\) (평균) 이면 \(h/(1-h) = (p/n)/(1-p/n) \approx p/(n-p)\). 따라서 \((n-p)/p \cdot h/(1-h) = 1\) 이 되어 \(C_i = |r_i^*|\). 즉 평균 레버리지 구성에서는 일관성 측도와 같아짐 → 비교 용이.
- 제곱근: 선형 단위로 해석 쉬움. 임계값 \(C_i > 2\) 또는 3 으로 이상점 식별.
4.7 GLM 확장
선형 회귀의 (12.8)(12.9)(12.10) 을 GLM 으로 확장:
\[D_i = \frac{(\widehat\beta_{(i)} - \widehat\beta)^T (X^TWX) (\widehat\beta_{(i)} - \widehat\beta)}{p \widehat\phi}.\]
- \((X^TX) \to (X^TWX)\): IRLS 가중치 포함.
- \(s^2 \to \widehat\phi\): 산포 모수 추정.
- \(\widehat\beta_{(i)}\) 는 보통 1-step 근사 사용 (§12.5 Williams 공식).
수정 Cook 통계량 \(C_i\) 도 \(r^* \to {}_1 r_D^*\) (1-step 이탈도 삭제잔차) 로 그대로 치환.
5 §12.7.4 — 비공식 진단 플롯
5.1 세 통계량의 시각화 전략
\(h_i\), \(r_i^*\), \(C_i\) 는 각각 \(n\) 개 값을 낸다. 관심 대상은 극단값 — “가장 큰 레버리지”, “가장 큰 잔차”, “가장 큰 영향력”.
그러나 \(n\) 개 중 극단을 골라 검정 하면 다중 비교 문제가 발생한다 (§12.2 의 “가장 이상한 점을 골랐다” 함정).
5.2 플롯 1: Index Plot
가로축 관측 번호 \(i = 1, \ldots, n\), 세로축 통계량 값. 임계 수평선 함께.
한계: 다중 비교 보정이 내장되지 않음. 몇 개 점이 나머지보다 극단적으로 떨어져 있으면 쉽게 보이지만, 경계 근처 점들은 판단 어려움.
5.3 플롯 2: Normal Probability Plot (Q-Q 플롯)
통계량을 순서 통계량의 이론적 기댓값 에 대해 플롯.
Full Normal plot (부호 있는 통계량, 예: \(r^*\)):
\[\Phi^{-1}\left(\frac{i - 3/8}{n + 1/4}\right), \qquad i = 1, \ldots, n.\]
Half-Normal plot (비음 통계량, 예: \(h\), \(C\), \(|r^*|\)):
\[\Phi^{-1}\left(\frac{n + i + 1/2}{2n + 9/8}\right), \qquad i = 1, \ldots, n.\]
이 수식들은 Blom (1958) 의 정규 순서통계량 기대값 근사다. 분모가 \(n + 1\) 이 아니라 \(n + 1/4\) 등의 미세 조정은 꼬리 정확도 를 위해 고안된 실무 표준.
\(n\) 개 표준 정규 표본에서 가장 큰 값 은 \(\sim \Phi^{-1}(1 - 1/(n+1))\) 정도로 기대된다. \(n = 100\) 이면 \(\approx 2.33\), \(n = 1000\) 이면 \(\approx 3.09\).
즉 Q-Q 플롯의 가로축 극단 위치는 “이 크기의 표본에서 자연스럽게 예상되는 극단값” 을 미리 반영한다. \(r^* = 3\) 이 \(n = 1000\) 에서는 평범하지만 \(n = 30\) 에서는 놀라운 값이라는 판단이 플롯의 대각선과의 거리 로 자연스럽게 드러난다.
이것이 단순 “모든 점에 \(|r^*| < 2\)” 규칙보다 Q-Q 플롯이 나은 이유다.
5.4 플롯 3: Atkinson (1981) 의 시뮬레이션 Envelope
Q-Q 플롯의 “대각선” 이 \(h\) 나 \(C\) 에 대해서는 예상되지 않는다 (귀무 분포가 정규가 아니므로). Atkinson 의 해결책:
- 현재 적합의 \(\widehat\mu, \widehat\phi\) 에서 가상 데이터 \(y^*\) 를 \(k\) 번 시뮬레이션.
- 각 시뮬레이션에서 모형을 재적합하고 \(h, r^*, C\) 를 계산.
- 순서 정렬 후 각 순서 위치의 \(k\) 시뮬레이션 중 최대/최소 를 envelope 으로 플롯.
- 관측 데이터의 통계량이 envelope 안에 들면 “정상”, 밖에 나오면 이상점.
이 envelope 은 경험적 다중 비교 보정 이다. \(k\) 를 키우면 envelope 이 더 안정적.
5.5 시뮬레이션의 속도
- 정규 오차 는 \(\widehat\mu\) 무관 (\(y^* = \widehat\mu + \sigma \epsilon^*\)) 이라 매우 빠름.
- 비정규 오차 (포아송, 이항 등) 는 매 시뮬레이션마다 IRLS 재수렴 필요 — 느림.
- 가속: 1-step 근사 를 활용. 초기값 \(\widehat\mu\) 에서 시작해 1-2 회 반복만.
5.6 Count/Proportion 데이터의 왜곡
관측치에 많은 0 (카운트) 또는 많은 0, 1 (비율) 이 있으면 Q-Q 플롯에 plateau 가 나타난다 — 작은 잔차들이 0 근처에 뭉친다.
이는 “이산 반응의 본질적 정규성 부족” 이지 이상점 신호가 아니다. 해석 시 이 plateau 를 무시.
6 §12.7.5 — 개별 이상점 × 체계적 이탈의 결합
6.1 문제 — 영향력 검정의 역설
“공변량 \(u\) 가 모형에 추가 필요한가?” 라는 체계적 이탈 질문 (§12.6) 에 답할 때, 그 결론이 몇 개의 개별 이상점 에 좌우될 수 있다. 두 문제가 엉킨다.
예: \(u\) 의 추가가 이탈도를 10 감소 시켰다. 자유도 1 이므로 유의. 그러나 이 감소의 90% 가 관측치 2 개로부터 나왔다면? 그 2 개가 단순 기록 오류라면 \(u\) 는 사실 불필요할 수도.
6.2 Williams (1987) 의 결합 진단
완전 모형 (\(u\) 포함) 의 표준화 잔차 제곱 \(r_{G1}^2\), 축약 모형 (\(u\) 제외) 의 \(r_{G0}^2\) 를 각각 계산. 차이
\[d_i = r_{G0,i}^2 - r_{G1,i}^2\]
는 “점 \(i\) 가 \(u\) 유의성에 기여한 양” 이다. Williams 는 이 차이의 index plot 을 제안.
- 모든 \(d_i\) 가 비슷: 체계적 이탈 증거가 분산 — 안정적 결론.
- 몇 개 \(d_i\) 만 큼: 체계적 이탈 증거가 집중 — 이상점 의심, 분석 재검.
6.3 절차
- 체계적 이탈 (backward selection, §12.6.5) 로 \(u\) 의 유의성 확인.
- 각 관측치의 \(d_i = r_{G0,i}^2 - r_{G1,i}^2\) 계산.
- \(d_i\) 의 index plot 또는 Q-Q 플롯으로 극단 기여 점 식별.
- 의심 점들을 제외하고 재분석해 결론이 유지되는지 확인.
이 방법은 모형의 체계적 구조 주장이 얼마나 강건한가 를 측정한다. Davison & Tsai (1988) 에도 유사한 기법.
7 Python 실전 — 세 측도의 결합 진단
import numpy as np
import statsmodels.api as sm
import matplotlib.pyplot as plt
from scipy import stats
np.random.seed(42)
n = 150
x1 = np.random.randn(n)
x2 = np.random.randn(n)
X = sm.add_constant(np.column_stack([x1, x2]))
mu_true = np.exp(0.5 + 0.3 * x1 - 0.2 * x2)
y = np.random.poisson(mu_true)
# 의도적으로 세 유형의 이상점 주입
# (a) x 근처, y 극단
y[0] = 50
# (b) x 극단, 추세 일치 (정상적인 고레버리지)
X[1] = [1, 3.5, 3.0] # 공변량 극단
y[1] = np.random.poisson(np.exp(0.5 + 0.3*3.5 - 0.2*3.0))
# (c) x 극단, y 도 어긋남
X[2] = [1, -3.5, -3.0]
y[2] = 80 # 큰 y 값
fam = sm.families.Poisson(link=sm.families.links.log())
m = sm.GLM(y, X, family=fam).fit()
p = X.shape[1]
# 레버리지
mu_hat = m.fittedvalues
w = mu_hat # 포아송 로그 링크 가중치
W_sqrt = np.sqrt(w)
WX = W_sqrt[:, None] * X
H = WX @ np.linalg.inv(WX.T @ WX) @ WX.T
h = np.diag(H)
h_prime = n * h / p
# Pearson 표준화 잔차와 이탈도 표준화 잔차
V_mu = mu_hat # 포아송 분산 함수
phi_hat = m.scale # 기본 1
r_P = (y - mu_hat) / np.sqrt(phi_hat * V_mu * (1 - h))
r_D = m.resid_deviance / np.sqrt(phi_hat * (1 - h))
# 삭제잔차 (Williams 1-step 근사)
r_star = np.sign(y - mu_hat) * np.sqrt(h * r_P**2 + (1 - h) * r_D**2)
# Cook D_i (식 12.9)
D_i = (r_P ** 2 / p) * (h / (1 - h))
# Atkinson 수정 C_i (식 12.10)
C_i = np.sqrt((n - p) / p * h / (1 - h)) * np.abs(r_star)
print("주입된 이상점 3 개의 진단 지표:")
print(f"{'i':>3} {'h':>8} {'h_prime':>9} {'r_star':>8} {'D_i':>8} {'C_i':>8}")
for i in [0, 1, 2]:
print(f"{i:3d} {h[i]:8.4f} {h_prime[i]:9.3f} {r_star[i]:8.2f} {D_i[i]:8.4f} {C_i[i]:8.2f}")
# 세 index plot
fig, axes = plt.subplots(1, 3, figsize=(14, 4))
axes[0].stem(h_prime)
axes[0].axhline(2, ls='--', color='red', label="Hoaglin-Welsch 2")
axes[0].set_title("Leverage $h_i'$"); axes[0].legend()
axes[1].stem(r_star)
axes[1].axhline(2, ls='--', color='red'); axes[1].axhline(-2, ls='--', color='red')
axes[1].set_title("Deletion residual $r_i^*$")
axes[2].stem(C_i)
axes[2].axhline(2, ls='--', color='red', label="$C_i > 2$ 의심")
axes[2].set_title("Atkinson $C_i$"); axes[2].legend()
plt.tight_layout(); plt.show()7.1 결합 해석
주입된 이상점 결과 (기대):
- 점 0 (구성 a): \(h\) 낮음 · \(|r^*|\) 큼 · \(C\) 중간.
- 점 1 (구성 b): \(h\) 큼 · \(|r^*|\) 작음 · \(C\) 작음 (제거하면 안 됨).
- 점 2 (구성 c): \(h\) 큼 · \(|r^*|\) 큼 · \(C\) 매우 큼 (제거 강한 후보).
즉 \(C_i\) 하나만 봐도 실질적 위험 점을 구별한다. 세 측도를 동시에 봐야 (a) 와 (c) 같은 중간 케이스의 구분이 명확해진다.
7.2 Q-Q envelope 시뮬레이션
def half_normal_quantiles(n):
i = np.arange(1, n + 1)
return stats.norm.ppf((n + i + 0.5) / (2*n + 9/8))
k_sim = 50
C_envelope_low = np.zeros(n)
C_envelope_high = np.zeros(n)
C_sim_sorted_all = []
for _ in range(k_sim):
y_sim = np.random.poisson(mu_hat)
try:
m_sim = sm.GLM(y_sim, X, family=fam).fit()
mu_sim = m_sim.fittedvalues
w_sim = mu_sim
W_s = np.sqrt(w_sim)
WX_s = W_s[:, None] * X
H_s = WX_s @ np.linalg.inv(WX_s.T @ WX_s) @ WX_s.T
h_s = np.diag(H_s)
r_P_s = (y_sim - mu_sim) / np.sqrt(mu_sim * (1 - h_s))
r_D_s = m_sim.resid_deviance / np.sqrt(1 - h_s)
r_star_s = np.sign(y_sim - mu_sim) * np.sqrt(h_s * r_P_s**2 + (1-h_s) * r_D_s**2)
C_s = np.sqrt((n - p) / p * h_s / (1 - h_s)) * np.abs(r_star_s)
C_sim_sorted_all.append(np.sort(C_s))
except:
pass
C_sim_arr = np.array(C_sim_sorted_all)
C_lo = C_sim_arr.min(axis=0)
C_hi = C_sim_arr.max(axis=0)
# 관측 C_i 의 half-Normal 플롯
C_sorted = np.sort(C_i)
hn_quantiles = half_normal_quantiles(n)
fig, ax = plt.subplots(figsize=(7, 5))
ax.fill_between(hn_quantiles, C_lo, C_hi, alpha=0.3, color='gray', label='simulation envelope')
ax.plot(hn_quantiles, C_sorted, 'o', label='observed $C_i$')
ax.set_xlabel("Half-Normal quantile")
ax.set_ylabel("$C_i$")
ax.set_title("시뮬레이션 envelope — envelope 밖 점이 이상점")
ax.legend()
plt.show()Envelope 밖에 놓인 점이 통계적으로 의미 있는 이상점. 점 2 가 이 밖으로 나올 가능성이 크다.
8 요약
§12.7 의 이상점 진단 체계를 한 장으로:
각 관측치 i 에 대해:
├── h_i 계산 (레버리지)
├── r_i^* 계산 (일관성, Williams 1-step)
└── C_i = √{(n-p)/p · h/(1-h)} · |r*| (영향력)
index plot + Q-Q plot + Atkinson envelope 로 극단 식별
의심 점 발견 시:
├── (a 유형: h 작고 r* 큼) → 기록 오류 가능성, 제거 검토
├── (b 유형: h 크고 r* 작음) → 유지 (정확도 상승)
└── (c 유형: 둘 다 큼) → 신중 분석, 도메인 판단 필요
체계적 × 개별 혼합: §12.7.5 의 r_G0² - r_G1² 플롯으로 체계적 결론의 강건성 확인
네 가지 핵심 원칙:
- 세 측도는 독립 — 하나만 보면 위험 오판.
- 영향력은 결합 — \(D_i\) 가 레버리지·일관성의 곱으로 분해.
- 다중 비교 보정 — Q-Q 플롯 + 시뮬레이션 envelope 이 표준.
- 제거 전 도메인 검증 — 이상점은 단순 제거보다 이해 가 먼저.
9 관련 주제
선행 지식
- Raw Materials of Model Checking (McCullagh §12.5) — 햇 행렬·Williams 공식의 기반
- Techniques in Model Checking — 더미 공변량 (McCullagh §12.2) — 이상점 검정의 embedding 해석
- Model Checking — 개관 (McCullagh Ch.12)
- Checks for Systematic Departure (McCullagh §12.6)
관련 개념
- Sherman-Morrison 공식 — \(\widehat\beta_{(i)} - \widehat\beta\) 식 유도
- 정규 분포 순서통계량 — Q-Q 플롯의 이론
- Mahalanobis 거리와 다변량 통계
실제 응용 — 교재 예제
- Gamma GLM Examples — 자동차 보험 이상점 진단 (McCullagh §8.4)
- Non-Linear Parameters — Examples (McCullagh §11.5) — Bermuda 잔디 (0,3,2) outlier 사례
후속 주제
- Model Checking Examples — 당근·Minitab 나무·보험금 (McCullagh §12.8) — 세 측도를 실제 데이터에 적용
- A Strategy for Model Checking? (McCullagh §12.9) — 진단의 한계와 도메인 판단