테마
8회 · 추론의 기초 · 노트
8 Beautiful insights — 균등성과 순위
8.1 균등성으로 보정을 점검하기
정리 4.2의 뒤집은 형태가 쓸모 있다. 계산이 맞다면 -값은 균등해야 한다. 그러니 균등하지 않으면 계산이 틀렸다. 이 생각이 여러 곳에서 진단 도구가 된다.
예측분포의 보정. 일기예보나 회귀모형이 관측 마다 예측분포 를 내놓는다면, 보정이 맞을 때 는 균등하다(2회 정리 4.7, PIT). 그 히스토그램이 U자이면 예측이 지나치게 확신하고(분산이 작고), 가운데가 솟으면 지나치게 조심스럽다(Dawid 1984; Gneiting 외 2007).
베이즈 계산의 점검. 사전분포에서 를 뽑고, 그 로 자료를 만들고, 그 자료로 사후분포의 표본을 뽑으면, 처음의 가 사후표본들 사이에서 차지하는 순위는 균등해야 한다(Talts 외 2018, simulation-based calibration). 순위가 치우치면 사후분포를 계산하는 코드가 틀렸다(16회).
검정 코드의 점검. 새 검정을 구현하면 귀무가설 아래에서 자료를 수천 번 만들어 -값의 히스토그램을 그려 본다. 노트북에서 모든 검정을 이렇게 점검한다.
8.2 순위와 등각 예측
6회 정리 8.1의 예측구간은 정규를 가정했다. 분포를 전혀 가정하지 않고도 예측구간을 만들 수 있다. 열쇠는 순위다.
보조정리 8.1 (교환가능한 순위) 이 교환가능하고(결합분포가 순서를 바꿔도 같고) 같은 값이 나올 확률이 0이면, 의 순위 는 위의 균등분포다.
증명 전략 교환가능성으로 “가 번째”의 확률은 와 무관하다. 번째는 정확히 하나이므로 그 확률들의 합이 1이다. 단계별 증명은 연습 8.6(유도형)에서 직접 쓴다. 완성된 증명은 그 연습의 풀이에 있다.
정리 8.2 (분할 등각 예측) 아무 예측모형 를 학습 자료로 만들고, 그것과 독립인 보정 자료 , 에서 점수 를 계산한다. 일 때 로 두면, 새 관측 이 보정 자료와 교환가능할 때
증명 전략 학습 자료를 고정하면 점수 이 교환가능하다. 포함 사건을 “의 순위가 이하”로 바꾸고 보조정리 8.1를 쓴다.
학습 자료가 주어지면 는 고정된 함수이고, 같은 함수를 교환가능한 들에 쓴 도 교환가능하다.학습 자료와 보정 자료의 독립
이다. 여기서 는 보정 점수 개의 번째 순서통계량이다.절댓값의 정의
같은 값이 없으면 는 “보다 작은 보정 점수가 개 이하”, 곧 의 개 가운데 순위 이 이하인 것과 같다.원소 추적 [T1]
이다. 학습 자료에 대해 조건부로 성립하므로 무조건부로도 성립한다.보조정리 8.1,
조건 확인 같은 값이 나올 확률이 양수이면, 같은 값들 사이의 순서를 동전으로 정한 순위 은 교환가능성으로 여전히 균등하다. 이면 이므로 포함확률은 이상이다.
모형이 신경망이든 무작위 숲이든, 자료가 정규든 아니든 성립한다. 가정은 교환가능성 하나다(Vovk, Gammerman, Shafer 2005; Lei 외 2018). 같은 논증이 7.4절의 Monte Carlo 검정의 타당성이고, 15회의 순열검정의 원리다. 대가는 구간이 에 따라 넓어지거나 좁아지지 않는다는 것이고(점수를 바꿔 고친다), 보장이 평균적인 포함이라는 것이다.
8.3 다중검정 — Bonferroni와 거짓 발견율
유전자 2만 개 가운데 어느 것이 질병과 관련 있는지 검정하면 에서 거짓 양성이 천 개다. 두 가지 해법이 있다.
명제 8.3 (Bonferroni) 개의 검정을 각각 로 하면, 어떤 의존 구조에서도 하나라도 거짓 양성이 나올 확률(가족별 오류율)은 이하다.
증명 참인 귀무가설의 집합을 라 하면 (합집합 한계, 1회; 정리 4.2).
증명 없이 쓰는 사실 (Benjamini–Hochberg (1995)) -값을 정렬해 인 가장 큰 를 라 하고 를 모두 기각하면, 검정들이 독립일 때 거짓 발견율, 곧 기각한 것 가운데 거짓 양성의 기대 비율이 이하다. 하나도 틀리지 않으려는 Bonferroni보다 훨씬 많이 찾는다.
1,000개의 검정 가운데 100개에 실제 효과(의 평균 3)가 있는 시뮬레이션에서 의 Benjamini–Hochberg는 평균 79개를, 같은 수준의 Bonferroni는 평균 24개를 찾았다(노트북, 200번 반복). BH가 찾은 것 가운데 거짓은 평균 9%였다. 유전체학, A/B 시험, 뇌영상에서 오늘의 표준이 거짓 발견율인 이유다.
8.4 시험 자료를 거듭 쓰면
기계학습의 시험 자료는 검정과 같은 역할을 한다. 모형이 시험 자료에서 좋은 점수를 받으면 “일반화한다”고 결론짓는다. 그런데 같은 시험 자료로 모형을 수백 번 고르면, 그것은 수백 번의 검정을 하고 가장 좋은 하나를 보고하는 것과 같다(7.1절). 경진대회의 공개 순위표가 비공개 순위표와 어긋나는 것이 그 결과다. Dwork 외(2015)는 시험 자료를 거듭 쓰면서도 이런 적응적 과적합을 막는 방법(재사용 가능한 홀드아웃)을 제안했다. 한편 ImageNet의 시험 자료를 같은 절차로 새로 모은 Recht 외(2019)는 정확도가 11–14%포인트 떨어졌지만 모형들의 순위는 거의 그대로임을 보이고, 그 원인을 적응적 과적합보다 자료 수집의 미묘한 차이로 보았다. 어느 쪽이든 교훈은 7절과 같다. 같은 자료로 질문을 고르고 답을 확인하면 오차의 계산이 무효가 된다.
연습문제
연습 8.1 (PIT 히스토그램 ★) 참 분포가 인데 예측분포를 으로 내놓으면 의 분포가 U자임을 보여라. 이면?
풀이
이고 이므로 는 0과 1 근처에 몰린다(U자). 예측분포가 너무 좁으면 관측이 예측의 꼬리에 자주 떨어진다. 이면 가 0.5 근처에 몰린다(혹 모양).
연습 8.2 (등각 구간의 위쪽 한계 ★★★) 정리 8.2에서 점수가 연속이면 포함확률이 이하임도 보여라. , 이면 포함확률은 정확히 얼마인가?
풀이
점수가 연속이면 순위가 정확히 균등하므로 포함확률은 정확히 이고, 이므로 . , 이면 이고 포함확률은 정확히 다.
연습 8.3 (Bonferroni와 독립 ★) 검정들이 독립이면 각각 로 할 때 가족별 오류율이 정확히 임을 보이고, , 에서 계산하라. Bonferroni 한계와 얼마나 가까운가?
풀이
독립이면 하나도 기각하지 않을 확률이 이므로 가족별 오류율은 . Bonferroni 한계 0.05와 거의 같다. 독립에서도 한계가 거의 정확하다.
연습 8.4 (BH를 손으로 ★★) 개의 -값 , , , , , , , , , 에 의 Benjamini–Hochberg를 적용하면 몇 개를 기각하는가? Bonferroni는?
풀이
기준선 와 비교하면 이고 에서는 모두 넘으므로 , 네 개를 기각한다. Bonferroni()는 둘(0.001, 0.004)이다.
연습 8.5 (순위의 균등성 ★★) , 이면 사후분포는 이다. 노트북에서 를 뽑고, 를 만들고, 사후분포에서 표본 19개를 뽑아 의 순위를 기록하는 일을 수천 번 하라. 순위가 에서 균등함을 확인하고, 사후분산을 일부러 로 틀리게 하면 히스토그램이 어떻게 되는지 보라.
풀이
올바른 사후분포 이면 와 사후표본 19개는 (가 주어질 때) 같은 분포에서 나온 교환가능한 20개이므로 순위가 균등하다(보조정리 8.1). 사후분산을 로 줄이면 사후표본이 너무 모여 있어 가 양 끝 순위(1이나 20)에 자주 떨어진다. 히스토그램이 U자가 된다.
연습 8.6 (교환가능한 순위의 증명 ★★ 유도형) 보조정리 8.1를 증명하라. 는 의 순위다.
- (a)
와 을 맞바꾸는 순열을 에 쓰면 결합분포가 같다는 것에서 을 보여라.
- (b)
같은 값이 없으면 각 에 대해 인 가 정확히 하나임을 보이고 을 얻어라.
- (c)
(a)와 (b)로 을 결론지어라.
- (d)
같은 값이 나올 수 있으면 (b)의 어느 부분이 틀리는가? 가 모두 같은 극단적인 경우로 확인하라.
풀이
(a) 를 와 을 맞바꾸는 순열이라 하자. 교환가능성으로 은 과 분포가 같다. 는 의 함수이고, 맞바꾼 벡터에 같은 함수를 쓰면 이 된다. 따라서 와 은 분포가 같다. (b) 값이 모두 다르면 을 작은 것부터 늘어놓을 때 번째 자리에 정확히 하나가 있고, 그 하나만 이다. 사건 ()은 확률 0인 사건을 빼면 쌍마다 서로소이고 합집합이 전체이므로 확률의 합이 1이다. (c) (a)로 개의 확률이 모두 이므로 이다. (d) 같은 값이 있으면 번째 자리에 둘 이상이 있거나 아무도 없을 수 있다. 모든 가 같으면 모든 이고, 은 균등하지 않다.