142강은 까지 말했습니다. 오차가 으로 간다는 것만 알고 그 모양은 모릅니다.
그런데 142강 문제 5에서 이상한 것을 보았습니다. 경험분포함수와 참값의 최대 거리에 을 곱했더니 에서 사이에 계속 머물렀습니다. 으로 가는 양에 을 곱했더니 흩어지지도 발산하지도 않았습니다.
이 확대경으로 보면 무엇이 남습니까. 이 강의의 답은 놀랍습니다. 원래 분포가 무엇이든 상관없이 언제나 같은 것이 남습니다.
이것이 중심극한정리이며 확률론에서 가장 널리 쓰이는 정리입니다. 141강에서 정규분포가 합에 닫힌다는 것을 보았는데, 이 정리는 그보다 훨씬 셉니다. 정규가 아닌 분포를 더해도 정규가 됩니다.
증명 도구는 141강의 적률생성함수를 복소수로 확장한 특성함수이며, 그 정체는 58강의 푸리에 변환입니다.
문제. 주사위 분포와 베르누이 에서 합의 분포를 정확히 계산합니다.
(1) 표준화한 합의 분포함수와 표준정규의 최대 거리를 재세요.
(2) 두 분포의 수렴 속도를 비교하세요.
(3) 차이가 나는 이유를 말하세요.
생각의 실마리. 141강에서 이산 합의 분포가 합성곱이었습니다. 주사위와 베르누이는 값이 유한하므로 정확히 계산할 수 있으며, 모의실험이 필요 없습니다.
풀이. (1)(2) 검산 결과입니다.
| 주사위 최대 거리 | 베르누이 최대 거리 | |
|---|---|---|
둘 다 줄어듭니다. 원래 분포가 하나는 여섯 값에 균등하고 하나는 두 값에 크게 치우쳤는데, 같은 목적지로 갑니다.
(3) 그런데 속도가 완전히 다릅니다. 에서 주사위는 인데 베르누이는 로 일곱 배 나쁩니다.
이유는 대칭성입니다. 주사위는 를 중심으로 좌우 대칭이라 치우침이 없고, 베르누이 은 오른쪽으로 크게 치우쳐 있습니다. 정규분포는 대칭이므로 치우친 분포는 그것을 지워 나가는 데 시간이 더 걸립니다.
**의 주사위 값 이 정확히 **입니다. 주사위 두 개 합의 분포가 삼각형이고 그 계단이 씩이므로 나오는 값입니다.
이 문제에서 배우는 것: 중심극한정리.
중심극한정리(린데베르그-레비). 가 독립이고 같은 분포이며 이면
화살표가 분포수렴이며, 분포함수가 각 점에서 수렴한다는 뜻입니다.
| 수렴 | 무엇이 수렴하는가 | 세기 |
|---|---|---|
| 거의 확실한 수렴 | 경로 | 가장 셉니다 |
| 확률 수렴 | 값이 가까울 확률 | 중간 |
| 분포수렴 | 분포함수 | 가장 약합니다 |
중심극한정리는 가장 약한 수렴만 말합니다. 의 값이 어떤 수에 가까워지는 것이 전혀 아니며, 은 끝까지 요동칩니다. 다만 그 요동의 분포가 자리를 잡습니다.
원래 분포는 두 개의 수로만 기억됩니다. 극한에는 와 만 남고 모양은 전부 사라집니다.
이것이 이 정리가 널리 쓰이는 이유입니다. 모집단 분포를 몰라도 평균과 분산만 알면 표본평균의 분포를 쓸 수 있습니다.
바로 확인 1.
확인 1-1. 중심극한정리의 표준화 식을 쓰세요.
답. 입니다.
확인 1-2. 어떤 종류의 수렴인지 쓰세요.
답. 분포수렴이며 가장 약한 수렴입니다.
확인 1-3. 치우친 분포가 느린 이유를 쓰세요.
답. 정규분포가 대칭이라 치우침을 지우는 데 시간이 걸립니다.
문제. 표준화한 합의 로그 적률생성함수를 에서 계산합니다.
(1) 주사위와 지수분포에서 을 키우며 값을 보세요.
(2) 극한값이 무엇인지 확인하세요.
(3) 두 분포의 오차 감소 속도를 비교하고 이유를 말하세요.
생각의 실마리. 134강에서 누율이 더해진다고 했습니다. 을 전개하면 각 항이 누율이므로, 표준화가 각 항에 무엇을 하는지 보면 됩니다.
풀이. (1)(2) 검산 결과입니다. 극한은 입니다.
| 주사위 | 지수 | 주사위 오차 | 지수 오차 | |
|---|---|---|---|---|
| 1.93\times10^ | 4.89\times10^ | |||
| 1.02\times10^ | 2.17\times10^ | |||
| 4.22\times10^ | 1.05\times10^ | |||
| 2.14\times10^ | 6.68\times10^ | |||
| 7.19\times10^ | 3.50\times10^ | |||
| 2.16\times10^ | 1.82\times10^ | |||
| 2.16\times10^ | 5.50\times10^ |
둘 다 로 갑니다. 그리고 는 표준정규분포의 로그 적률생성함수입니다.
(3) 속도가 다릅니다. 주사위 오차는 이 배가 되면 배 줄어들고(), 지수 오차는 배가 되면 약 배만 줄어듭니다().
이 문제에서 배우는 것: 누율이 답을 줍니다.
표준화한 에 넣으면 다음이 됩니다.
표준화가 차수마다 다른 벌점을 줍니다. 차 항에 가 붙으므로 인 항은 모두 사라지고 차 항만 정확히 살아남습니다.
| 차수 | 뜻 | 이 붙는 방식 | 극한 |
|---|---|---|---|
| 평균 | 빼서 없앴습니다 | ||
| 분산 | 나눠서 로 맞췄습니다 | ||
| 왜도 | 1/\sqrt | ||
| 첨도 | |||
| 고차 누율 | n^ |
인 분포는 표준정규뿐이므로 극한이 정해집니다. 134강에서 적률생성함수가 분포를 결정한다고 한 사실이 여기서 결론을 확정합니다.
왜 정규가 특별한가. 정규분포는 차 이상의 누율이 모두 인 유일한 분포입니다. 표준화가 고차 누율을 지우므로 남는 것은 정규뿐입니다.
주사위가 빠른 이유가 표에서 읽힙니다. 주사위는 대칭이라 이고, 차 항이 처음부터 없으므로 오차가 차 항의 부터 시작합니다. 지수분포는 라 항이 살아 있습니다.
바로 확인 2.
확인 2-1. 표준정규의 로그 적률생성함수를 쓰세요.
답. 입니다.
확인 2-2. 차 누율 항에 붙는 의 거듭제곱을 쓰세요.
답. 입니다.
확인 2-3. 대칭 분포가 빠르게 수렴하는 이유를 쓰세요.
답. 이라 항이 없기 때문입니다.
문제. 문제 2의 증명은 적률생성함수가 있어야 합니다.
(1) 코시분포의 적률생성함수가 존재하는지 판정하세요.
(2) 특성함수를 정의하고 지수분포에서 확인하세요.
(3) 코시의 특성함수로 142강 문제 4를 설명하세요.
생각의 실마리. 는 가 커지면 폭발하지만 는 **크기가 언제나 **입니다. 이 차이가 전부입니다.
풀이. (1) 에서 적분 범위를 넓혀 가며 잽니다.
| 절단 | 적분값 |
|---|---|
을 키울수록 커지며 멈추지 않습니다. 코시의 밀도가 로 줄어드는데 가 지수로 커지므로 곱이 발산합니다. 코시의 적률생성함수는 에서 존재하지 않습니다.
(2) 특성함수를 지수분포에서 수치로 확인합니다.
| 실수부 수치 | 허수부 수치 | |||
|---|---|---|---|---|
아홉 자리까지 맞습니다. 지수분포의 특성함수는 입니다.
(3) 코시의 특성함수 를 반전공식으로 되돌립니다.
| 되돌린 밀도 | 차이 | ||
|---|---|---|---|
| 1.33\times10^ | |||
| 1.33\times10^ | |||
| 1.33\times10^ | |||
| 1.33\times10^ | |||
| 1.33\times10^ |
코시의 특성함수가 임이 확인됩니다. 그러면 표본평균의 특성함수가 한 줄로 나옵니다.
이 완전히 사라집니다. 142강 문제 4에서 표본평균이 어디로도 가지 않던 것이 여기서 한 줄로 설명됩니다.
이 문제에서 배우는 것: 특성함수.
특성함수. 로 정의합니다.
| 성질 | 적률생성함수 | 특성함수 |
|---|---|---|
| 존재 | 없을 수 있습니다 | 언제나 있습니다 |
| 크기 | 발산 가능 | |
| 독립 합 | 곱이 됩니다 | 곱이 됩니다 |
| 분포 결정 | 존재하면 결정합니다 | 언제나 결정합니다 |
| 값 | 실수 | 복소수 |
| 정체 | 라플라스 변환 | 푸리에 변환 |
마지막 줄이 이 강의의 뼈대입니다. 58강에서 푸리에 변환이 합성곱을 곱으로 바꾸었고, 141강에서 독립 합이 합성곱이었으므로, 특성함수가 곱이 되는 것은 새로운 사실이 아닙니다.
레비 연속성 정리. 가 모든 에서 성립하고 가 에서 연속이면 분포수렴합니다.
이 정리가 증명을 완성합니다. 특성함수의 수렴만 보이면 분포의 수렴이 따라오므로, 문제 2에서 한 누율 계산을 로 다시 하면 적률생성함수 없이도 중심극한정리가 증명됩니다.
바로 확인 3.
확인 3-1. 특성함수의 정의를 쓰세요.
답. 입니다.
확인 3-2. 특성함수가 언제나 존재하는 이유를 쓰세요.
답. 이라 적분이 언제나 유한하기 때문입니다.
확인 3-3. 코시 표본평균의 특성함수를 쓰세요.
답. 이며 과 무관합니다.
문제. 세 분포에서 실제 최대 거리와 이론적 상한을 견줍니다.
(1) 베리-에센 상한을 계산하세요.
(2) 실제 거리와 비교하세요.
(3) "이면 된다"는 규칙을 판정하세요.
생각의 실마리. 중심극한정리는 극한만 말하고 속도를 말하지 않습니다. 속도를 주는 별도의 정리가 필요합니다.
풀이. (1)(2) 을 쓴 검산 결과입니다.
주사위입니다.
| 실제 최대 거리 | 베리-에센 상한 | 비율 | |
|---|---|---|---|
베르누이 입니다.
| 실제 최대 거리 | 베리-에센 상한 | 비율 | |
|---|---|---|---|
베르누이 입니다.
| 실제 최대 거리 | 베리-에센 상한 | 비율 | |
|---|---|---|---|
상한이 언제나 옳고 치우친 분포에서는 꽤 날카롭습니다. 베르누이 에서 비율이 정도이며, 135강의 체비쇼프가 수천 배 느슨했던 것과 대조됩니다.
(3) "이면 된다"는 규칙은 무너집니다. 베르누이 에서 의 최대 거리가 이며, 분포함수가 거의 절반이나 어긋납니다.
이 문제에서 배우는 것: 베리-에센 부등식.
베리-에센 부등식. 이면
속도가 이고 상수에 이 들어갑니다. 이 값이 분포의 치우침을 재는 양이며, 대칭에서 작고 치우친 분포에서 큽니다.
| 분포 | \rho/\sigma^ | 의 실제 거리 |
|---|---|---|
| 주사위 | ||
| 베르누이 | ||
| 베르누이 |
세 배 커지면 거리도 대략 세 배씩 커집니다.
필요한 은 분포에 따라 정해집니다. 베르누이에서는 대략 과 을 요구하며, 이면 입니다.
"이면 충분"은 대칭에 가까운 분포에 한한 경험칙이며, 희귀 사건, 손실액, 클릭률처럼 치우친 자료에서는 위험합니다. A/B 테스트에서 전환율이 인데 표본 개로 정규근사를 쓰면 결론이 틀립니다.
바로 확인 4.
확인 4-1. 베리-에센 부등식의 우변을 쓰세요.
답. 입니다.
확인 4-2. 수렴 속도를 쓰세요.
답. 입니다.
확인 4-3. 베르누이에서 필요한 조건을 쓰세요.
답. 대략 이고 입니다.
문제. 지수분포의 표본평균에 함수를 씌웁니다.
(1) 의 분포를 표준정규와 비교하세요.
(2) 과 도 비교하세요.
(3) 세 결과가 함께 성립하는 이유를 말하세요.
생각의 실마리. 33강의 미분은 매끄러운 함수를 국소적으로 직선으로 봅니다. 이 근처에 몰려 있으면 도 직선으로 근사됩니다.
풀이. (1)(2) 검산 결과입니다.
| 표본평균 자체 | (표본평균) | (표본평균)^ | |
|---|---|---|---|
세 열이 함께 으로 갑니다. 두 번째 열이 첫 열과 거의 같은 것이 눈에 띄며, 를 씌워도 손해가 거의 없습니다.
(3) 세 번째 열이 조금 느린 것도 읽힙니다. 은 곡률이 커서 직선 근사의 오차가 크기 때문입니다.
이 문제에서 배우는 것: 델타 방법.
델타 방법. 가 에서 미분가능하고 이면
증명이 테일러 전개 한 줄입니다.
나머지 항이 크기라 을 곱해도 으로 갑니다. 95강 다변수 테일러 전개가 여기서 확률의 언어로 쓰였습니다.
| 함수 | 표준화 방법 | |
|---|---|---|
| 그대로 | ||
| 그대로 | ||
| x^ | 로 나눕니다 | |
| \sqrt | 를 곱합니다 |
이면 무너집니다. 이때는 차 항이 주도해 정규가 아니라 카이제곱 꼴이 나옵니다.
이 예외가 152강 가설검정에서 다시 나옵니다. 우도비 검정통계량이 카이제곱을 따르는 이유가 정확히 이것이며, 참값에서 도함수가 이 되기 때문입니다.
델타 방법이 실무의 대부분을 담당합니다. 비율의 로그, 오즈비, 상관계수의 피셔 변환, 기하평균이 모두 이 방법으로 신뢰구간을 얻습니다.
바로 확인 5.
확인 5-1. 델타 방법의 극한분포를 쓰세요.
답. 입니다.
확인 5-2. 증명의 핵심 도구를 쓰세요.
답. 에서의 테일러 전개입니다.
확인 5-3. 이면 어떻게 되는지 쓰세요.
답. 차 항이 주도해 카이제곱 꼴이 됩니다.
| 개념 | 식 |
|---|---|
| 표준화 | |
| 중심극한정리 | |
| 표본평균 판 | |
| 누율 전개 | |
| 특성함수 | |
| 독립 합 | \varphi_{X+Y}=\varphi_{X}\varphi_ |
| 레비 연속성 | 이면 분포수렴 |
| 베리-에센 | |
| 델타 방법 |
| 분포 | 특성함수 |
|---|---|
| 베르누이 | 1-p+pe^ |
| 포아송 | |
| 정규 | |
| 지수 | |
| 코시 | e^ |
| 수렴의 종류 | 기호 | 세기 |
|---|---|---|
| 거의 확실한 수렴 | \xrightarrow | 가장 셉니다 |
| 확률 수렴 | \xrightarrow | 중간입니다 |
| 분포수렴 | 가장 약합니다 |
| 자주 하는 실수 | 바로잡기 |
|---|---|
| 이면 언제나 된다고 봅니다 | 치우침에 따라 이 필요할 수 있습니다 |
| 이 어떤 수로 수렴한다고 봅니다 | 분포만 수렴하며 값은 끝까지 요동칩니다 |
| 원자료가 정규가 된다고 봅니다 | 정규가 되는 것은 합이나 평균입니다 |
| 코시에도 쓸 수 있다고 봅니다 | 분산이 무한이라 가정이 깨집니다 |
| 적률생성함수가 없으면 못 한다고 봅니다 | 특성함수는 언제나 있습니다 |
| 델타 방법을 에서 씁니다 | 카이제곱 꼴이 됩니다 |
문제 6. 중심극한정리를 진술하세요.
답. 입니다.
문제 7. 이 정리가 요구하는 가정을 쓰세요.
답. 독립이고 같은 분포이며 입니다.
문제 8. 극한에 원래 분포의 무엇이 남는지 쓰세요.
답. 와 만 남고 모양은 사라집니다.
문제 9. 표준정규의 로그 적률생성함수와 그 뜻을 쓰세요.
답. 이며 차 이상 누율이 모두 이라는 뜻입니다.
문제 10. 차 누율 항이 표준화 뒤에 갖는 크기를 쓰세요.
답. 입니다.
문제 11. 대칭 분포가 빠른 이유를 쓰세요.
답. 이라 오차가 부터 시작합니다.
문제 12. 특성함수의 정의와 존재 이유를 쓰세요.
답. 이며 이라 언제나 존재합니다.
문제 13. 특성함수와 적률생성함수의 정체를 각각 쓰세요.
답. 푸리에 변환과 라플라스 변환입니다.
문제 14. 레비 연속성 정리를 쓰세요.
답. 특성함수가 각 점에서 수렴하고 극한이 에서 연속이면 분포수렴합니다.
문제 15. 코시 표본평균의 특성함수와 그 함의를 쓰세요.
답. 로 과 무관하며 평균을 내도 소용이 없습니다.
문제 16. 베리-에센 부등식과 속도를 쓰세요.
답. 이며 속도는 입니다.
문제 17. 베르누이 에서 의 최대 거리를 쓰고 판정하세요.
답. 이며 정규근사를 쓸 수 없습니다.
문제 18. 델타 방법과 그것이 깨지는 조건을 쓰세요.
답. 이며 이면 깨집니다.
심화 1. 특성함수의 성질을 정리하세요.
특성함수는 분포를 다루는 가장 강력한 도구입니다.
| 성질 | 내용 |
|---|---|
| 존재 | 모든 분포에 대해 존재합니다 |
| 정규화 | 이고 입니다 |
| 켤레 | 입니다 |
| 대칭 | 분포가 대칭이면 가 실수입니다 |
| 선형변환 | 입니다 |
| 독립 합 | 입니다 |
| 적률 | 입니다 |
| 유일성 | 같은 이면 같은 분포입니다 |
| 반전 | 입니다 |
| 매끄러움 | 꼬리가 가벼울수록 가 매끄럽습니다 |
마지막 줄이 푸리에 변환의 익숙한 성질입니다. 58강에서 함수가 매끄러울수록 변환이 빨리 줄어든다고 했는데, 여기서는 꼬리와 매끄러움이 자리를 바꿉니다.
아홉째 줄의 반전공식을 문제 3에서 직접 썼습니다. 를 넣어 코시 밀도를 얻었고 차이가 였습니다.
넷째 줄이 문제 1의 속도 차이를 다시 설명합니다. 대칭이면 가 실수이므로 허수부가 없고, 허수부가 곧 치우침입니다.
심화 2. 중심극한정리의 여러 판본을 정리하세요.
이 강의가 증명한 것은 가장 기본형입니다.
| 판본 | 가정 | 얻는 것 |
|---|---|---|
| 린데베르그-레비 | 독립, 같은 분포, | 기본형 |
| 랴푸노프 | 독립, 차 적률 조건 | 분포가 달라도 됩니다 |
| 린데베르그-펠러 | 독립, 린데베르그 조건 | 가장 일반적인 독립 판본 |
| 다변량 | 벡터, 공분산행렬 유한 | 로 수렴 |
| 마팅게일 | 조건부 분산 조건 | 종속이어도 됩니다 |
| 혼합 시계열 | 약한 종속 | 장기 분산이 들어갑니다 |
둘째와 셋째 줄이 중요한 확장입니다. 실제 자료는 같은 분포가 아닌 경우가 많은데, 어느 한 항이 합을 지배하지 않으면 여전히 정규가 나옵니다.
"큰 값 하나가 전체를 좌우하지 않는다"를 수식으로 쓴 것이며, 이것이 깨지는 대표적 자리가 꼬리가 두꺼운 분포입니다.
넷째 줄이 140강과 만납니다. 벡터의 표본평균을 표준화하면 다변량 정규로 가며, 그 공분산행렬이 원래 분포의 공분산행렬입니다. 크라메르-볼드 장치로 모든 선형결합의 일변량 수렴에서 벡터 수렴을 얻으며, 이 논법이 다변량 정규의 정의가 "모든 선형결합이 정규"인 이유와 정확히 맞물립니다.
여섯째 줄이 시계열과 MCMC의 근거입니다. 이때 분산 자리에 장기 분산이 들어가며, 심화 2에서 본 자기상관 보정과 같은 양입니다.
심화 3. 분산이 무한하면 어디로 가는지 정리하세요.
중심극한정리는 를 요구합니다. 깨지면 다른 극한이 나옵니다.
일반화 중심극한정리. 꼬리가 로 줄어들면 일 때 적절히 표준화한 합이 특성 지수 의 안정분포로 수렴합니다.
| 극한 | 표준화 배율 | 예 | |
|---|---|---|---|
| 정규 | \sqrt | 유한 분산 전부 | |
| 코시 | 코시 | ||
| 레비 | n^ | 브라운 운동의 도달시간 | |
| 안정분포 | n^ | 파레토 꼬리 |
표준화 배율이 입니다. 에서 이 되므로 정규가 안정분포족의 한 경우입니다.
둘째 줄이 문제 3의 결과와 같습니다. 코시는 이고 배율이 인데, 표본평균이 이미 으로 나눈 것이라 분포가 그대로 남습니다.
141강 심화 3에서 예고한 안정분포가 여기서 자리를 찾습니다. 정규만이 아니라 합에 닫힌 분포 전체가 극한의 후보이며, 유한 분산이라는 조건이 그중 정규 하나를 골라 줍니다.
심화 4. 근사를 더 정확하게 만드는 방법을 정리하세요.
베리-에센이 오차의 크기를 주었다면 에지워스 전개는 오차의 모양을 줍니다.
보정항의 첫 줄이 왜도이며, 문제 2에서 으로 사라지던 그 항입니다. 이 항을 빼 주면 오차가 으로 줄어듭니다.
| 보정 | 고치는 것 | 개선 |
|---|---|---|
| 에지워스 차 | 왜도 | |
| 에지워스 차 | 첨도 | 1/n\to n^ |
| 연속성 보정 | 이산의 계단 | 작은 에서 큰 효과 |
| 안장점 근사 | 꼬리 전체 | 상대오차가 균등합니다 |
| 부트스트랩 | 자동으로 | 이론 없이 |
셋째 줄이 값싸고 효과가 큽니다. 이항분포를 정규로 근사할 때 대신 를 쓰는 것이며, 계단함수를 매끄러운 함수로 근사할 때 생기는 체계적 오차를 절반으로 줄입니다.
다섯째 줄이 151강의 주제입니다. 부트스트랩은 에지워스 보정을 이론 없이 자동으로 해내며, 그것이 실무에서 널리 쓰이는 이유입니다.
심화 5. 중심극한정리가 오해되는 자리를 정리하세요.
| 오해 | 실제 |
|---|---|
| 표본이 크면 자료가 정규가 됩니다 | 자료는 그대로이고 평균이 정규가 됩니다 |
| 이면 안전합니다 | 치우침에 따라 도 부족합니다 |
| 평균만 정규가 됩니다 | 매끄러운 함수도 델타 방법으로 됩니다 |
| 꼬리 확률도 정확합니다 | 중심은 맞고 극단 꼬리는 크게 틀립니다 |
| 독립이 아니어도 됩니다 | 종속이면 분산이 달라집니다 |
| 이상치를 빼면 더 잘 맞습니다 | 분포 자체가 바뀌어 추정 대상이 달라집니다 |
넷째 줄이 실무에서 가장 비쌉니다. 중심극한정리는 고정된 에서의 수렴을 말하므로, 가 과 함께 커지는 극단 꼬리에서는 상대오차가 발산할 수 있습니다.
금융 위험관리에서 이 오해가 반복해서 큰 손실을 냈습니다. 꼬리를 다루려면 큰 편차 이론이나 극단값 이론이 필요하며, 정규근사는 중심 근처에서만 믿을 수 있습니다.
여섯째 줄도 조용합니다. 이상치를 제거하면 잔여 자료의 평균은 원래 모평균이 아닙니다. 142강 심화 5의 생존 편향과 같은 구조입니다.
심화 6. 기계학습에서 이 정리가 쓰이는 자리를 정리하세요.
| 자리 | 어떻게 쓰이는가 | 관련 강의 |
|---|---|---|
| 가중치 초기화 | 입력 합이 정규가 되도록 분산을 맞춥니다 | 243강 |
| 배치 정규화 | 층 출력이 정규에 가깝다고 보고 표준화합니다 | 244강 |
| 신뢰구간 | 표본평균의 정규근사로 구간을 만듭니다 | 151강 |
| A/B 테스트 | 두 비율 차이의 정규근사를 씁니다 | 152강 |
| 부트스트랩 | 재표본 분포가 표본분포에 수렴합니다 | 151강 |
| 확산모형 | 잡음의 합이 정규라 역과정이 닫힙니다 | 261강 |
| 랜덤 특징 | 무작위 사영의 합이 커널로 수렴합니다 | 224강 |
| 미니배치 잡음 | 기울기 잡음을 정규로 모형화합니다 | 238강 |
첫째 줄이 딥러닝의 출발선입니다. 층 하나의 출력이 이고 항이 많으므로 중심극한정리로 정규에 가까워지며, 분산이 층마다 유지되도록 으로 맞추는 것이 사비에르 초기화입니다.
여섯째 줄이 가장 깊습니다. 확산모형은 각 단계에서 정규잡음을 더하는데, 정규가 합에 닫히므로 여러 단계를 건너뛴 조건부분포도 정규입니다. 이 닫힘성이 없으면 임의의 시점 에서 바로 표본을 뽑을 수 없어 학습이 불가능합니다.
일곱째 줄이 커널 방법과 신경망을 잇습니다. 무작위 특징을 많이 쓰면 그 합이 결정적인 커널로 수렴하며, 폭이 무한한 신경망이 가우스 과정이 되는 것과 같은 계산입니다.
정답.
| 기호 | 읽는 법 | 뜻 |
|---|---|---|
| Z_ | 표준화한 합 | 입니다 |
| 분포수렴 | 분포함수가 수렴합니다 | |
| 특성함수 | 입니다 | |
| 표준정규 분포함수 | 누적확률입니다 | |
| 표준정규 밀도 | 의 도함수입니다 | |
| \kappa_ | 차 누율 | 의 전개 계수입니다 |
| 3차 절대적률 | 입니다 | |
| 베리-에센 | Berry-Esseen | 수렴 속도의 상한입니다 |
| 레비 연속성 | Levy continuity | 특성함수 수렴이 분포수렴을 줍니다 |
| 린데베르그 조건 | Lindeberg condition | 한 항이 지배하지 않음입니다 |
| 안정분포 | stable distribution | 합의 극한이 될 수 있는 분포입니다 |
| 에지워스 전개 | Edgeworth expansion | 정규근사의 보정항입니다 |
| 연속성 보정 | continuity correction | 이산에 를 더합니다 |
| 델타 방법 | delta method | 매끄러운 함수의 정규근사입니다 |
| 크라메르-볼드 | Cramer-Wold | 모든 선형결합으로 벡터 수렴을 봅니다 |
다음은 144강 표본평균과 표본분산의 분포입니다. 이 강의는 를 안다고 가정했습니다. 실제로는 도 표본에서 추정해야 합니다.
분모가 확률변수가 되면 이 비율은 더 이상 정규가 아닙니다. 144강이 표본분산 의 분포를 구하고, 145강이 이 비율의 정확한 분포를 줍니다. 정규 표본에서는 근사가 아니라 정확한 답이 나옵니다.
import numpy as np
zg = (np.arange(240001) - 120000) * 1e-4 # 표준정규 분포함수를 격자 누적으로 만듭니다
phig = np.exp(-zg * zg / 2) / np.sqrt(2 * np.pi)
cdfg = (np.cumsum(phig) - 0.5 * phig) * 1e-4
cdfg = cdfg - cdfg[120000] + 0.5
def Phi(z):
return np.interp(z, zg, cdfg)
def maxdist(pmf, vals, m1, v1, n):
m, s = n * m1, np.sqrt(n * v1)
z = (vals - m) / s
F = np.cumsum(pmf)
P = Phi(z)
return float(max(np.max(np.abs(F - P)), np.max(np.abs(F - pmf - P))))
# --- 문제 1: 분포가 달라도 표준화한 합은 표준정규로 간다 -----------------
print(" 두 분포에서 합을 정확히 계산해 표준정규와의 최대 거리를 잽니다")
die = np.ones(6) / 6.0
ber = np.array([0.9, 0.1])
pd = np.array([1.0])
pb = np.array([1.0])
res = {}
for n in range(1, 31):
pd = np.convolve(pd, die)
pb = np.convolve(pb, ber)
if n in [1, 2, 5, 10, 30]:
res[n] = (maxdist(pd, np.arange(n, 6 * n + 1), 3.5, 35.0 / 12.0, n),
maxdist(pb, np.arange(0, n + 1), 0.1, 0.09, n))
print(" n 주사위 최대거리 베르누이(0.1) 최대거리")
for n in [1, 2, 5, 10, 30]:
print(" %9d %12.8f %12.8f" % (n, res[n][0], res[n][1]))
print(" 둘 다 줄어듭니다. 그런데 같은 n 에서 치우친 쪽이 훨씬 나쁩니다")
print(" 주사위는 대칭이라 빠르고 베르누이(0.1) 은 치우쳐서 느립니다")
# --- 문제 2: 누율 전개가 이유를 말해 준다 -------------------------------
print(" 표준화한 합의 로그 적률생성함수가 t^2/2 로 가는지 봅니다")
def logM_die(t):
return float(np.log(np.mean(np.exp(t * np.arange(1, 7)))))
def logM_exp(t):
return float(-np.log(1.0 - t))
t0 = 0.8
print(" t = %.1f 이므로 극한은 t^2/2 = %.8f 입니다" % (t0, t0 * t0 / 2))
print(" n 주사위 logM(Z_n) 지수 logM(Z_n) 주사위 오차 지수 오차")
for n in [1, 2, 5, 10, 30, 100, 1000]:
sd, se = np.sqrt(35.0 / 12.0), 1.0
a = n * logM_die(t0 / (sd * np.sqrt(n))) - t0 * 3.5 * np.sqrt(n) / sd
b = n * logM_exp(t0 / (se * np.sqrt(n))) - t0 * 1.0 * np.sqrt(n) / se
print(" %9d %13.8f %13.8f %10.2e %10.2e"
% (n, a, b, abs(a - t0 * t0 / 2), abs(b - t0 * t0 / 2)))
print(" 주사위의 3차 누율은 0 이고 지수의 3차 누율은 2 입니다")
print(" 3차 누율이 0 이면 오차가 1/n 로, 아니면 1/sqrt(n) 로 줄어듭니다")
# --- 문제 3: 적률생성함수가 없어도 특성함수는 있다 -----------------------
print(" 코시의 적률생성함수를 t = 0.1 에서 잘라 재 봅니다")
print(" 절단 L 적분값")
for L in [10.0, 20.0, 40.0, 80.0]:
N = 2000000
h = 2 * L / N
xs = -L + (np.arange(N) + 0.5) * h
print(" %11.1f %14.6f"
% (L, float(np.sum(np.exp(0.1 * xs) / (np.pi * (1 + xs * xs))) * h)))
print(" L 을 키울수록 커집니다. 코시의 적률생성함수는 t > 0 에서 없습니다")
print(" 특성함수는 |e^{itx}| = 1 이라 언제나 있습니다. 지수분포에서 확인합니다")
N = 6000000
h = 60.0 / N
xs = (np.arange(N) + 0.5) * h
w = np.exp(-xs) * h
print(" t 실수부 수치 1/(1+t^2) 허수부 수치 t/(1+t^2)")
for t in [0.5, 1.0, 2.0]:
re = float(np.sum(np.cos(t * xs) * w))
im = float(np.sum(np.sin(t * xs) * w))
print(" %7.1f %13.9f %13.9f %13.9f %13.9f"
% (t, re, 1 / (1 + t * t), im, t / (1 + t * t)))
print(" 이번에는 코시의 특성함수 e^{-|t|} 를 되돌려 밀도를 얻습니다")
N2 = 4000000
h2 = 40.0 / N2
tt = (np.arange(N2) + 0.5) * h2
wt = np.exp(-tt) * h2 / np.pi
print(" x 되돌린 밀도 1/(pi(1+x^2)) 차이")
for x in [0.0, 0.5, 1.0, 2.0, 5.0]:
f = float(np.sum(np.cos(tt * x) * wt))
tr = 1.0 / (np.pi * (1 + x * x))
print(" %7.1f %14.10f %14.10f %10.2e" % (x, f, tr, abs(f - tr)))
print(" 코시의 특성함수는 e^{-|t|} 이므로 표본평균의 특성함수는")
print(" (e^{-|t|/n})^n = e^{-|t|} 로 n 과 무관하게 같습니다")
print(" 142강 문제 4 에서 본 현상이 한 줄로 설명됩니다")
# --- 문제 4: 얼마나 커야 충분한가 ---------------------------------------
print(" 베리-에센 상한과 실제 거리를 견줍니다. 상수는 0.4748 을 씁니다")
C = 0.4748
rho_d = float(np.mean(np.abs(np.arange(1, 7) - 3.5) ** 3))
sd3 = (35.0 / 12.0) ** 1.5
cases = [("주사위", die, 3.5, 35.0 / 12.0, rho_d, sd3)]
for p in [0.1, 0.01]:
v = p * (1 - p)
rho = p * (1 - p) * ((1 - p) ** 2 + p ** 2)
cases.append(("베르누이(%.2f)" % p, np.array([1 - p, p]), p, v, rho, v ** 1.5))
for name, p1, m1, v1, rho, s3 in cases:
acc = np.array([1.0])
keep = {}
for n in range(1, 101):
acc = np.convolve(acc, p1)
if n in [5, 30, 100]:
vals = np.arange(n, 6 * n + 1) if len(p1) == 6 else np.arange(0, n + 1)
keep[n] = maxdist(acc, vals, m1, v1, n)
print(" %s 입니다" % name)
print(" n 실제 최대거리 베리-에센 상한 비율")
for n in [5, 30, 100]:
ub = C * rho / (s3 * np.sqrt(n))
print(" %9d %12.8f %12.8f %9.2f" % (n, keep[n], ub, ub / keep[n]))
print(" 치우친 분포일수록 같은 n 에서 훨씬 나쁩니다")
print(" n >= 30 이면 된다는 규칙은 베르누이(0.01) 에서 무너집니다")
# --- 문제 5: 합이 아닌 것도 정규로 간다 ---------------------------------
print(" 표본평균에 함수를 씌워도 정규로 가는지 봅니다. 델타 방법입니다")
rng = np.random.default_rng(20260811)
Msim = 200000
grid = np.linspace(-4.0, 4.0, 8001)
Fg = Phi(grid)
def ksdist(z):
zs = np.sort(z)
Fn = np.searchsorted(zs, grid, side="right") / len(z)
return float(np.max(np.abs(Fn - Fg)))
print(" n 표본평균 자체 log(표본평균) (표본평균)^2")
for n in [5, 30, 100, 1000]:
xb = rng.gamma(n, 1.0, size=Msim) / n
z0 = np.sqrt(n) * (xb - 1.0)
z1 = np.sqrt(n) * np.log(xb)
z2 = np.sqrt(n) * (xb * xb - 1.0) / 2.0
print(" %9d %12.8f %12.8f %12.8f" % (n, ksdist(z0), ksdist(z1), ksdist(z2)))
print(" 세 열이 함께 0 으로 갑니다. g'(1) = 1 과 g'(1) = 2 로 나눠 준 덕분입니다")
print(" 이것이 델타 방법이며 33강 미분의 선형근사가 확률로 옮겨온 것입니다")
# 두 분포에서 합을 정확히 계산해 표준정규와의 최대 거리를 잽니다
# n 주사위 최대거리 베르누이(0.1) 최대거리
# 1 0.14344560 0.53055866
# 2 0.08333333 0.49132406
# 5 0.05245488 0.36246173
# 10 0.03710340 0.23609893
# 30 0.02135618 0.14743917
# 둘 다 줄어듭니다. 그런데 같은 n 에서 치우친 쪽이 훨씬 나쁩니다
# 주사위는 대칭이라 빠르고 베르누이(0.1) 은 치우쳐서 느립니다
# 표준화한 합의 로그 적률생성함수가 t^2/2 로 가는지 봅니다
# t = 0.8 이므로 극한은 t^2/2 = 0.32000000 입니다
# n 주사위 logM(Z_n) 지수 logM(Z_n) 주사위 오차 지수 오차
# 1 0.30071912 0.80943791 1.93e-02 4.89e-01
# 2 0.30980744 0.53660151 1.02e-02 2.17e-01
# 5 0.31577549 0.42519636 4.22e-03 1.05e-01
# 10 0.31786174 0.38684070 2.14e-03 6.68e-02
# 30 0.31928133 0.35502702 7.19e-04 3.50e-02
# 100 0.31978377 0.33816089 2.16e-04 1.82e-02
# 1000 0.31997835 0.32550147 2.16e-05 5.50e-03
# 주사위의 3차 누율은 0 이고 지수의 3차 누율은 2 입니다
# 3차 누율이 0 이면 오차가 1/n 로, 아니면 1/sqrt(n) 로 줄어듭니다
# 코시의 적률생성함수를 t = 0.1 에서 잘라 재 봅니다
# 절단 L 적분값
# 10.0 0.964576
# 20.0 1.034634
# 40.0 1.185325
# 80.0 3.151371
# L 을 키울수록 커집니다. 코시의 적률생성함수는 t > 0 에서 없습니다
# 특성함수는 |e^{itx}| = 1 이라 언제나 있습니다. 지수분포에서 확인합니다
# t 실수부 수치 1/(1+t^2) 허수부 수치 t/(1+t^2)
# 0.5 0.800000000 0.800000000 0.400000000 0.400000000
# 1.0 0.500000000 0.500000000 0.500000000 0.500000000
# 2.0 0.200000000 0.200000000 0.400000000 0.400000000
# 이번에는 코시의 특성함수 e^{-|t|} 를 되돌려 밀도를 얻습니다
# x 되돌린 밀도 1/(pi(1+x^2)) 차이
# 0.0 0.3183098862 0.3183098862 1.33e-12
# 0.5 0.2546479089 0.2546479089 1.33e-12
# 1.0 0.1591549431 0.1591549431 1.33e-12
# 2.0 0.0636619772 0.0636619772 1.33e-12
# 5.0 0.0122426879 0.0122426879 1.33e-12
# 코시의 특성함수는 e^{-|t|} 이므로 표본평균의 특성함수는
# (e^{-|t|/n})^n = e^{-|t|} 로 n 과 무관하게 같습니다
# 142강 문제 4 에서 본 현상이 한 줄로 설명됩니다
# 베리-에센 상한과 실제 거리를 견줍니다. 상수는 0.4748 을 씁니다
# 주사위 입니다
# n 실제 최대거리 베리-에센 상한 비율
# 5 0.05245488 0.27175385 5.18
# 30 0.02135618 0.11094304 5.19
# 100 0.01168502 0.06076601 5.20
# 베르누이(0.10) 입니다
# n 실제 최대거리 베리-에센 상한 비율
# 5 0.36246173 0.58038784 1.60
# 30 0.14743917 0.23694234 1.61
# 100 0.08315551 0.12977867 1.56
# 베르누이(0.01) 입니다
# n 실제 최대거리 베리-에센 상한 비율
# 5 0.53989667 2.09181277 3.87
# 30 0.44870592 0.85397899 1.90
# 100 0.23576198 0.46774355 1.98
# 치우친 분포일수록 같은 n 에서 훨씬 나쁩니다
# n >= 30 이면 된다는 규칙은 베르누이(0.01) 에서 무너집니다
# 표본평균에 함수를 씌워도 정규로 가는지 봅니다. 델타 방법입니다
# n 표본평균 자체 log(표본평균) (표본평균)^2
# 5 0.06133243 0.06309276 0.13844411
# 30 0.02633481 0.02685528 0.04435490
# 100 0.01284545 0.01384788 0.02166483
# 1000 0.00355481 0.00463695 0.00736720
# 세 열이 함께 0 으로 갑니다. g'(1) = 1 과 g'(1) = 2 로 나눠 준 덕분입니다
# 이것이 델타 방법이며 33강 미분의 선형근사가 확률로 옮겨온 것입니다