2026년 8월 5일 | 개발 공부
Integrated Discrimination Improvement(IDI, 통합 판별 개선도)는 새 위험 예측 모델이 기존 모델보다 실제 사건과 비사건의 평균 예측확률을 더 멀리 벌렸는지 측정한다. 각 모델에서 사건 평균 확률과 비사건 평균 확률의 차이를 구한 뒤, 새 모델의 간격에서 기존 모델의 간격을 뺀 값이다. AUC가 순위 분리를 보는 지표라면 IDI는 확률 눈금 위에서 두 결과 집단의 평균 간격이 얼마나 달라졌는지 본다.
나는 처음 이 이름을 보고 모든 임계값의 민감도와 특이도를 직접 적분해야 하는 지표라고 생각했다. 정의의 출발점은 그렇지만, 이진 결과에서는 네 개의 그룹 평균으로 계산할 수 있다. 계산은 짧아도 해석은 조심스럽다. IDI가 0.07이라고 해서 대상자의 7%가 올바르게 분류됐거나 정확도가 7%포인트 올랐다는 뜻은 아니다.
그림에서는 기존 모델이 사건에 평균 0.46, 비사건에 0.21을 줘 0.25의 간격을 만들었다. 새 모델은 사건 평균을 0.51로 높이고 비사건 평균을 0.19로 낮춰 간격을 0.32로 넓혔다. IDI 0.07은 이 두 움직임을 합쳐 새 모델의 판별 간격이 7%포인트 커졌다는 뜻이다. 누구의 치료 결정이 바뀌었는지나 그 변화가 이득이었는지는 이 그림만으로 알 수 없다.
1. 모델마다 판별 간격을 먼저 계산한다
이진 결과 모델의 discrimination slope는 실제 사건 집단의 평균 예측확률에서 실제 비사건 집단의 평균 예측확률을 뺀 값이다. 같은 정의를 단일 모델에 적용하면 Tjur's D와 같은 형태가 된다.
판별 간격 = mean(p | event) - mean(p | nonevent)
IDI = 새 모델의 판별 간격 - 기존 모델의 판별 간격
완벽한 모델이 사건에는 1, 비사건에는 0을 준다면 간격은 1이다. 모든 대상에게 사건률과 비슷한 같은 확률을 주면 간격은 0에 가깝다. 다만 큰 간격이 곧 올바른 확률을 뜻하지는 않는다. 사건에 0.95, 비사건에 0.45를 주는 모델은 간격이 0.50이지만 비사건 위험을 심하게 높게 예측할 수 있다.
2. 네 개 평균이 어느 방향으로 움직였는지 분리한다
그림의 값을 다른 형태로 계산하면 사건 집단의 개선은 0.51 - 0.46 = 0.05이고, 비사건 집단의 변화는 0.19 - 0.21 = -0.02다. IDI는 0.05 - (-0.02) = 0.07이 된다. 사건 확률을 올린 0.05와 비사건 확률을 내린 0.02가 같은 방향으로 기여한 셈이다.
총값 하나만 적으면 새 모델의 이득이 어느 집단에서 왔는지 사라진다. 사건 평균만 크게 올라가고 비사건 평균도 함께 올라간 경우와, 두 집단이 반대 방향으로 안정적으로 벌어진 경우는 같은 IDI를 낼 수 있다. 그래서 나는 기존·새 모델의 사건 평균, 비사건 평균, 두 판별 간격, 최종 차이를 한 표에 같이 둔다. 네 평균을 남기면 사건률이 다른 집단에서 값이 흔들릴 때 원인을 다시 읽기도 쉽다.
3. NRI와 비슷해 보여도 세는 단위가 다르다
Net Reclassification Improvement(NRI)는 사건의 확률이 올라가고 비사건의 확률이 내려간 방향을 주로 센다. 특히 continuous NRI는 0.001과 0.20의 이동을 모두 한 건의 올바른 방향으로 취급할 수 있다. IDI는 개별 이동의 부호만 세지 않고 그룹 평균 확률이 움직인 크기를 반영한다.
그렇다고 IDI가 NRI의 모든 약점을 해결하는 것은 아니다. 평균은 소수의 큰 이동에 영향을 받고, 어떤 대상이 검사나 치료 임계값을 넘었는지는 보여 주지 않는다. AUC는 양성과 음성의 순위, NRI는 재분류 방향, IDI는 평균 확률 간격의 변화라는 서로 다른 질문에 답한다. 세 지표 중 하나가 양수라는 이유로 나머지 평가를 생략하면 안 된다.
4. 확률 보정이 어긋나면 IDI도 낙관적으로 보일 수 있다
IDI는 예측확률의 실제 크기를 사용하므로 calibration의 영향을 받는다. 새 모델이 사건과 비사건 모두에 더 극단적인 확률을 주면 간격이 벌어질 수 있지만, 그 확률이 실제 발생 빈도와 맞지 않을 수 있다. 단순한 순위 지표처럼 단조 변환 뒤에도 같은 값을 유지하지 않는다.
비교 전에는 두 모델의 calibration intercept와 slope, reliability curve, Brier score를 같은 독립 평가 표본에서 확인하는 편이 안전하다. 재보정을 했다면 기존 모델과 새 모델에 어떤 절차를 적용했는지 구분해야 한다. 개발 데이터에서 모델을 맞추고 같은 데이터로 IDI를 계산하면 새 변수의 잡음까지 추가 가치처럼 보일 수 있으므로, 교차검증의 out-of-fold 예측이나 별도 검증 데이터가 필요하다.
5. 신뢰구간은 같은 사람의 두 예측을 짝으로 다룬다
기존 모델과 새 모델은 보통 같은 대상에게 확률을 내므로 두 예측은 독립 표본이 아니다. 불확실성을 계산할 때는 대상 단위로 두 모델의 예측과 결과를 함께 재표본화해야 한다. 사건 수가 적다면 사건·비사건 수를 보존하는 stratified bootstrap이 결과의 요동을 줄이는 데 도움이 된다.
모델 학습 자체의 변동까지 포함하려면 각 bootstrap 또는 교차검증 반복 안에서 전처리, 변수 선택, 모델 적합, calibration을 다시 수행한다. 고정된 test prediction만 재표본화한 신뢰구간은 해당 예측 표본의 불확실성만 반영한다. IDI의 p-value가 작더라도 간격 증가가 아주 작거나 외부 집단에서 사라지면 새 변수의 측정 비용을 정당화하기 어렵다.
6. 평가 로그에는 총값보다 비교 조건을 먼저 남긴다
내가 재현용 로그에 남길 최소 항목은 기존·새 모델 버전, 추가 변수, 평가 split, outcome과 예측 기간, 전체 표본 수, 사건 수와 사건률이다. 이어서 두 모델의 사건·비사건 평균 확률, 각 discrimination slope, IDI와 신뢰구간, 재표본 방식, calibration 적용 여부를 기록한다.
최종 모델 선택에서는 AUC 변화, Brier score, calibration intercept와 slope, 임계확률별 Decision Curve Analysis의 net benefit도 함께 본다. Pencina 등의 원 논문은 IDI를 두 모델의 discrimination slope 차이로 정리했고, 후속 방법론 연구는 이 지표가 calibration에 민감하다는 점을 분석했다. 내가 IDI에서 확인하려는 것은 새 모델의 숫자가 양수인지가 아니라, 같은 사람에게 낸 확률이 두 결과 집단을 얼마나 더 분명하고 믿을 만하게 나눴는가다.
'[개발 공부]' 카테고리의 다른 글
| Net Reclassification Improvement: 위험군 이동으로 보는 새 모델의 추가 가치 (0) | 2026.08.04 |
|---|---|
| Decision Curve Analysis: 임계확률별 순이익으로 보는 모델 효용 (0) | 2026.08.03 |
| Hosmer-Lemeshow 검정: 위험도 그룹별 관측·기대 빈도 비교 (0) | 2026.07.28 |
| Spiegelhalter's Z: Brier score로 보는 확률 보정 검정 (0) | 2026.07.27 |
| Tjur's D: 양성과 음성의 평균 예측 확률 차이 (0) | 2026.07.22 |