푸아송 근사와 거대 컴포넌트 — 평균 차수 1이라는 임계점
SNA 이론 · 단계별 학습 차례

단원 4-2The Poisson Limit and the Giant Component

푸아송 근사와 거대 컴포넌트 — 평균 차수 1이라는 임계점

SNA 이론 · 단계별 학습STAGED+ 스터디
오늘 배우는 것 한 줄 요약
망이 커지면 (1460k)\binom{1460}{k} 같은 수는 손으로도 컴퓨터로도 다루기 나쁘다. 그런데 nn이 크고 pp가 작으면 이항분포는 매개변수 하나짜리 푸아송 분포로 무너진다 — P(k)=eλλk/k!P(k)=e^{-\lambda}\lambda^k/k!. 오늘은 ① 그 무너짐을 네 조각으로 쪼개 손으로 확인하고, ② 거기서 곧바로 나오는 고립자 기대 수 neλn\,e^{-\lambda}를 FMH의 실제 고립 학생 524명과 맞춰 보고, ③ 평균 차수가 1을 넘는 순간 망을 관통하는 덩어리가 갑자기 생기는 상전이를 반복 대입으로 손 계산한다.
오늘의 결론을 미리 말하면 — FMH는 고립자가 139명 남고, 거대 덩어리는 225명 모자란다. 같은 평균인데 바깥은 더 붐비고 안쪽은 더 헐겁다.

1. 오늘의 질문: 1461명짜리 이항분포를 어떻게 다루나 (Why the Binomial Breaks Down)

4-1에서 얻은 차수 분포는 이것이었다.

P(d=k)=(n1k)pk(1p)n1k P(d=k)=\binom{n-1}{k}p^k(1-p)^{n-1-k}

n=5n=5일 때는 다섯 항을 손으로 전부 썼다. 그런데 FMH는 n=1461n=1461이다.

n1n-1pp(n1k)\binom{n-1}{k}가 어떻게 되는가
손 계산 예제40.4(42)=6\binom42=6 — 암산
가라테330.1390(335)=237,336\binom{33}{5}=237{,}336 — 계산기
FMH14600.000913(14605)5.4×1013\binom{1460}{5}\approx 5.4\times10^{13} — 여기에 p56×1016p^5\approx 6\times10^{-16}를 곱한다. 큰 수 × 작은 수

수치적으로도 나쁘고, 무엇보다 매개변수가 둘(nnpp)이라 감이 안 잡힌다. 그런데 위 표를 자세히 보면 규칙이 있다.

망이 커질수록 nn은 커지고 pp는 작아진다 — 그런데 둘의 곱 (n1)p(n-1)p는 그대로 몇 명이다.
n1n-1ppλ=(n1)p\lambda=(n-1)p
가라테330.1390374.5882
FMH14600.0009131.3333
오늘의 질문
nn\to\infty, p0p\to 0으로 가되 λ=(n1)p\lambda=(n-1)p를 붙잡아 두면 이항분포는 무엇이 되는가?

답은 푸아송 분포이고, 매개변수는 λ\lambda 하나뿐이다. nnpp가 따로 사라지고 곱만 남는다는 것 — 이것이 4단계 내내 "평균 차수 λ\lambda"만으로 이야기할 수 있게 되는 근거다.

2. 정의 — 푸아송 분포 (The Poisson Distribution)

P(K=k)=eλλkk!,k=0,1,2, P(K=k)=e^{-\lambda}\,\frac{\lambda^k}{k!},\qquad k=0,1,2,\dots
기호교실에서
λ\lambda평균 발생 횟수평균 친구 수
λk\lambda^kkk번 성공친구 kk명을 차례로 고르는 경우의 무게
k!k!순서를 지운다"영희·철수" = "철수·영희"
eλe^{-\lambda}정규화 상수전부 더해 1이 되게 하는 값

eλe^{-\lambda}가 정규화 상수인가 — 지수함수의 급수를 그대로 쓰면 된다.

k=0λkk!=1+λ+λ22+λ36+=eλ \sum_{k=0}^{\infty}\frac{\lambda^k}{k!} =1+\lambda+\frac{\lambda^2}{2}+\frac{\lambda^3}{6}+\cdots=e^{\lambda} k=0eλλkk!=eλeλ=1  \therefore\quad \sum_{k=0}^{\infty}e^{-\lambda}\frac{\lambda^k}{k!}=e^{-\lambda}\cdot e^{\lambda}=1\ \checkmark
기억할 두 값 — 푸아송에서는 평균과 분산이 같다. E[K]=λ,Var[K]=λ E[K]=\lambda,\qquad \mathrm{Var}[K]=\lambda 4-1에서 이항의 분산은 (n1)p(1p)=λ(1p)(n-1)p(1-p)=\lambda(1-p)였다. p0p\to 0이면 (1p)1(1-p)\to 1 — 그래서 분산도 λ\lambda로 간다.
이 한 줄이 오늘의 채점표 전체를 만든다: 푸아송이 맞다면 분산/평균 =1=1이어야 한다. FMH는 2.0498/1.3333=1.542.0498/1.3333=1.54였다 (4-1 §11).

3. 손 계산 ① 이항이 푸아송으로 가는 길 — 네 조각 (The Poisson Limit in Four Pieces)

표기를 줄이자. N=n1N=n-1(한 학생이 관여하는 동전 수), p=λ/Np=\lambda/N. 이항 확률을 있는 그대로 쓴 뒤 곱셈 순서만 바꾼다. 근사는 아직 없다.

P(d=k)=(Nk)(λN)k(1λN)Nk P(d=k)=\binom{N}{k}\left(\frac{\lambda}{N}\right)^{k}\left(1-\frac{\lambda}{N}\right)^{N-k}

(Nk)=N(N1)(Nk+1)k!\binom Nk=\dfrac{N(N-1)\cdots(N-k+1)}{k!}를 펴고, (1λ/N)Nk=(1λ/N)N(1λ/N)k(1-\lambda/N)^{N-k}=(1-\lambda/N)^{N}(1-\lambda/N)^{-k}로 쪼개면

P(d=k)=λkk!조각 ①N(N1)(Nk+1)Nk조각 ②(1λN)N조각 ③(1λN)k조각 ④ P(d=k)= \underbrace{\frac{\lambda^{k}}{k!}}_{\text{조각 ①}}\cdot \underbrace{\frac{N(N-1)\cdots(N-k+1)}{N^{k}}}_{\text{조각 ②}}\cdot \underbrace{\left(1-\frac{\lambda}{N}\right)^{N}}_{\text{조각 ③}}\cdot \underbrace{\left(1-\frac{\lambda}{N}\right)^{-k}}_{\text{조각 ④}}

네 조각의 정체를 하나씩 본다.

조각NN\to\infty에서무슨 뜻인가
λk/k!\lambda^k/k!그대로우리가 목표하는 모양. NN이 아예 안 들어 있다
N(N1)(Nk+1)Nk\dfrac{N(N-1)\cdots(N-k+1)}{N^k}1\to 1분자에 kk개, 분모에 NNkk개 — 각 인수가 1,11N,12N,1,\,1-\frac1N,\,1-\frac2N,\dots
"친구를 고를 때마다 후보가 한 명씩 준다"는 효과인데, NN이 크면 무시된다
(1λN)N\left(1-\dfrac{\lambda}{N}\right)^{N}eλ\to e^{-\lambda}ee가 태어나는 자리. 정의 lim(1+x/N)N=ex\lim(1+x/N)^N=e^x 그 자체
(1λN)k\left(1-\dfrac{\lambda}{N}\right)^{-k}1\to 1고정된 kk개짜리 보정. λ/N0\lambda/N\to0이므로 밑이 1로 간다
P(d=k)  λkk!1eλ1  =  eλλkk! \therefore\quad P(d=k)\ \longrightarrow\ \frac{\lambda^k}{k!}\cdot 1\cdot e^{-\lambda}\cdot 1 \;=\;e^{-\lambda}\frac{\lambda^k}{k!}

3-1. 네 조각을 실제 숫자로 — λ=4/3\lambda=4/3, k=2k=2 (Four Pieces with Real Numbers)

추상적으로 "1\to 1"이라고만 하면 감이 안 온다. FMH의 λ=4/3\lambda=4/3을 고정하고 NN만 4, 50, 1460으로 키우며 네 조각을 각각 계산해 본다.

NNp=λ/Np=\lambda/N조각 ①
λ2/2!\lambda^2/2!
조각 ②
N(N1)N2\frac{N(N-1)}{N^2}
조각 ③
(1p)N(1-p)^N
조각 ④
(1p)2(1-p)^{-2}
네 조각의 곱PP 정확값
dbinom
41/31/30.8888890.7500000.1975312.2500000.2962960.296296 ✓
500.0266670.8888890.9800000.2588691.0555450.2380290.238029 ✓
14600.0009130.8888890.9993150.2634371.0018290.2344330.234433 ✓
극한0\to 00.8888891e4/3=0.263597e^{-4/3}=0.26359710.888889×0.263597=0.2343090.888889\times0.263597=\mathbf{0.234309}

N=4N=4의 네 조각을 분수로 전부 확인한다 (p=4/34=13p=\frac{4/3}{4}=\frac13):

=(4/3)22=16/92=89=0.888889 \text{①}=\frac{(4/3)^2}{2}=\frac{16/9}{2}=\frac{8}{9}=0.888889 =4×342=1216=34=0.75 \text{②}=\frac{4\times 3}{4^2}=\frac{12}{16}=\frac{3}{4}=0.75 =(23)4=1681=0.197531 \text{③}=\left(\frac23\right)^{4}=\frac{16}{81}=0.197531 =(23)2=(32)2=94=2.25 \text{④}=\left(\frac23\right)^{-2}=\left(\frac32\right)^{2}=\frac94=2.25 =8934168194=8316994814=345611664=827=0.296296 \text{곱}=\frac89\cdot\frac34\cdot\frac{16}{81}\cdot\frac94 =\frac{8\cdot3\cdot16\cdot9}{9\cdot4\cdot81\cdot4}=\frac{3456}{11664}=\frac{8}{27}=0.296296

직접 계산과 대조: (42)(13)2(23)2=61949=2481=827\binom42\left(\frac13\right)^2\left(\frac23\right)^2 =6\cdot\frac19\cdot\frac49=\frac{24}{81}=\frac{8}{27} ✓ — 소수점이 아니라 분수까지 일치한다.

표를 읽는 법 — 어느 조각이 범인인가
N=4N=4에서 오차가 큰 이유가 표에 그대로 보인다. 조각 ②가 0.75(1에서 25% 모자람), 조각 ④가 2.25(1의 두 배 넘음)다. 이 둘은 방향이 반대라 일부 상쇄되지만, 조각 ③마저 0.19750.1975로 극한값 0.26360.2636에서 25% 떨어져 있다.
N=1460N=1460에서는 ②가 0.999315, ④가 1.001829 — 둘 다 소수 셋째 자리에서 1이고, ③은 0.263437로 e4/3=0.263597e^{-4/3}=0.263597소수 넷째 자리까지 일치한다.
근사가 통하는 조건은 "nn이 크다"가 아니라 "pp가 작다"
4-1의 손 계산 예제 n=5, p=2/5n=5,\ p=2/5에 억지로 푸아송을 대면 (λ=1.6\lambda=1.6): 이항 P(0)=0.1296vs푸아송 P(0)=e1.6=0.201897 \text{이항 }P(0)=0.1296 \quad\text{vs}\quad \text{푸아송 }P(0)=e^{-1.6}=0.201897 오차 0.0723 — 56% 과대평가다. p=0.4p=0.4는 전혀 작지 않기 때문이다. 학급 규모(n=2530n=25\sim30, p=0.10.2p=0.1\sim0.2)에서도 푸아송은 정확한 도구가 아니다 — §15 연습문제 1에서 그 오차를 직접 잰다.

4. 손 계산 ② λ=1\lambda=1의 여섯 항 전부 (All Six Terms at λ=1\lambda=1)

λ=1\lambda=1은 오늘의 주인공 값이다(§11에서 임계점으로 다시 등장한다). λ=1\lambda=1이면 λk=1\lambda^k=1이므로 식이 아주 단순해진다.

P(K=k)=e11kk!=1ek! P(K=k)=e^{-1}\frac{1^k}{k!}=\frac{1}{e\cdot k!}

분자는 전부 1이고 분모만 k!k!로 커진다. e1=0.3678794412e^{-1}=0.3678794412.

kkk!k!전개P(K=k)P(K=k)누적왜 그 값인가
010.3678794412/10.3678794412/10.3678790.367879아무하고도 안 이어짐1/e1/e. 최빈값(동률)
110.3678794412/10.3678794412/10.3678790.735759λ=1\lambda=1일 때만 P(0)=P(1)P(0)=P(1)0!=1!=10!=1!=1이라서
220.3678794412/20.3678794412/20.1839400.919699k=1k=1의 정확히 절반
360.3678794412/60.3678794412/60.0613130.981012k=2k=21/31/3
4240.3678794412/240.3678794412/240.0153280.996340k=3k=31/41/4
51200.3678794412/1200.3678794412/1200.0030660.999406k=4k=41/51/5
k6k\ge 6 꼬리0.0005941.000000여섯 항으로 99.94%가 끝난다

검산 — 분모를 ee로 통일해 분자를 더한다:

10!+11!+12!+13!+14!+15!=1+1+0.5+0.166667+0.041667+0.008333=2.716667 \frac{1}{0!}+\frac{1}{1!}+\frac{1}{2!}+\frac{1}{3!}+\frac{1}{4!}+\frac{1}{5!} =1+1+0.5+0.166667+0.041667+0.008333=2.716667

e=2.718282e=2.718282와 비교하면 차이 0.0016150.001615 — 이것을 ee로 나누면 0.001615/2.718282=0.0005940.001615/2.718282=0.000594위 표의 꼬리와 정확히 같다

P(0)=P(1)P(0)=P(1)이 뜻하는 것
λ=1\lambda=1이면 "평균적으로 친구가 한 명"인데, 친구가 0명인 학생과 1명인 학생이 똑같이 36.8%씩이다. "평균 1명"이라는 말이 "대체로 다들 한 명쯤 있다"를 뜻하지 않는다. 100명 학급이라면 37명이 완전히 혼자다.
λ=1\lambda=1은 §11에서 볼 임계점인데, 그 임계점에서조차 3분의 1이 고립이라는 사실이 오늘의 두 이야기(고립자와 거대 컴포넌트)를 하나로 묶는다.

5. 수렴을 눈으로 보기 (Watching the Convergence)

λ=4/3\lambda=4/3으로 고정하고 N=n1N=n-1만 키우며 이항의 앞 네 항을 나란히 놓는다.

N=n1N=n-1P(0)P(0)P(1)P(1)P(2)P(2)P(3)P(3)최대 오차
(모든 kk 통틀어)
40.1975310.3950620.2962960.0987650.066066
100.2390680.3677960.2546280.1044630.024529
500.2588690.3546150.2380290.1043420.004728
2000.2624230.3522460.2352240.1041930.001174
1460 (FMH)0.2634370.3515700.2344330.1041450.000161
푸아송 극한0.2635970.3514630.2343090.1041370
이항에서 푸아송으로의 수렴
왼쪽: λ=4/3\lambda=4/3을 고정하고 nn을 키우면 이항(점선)이 푸아송(빨강)에 붙는다. 오른쪽: 최대 오차를 로그–로그로 그리면 기울기 1.02-1.02오차가 1/n1/n로 준다.
오른쪽 그림이 말하는 것
NN을 10배 키우면 오차가 10분의 1이 된다 (기울기 1.02-1.02). N=4N=4에서 0.0661이던 오차가 N=1460N=1460에서 0.000161 — 학급 규모에서는 쓰기 어렵지만, 학년·학교 규모에서는 사실상 정확하다. 이것이 오늘부터 FMH를 λ\lambda 하나로 이야기할 수 있는 근거다.

6. 손 계산 ③ 고립자 기대 수 neλn\,e^{-\lambda} (Expected Number of Isolates)

푸아송의 첫 항 k=0k=0에는 특별한 이름이 있다 — 고립자(isolate). 교실에서는 아무도 친구로 지목하지 않고 자신도 아무도 지목하지 않은 학생이다.

6-1. 두 가지 식 — 정확식과 근사식 (Two Formulas: Exact and Approximate)

정확식: 한 학생이 관여하는 n1n-1개 동전이 전부 뒷면일 확률.

P(d=0)=(1p)n1 P(d=0)=(1-p)^{\,n-1}

푸아송 근사: k=0k=0을 대입하면 λ0=1\lambda^0=1, 0!=10!=1이므로

P(K=0)=eλλ00!=eλ P(K=0)=e^{-\lambda}\frac{\lambda^0}{0!}=e^{-\lambda}

기댓값은 독립이 아니어도 그냥 더해진다(4-1 §7에서 확인했다). 1461명 각각에 대해 더하면

E[#고립]=neλ E[\#\text{고립}]=n\,e^{-\lambda}

6-2. FMH 숫자로 — 두 식이 얼마나 가까운가 (FMH Numbers: How Close Are They)

FMH: n=1461n=1461, m=974m=974, p=0.000913242p=0.000913242, λ=2m/n=4/3\lambda=2m/n=4/3.

방식P(d=0)P(d=0)기대 인원
×1461\times 1461
비고
정확 (이항)(10.000913242)1460(1-0.000913242)^{1460}0.2634366384.88동전 1460개가 전부 뒷면
근사 (푸아송)e4/3e^{-4/3}0.2635971385.12차이 0.24명nn이 크니 사실상 같다

e4/3e^{-4/3}을 손으로: e4/3=e1e1/3=0.3678794×0.7165313=0.2635971e^{-4/3}=e^{-1}\cdot e^{-1/3} =0.3678794\times 0.7165313=0.2635971. 대략 네 명 중 한 명이다.

λ\lambda가 1.33밖에 안 되는가 — FMH는 고등학교 1461명인데 간선이 974개뿐이다. 설문에서 가장 친한 친구 몇 명만 적게 했기 때문이다. "평균 친구 수 1.33명"은 실제 친구 수가 아니라 이 측정 방식이 잡아낸 수다. 망 분석의 결론은 언제나 측정 규칙에 딸려 있다 — 학급 조사에서 "3명까지 적으세요"라고 하면 최대 차수가 3으로 잘린다는 것과 같은 문제다.

7. FMH 대조 ① 고립 학생 524명 (FMH: 524 Isolated Students)

모형은 385명을 예측했다. 실제는?

항목모형 G(n,p)G(n,p)실제 FMH차이
nn14611461
평균 차수 λ\lambda1.33331.333301.00
고립 학생 수385.12524+138.9명1.361배
고립 비율26.36%35.87%+9.5%p1.36

7-1. 어디가 남고 어디가 모자라는가 — 아홉 항 전부 (Where It Overshoots and Undershoots)

고립자만 볼 것이 아니라 차수 분포 전체를 푸아송 기대와 나란히 놓는다. 기대 인원은 1461×e4/3(4/3)k/k!1461\times e^{-4/3}(4/3)^k/k!이다.

kk실제 인원푸아송 기대차이읽는 법
0524385.1+138.91.36고립이 139명 남는다 — 오늘의 최대 불일치
1403513.5−110.50.78친구 1명이 110명 모자란다 — 고립으로 빠져나간 자리
2271342.3−71.30.79가운데가 얇다
3128152.1−24.10.84여기까지가 "모자란 구간"
48550.7+34.31.68여기서 뒤집힌다
53013.5+16.52.22
6133.0+10.04.33
750.6+4.48.33
820.1+1.920.0모형이면 10개 학교에 한 명 나올 학생
FMH 실제 차수 분포 vs 푸아송 기대
빨강이 실제, 파랑이 푸아송 기대. 양 끝(0과 4 이상)이 남고 가운데(1~3)가 모자란다.
모양을 한 문장으로
실제 분포는 푸아송보다 양쪽 끝이 두껍다(over-dispersed). 가운데에 있어야 할 200여 명이 바깥쪽 0명과 안쪽 4명 이상으로 흩어져 나갔다.
이것이 4-1에서 본 분산 초과(2.0498 vs 1.3333, 1.54배)의 실체다. "분산이 1.5배"라는 한 숫자를 사람 수로 풀면 "고립 139명 초과, 중간층 200명 실종"이 된다.
교실에서 이 표가 쓰이는 법
학급 설문 결과를 이 표처럼 만들어 두면 어느 구간에 개입해야 하는지가 바로 보인다. "평균 친구 수"만 보고할 때는 절대 나오지 않는 정보다.
특히 k=1k=1 칸이 모자란다는 것에 주목할 것 — 이 학생들은 어디로 갔는가? 답은 k=0k=0이다. 친구가 한 명 있던 학생이 그 한 명을 잃으면 곧바로 고립이 된다. k=1k=1은 가장 불안정한 자리이며, 관찰 대상 명단은 k=0k=0k=1k=1을 함께 만들어야 한다.

8. 정말 어긋나는가 — 카이제곱과 무작위화 (Chi-Square and Randomization)

"139명 초과"가 우연일 수 있을까? 두 가지 방식으로 확인한다.

8-1. 카이제곱 적합도 검정 (Chi-Square Goodness-of-Fit Test)

k=0,1,2,3,4k=0,1,2,3,4k5k\ge5를 묶어 여섯 칸으로 만들고 χ2=(관측기대)2/기대\chi^2=\sum(\text{관측}-\text{기대})^2/\text{기대}를 각 항 전부 계산한다.

관측 OO기대 EEOEO-E(OE)2/E(O-E)^2/E
k=0k=0524385.12+138.8850.09
k=1k=1403513.49−110.4923.77
k=2k=2271342.32−71.3214.86
k=3k=3128152.14−24.143.83
k=4k=48550.71+34.2923.18
k5k\ge55017.21+32.7962.45
146114610178.18
χ2=178.18,df=611=4,P=1.83×1037 \chi^2=178.18,\quad df=6-1-1=4,\quad P=1.83\times10^{-37}
dfdf가 왜 4인가 — 칸이 6개면 자유도는 5이고, 거기서 λ\lambda를 데이터에서 추정했으므로 1을 더 뺀다. χ2\chi^2 임계값은 df=4df=4에서 9.49(유의수준 5%)인데 우리 값은 178이다.
어느 칸이 범인인가: 기여도 1위는 k5k\ge5(62.45), 2위가 k=0k=0(50.09)이다. 즉 허브 쪽과 고립 쪽이 함께 χ2\chi^2를 밀어 올린다 — 한쪽만의 문제가 아니다.

8-2. 무작위화 — 같은 n,mn,m으로 200번 (Randomization: 200 Draws at the Same n and m)

set.seed(12)
sim <- replicate(200, { g <- sample_gnm(1461, 974)
                        c(sum(igraph::degree(g)==0), max(components(g)$csize),
                          components(g)$no) })
지표무작위 평균표준편차관측 범위
(200회 최소~최대)
실제 FMHzz
고립자 수384.3612.35346 ~ 421524+11.31
최대 컴포넌트 크기655.6245.52467 ~ 739439−4.76
컴포넌트 개수507.476.33493 ~ 529661+24.24
세 줄로 요약하면
① 고립자가 139명 더 많고 (z=+11.3z=+11.3) — ② 가장 큰 덩어리는 217명 더 작고 (z=4.8z=-4.8) — ③ 덩어리 개수는 154개 더 많다 (z=+24.2z=+24.2).
이 셋은 같은 이야기의 세 얼굴이다: FMH는 무작위보다 훨씬 잘게 부서져 있다. 200번 중 어느 것도 실제 값 근처에 오지 못했다.

참고로 실제 FMH의 컴포넌트 크기 상위 열 개는 439, 23, 19, 12, 11, 9, 8, 8, 8, 8이다. 1등과 2등의 격차가 19배다 — 이런 모양을 두고 "거대 컴포넌트가 있다"고 한다. 다음 절에서 그 "거대함"을 계산으로 다룬다.

9. 거대 컴포넌트 — 분지 과정으로 세는 법 (The Branching Process)

이제 오늘의 두 번째 이야기다. 질문은 이것이다.

λ\lambda를 0.1부터 조금씩 올리면, 망 전체를 관통하는 덩어리는 언제 생기는가?

9-1. 그림으로 먼저 (Starting with a Picture)

학생 한 명을 아무나 붙잡고 친구를 따라 퍼져 나간다고 하자.

단계일어나는 일
0단계나 한 명
1단계내 친구 — 평균 λ\lambda
2단계친구의 친구 — 평균 λ×λ=λ2\lambda\times\lambda=\lambda^2
kk단계평균 λk\lambda^k

여기서 1이라는 숫자가 자동으로 특별해진다.

λ\lambdaλk\lambda^k의 운명퍼짐의 결말
<1<10\to 0몇 단계 가다 말라 죽는다. 작은 덩어리들만 생긴다
=1=1=1=1 유지아슬아슬 — 임계
>1>1\to\infty계속 불어나 망의 상당 부분을 삼킨다

9-2. 식으로 — 소멸 확률 uu (In Formulas: The Extinction Probability)

uu"한 사람에게서 시작한 퍼짐이 결국 말라 죽을 확률"이라 하자. 그 사람에게 친구가 kk명이라면, 퍼짐이 죽으려면 kk개의 가지가 전부 각각 죽어야 한다 — 확률 uku^k. 그러니 kk에 대해 평균을 낸다.

u=k=0P(k)uk u=\sum_{k=0}^{\infty}P(k)\,u^{k}

여기에 푸아송 P(k)=eλλk/k!P(k)=e^{-\lambda}\lambda^k/k!를 넣으면 급수가 그대로 접힌다.

u=k=0eλλkk!uk=eλk=0(λu)kk!=eλeλu=eλ(1u) u=\sum_{k=0}^{\infty}e^{-\lambda}\frac{\lambda^k}{k!}u^k =e^{-\lambda}\sum_{k=0}^{\infty}\frac{(\lambda u)^k}{k!} =e^{-\lambda}\cdot e^{\lambda u} =\boxed{\,e^{-\lambda(1-u)}\,}

세 번째 등호가 §2에서 확인한 지수 급수다 — xk/k!=ex\sum x^k/k!=e^xx=λux=\lambda u를 넣었을 뿐이다. 그리고 거대 컴포넌트가 차지하는 비율

S=1u S=1-u
왜 이 논증이 대충인 듯 말이 되는가
엄밀히는 "친구를 따라간 다음 사람"의 친구 수는 원래 차수 분포가 아니라 초과 차수 분포(excess degree, 온 길 하나를 뺀 나머지)를 따라야 한다. 그런데 푸아송에서는 이 둘이 정확히 같다 — 푸아송만의 특별한 성질이다. 그래서 G(n,p)G(n,p)에서는 위의 단순한 유도가 정답을 준다.
차수 분포가 푸아송이 아니면(4-6의 거듭제곱 분포 등) 초과 차수를 따로 써야 하고, 그때는 임계 조건도 λ>1\lambda>1이 아니라 k2/k>2\langle k^2\rangle/\langle k\rangle>2로 바뀐다. 4-7에서 다시 만난다.

10. 손 계산 ④ u=eλ(1u)u=e^{-\lambda(1-u)} 반복 대입 열두 번 (Twelve Iterations by Hand)

u=eλ(1u)u=e^{-\lambda(1-u)}uu가 양변에 있어 손으로 풀리지 않는다. 대신 아무 값이나 넣고 계속 다시 넣는다(반복 대입, fixed-point iteration). FMH의 λ=4/3\lambda=4/3, 출발점 u0=0.5u_0=0.5열두 번 전부 적는다.

1u1-uλ(1u)-\lambda(1-u)u다음=e()u_{\text{다음}}=e^{(\cdot)}직전과의 차
u0u_00.500000−0.6666670.513417+0.013417
u1u_10.486583−0.6487770.522685+0.009268
u2u_20.477315−0.6364200.529183+0.006498
u3u_30.470817−0.6277560.533788+0.004605
u4u_40.466212−0.6216160.537076+0.003288
u5u_50.462924−0.6172320.539436+0.002360
u6u_60.460564−0.6140850.541135+0.001699
u7u_70.458865−0.6118200.542363+0.001228
u8u_80.457637−0.6101830.543252+0.000889
u9u_90.456748−0.6089970.543896+0.000644
u10u_{10}0.456104−0.6081390.544363+0.000467
u11u_{11}0.455637−0.6075160.544702+0.000339
수렴값 uu^{*}0.545605

첫 줄만 손으로 확인해 보자: 10.5=0.51-0.5=0.5, 43×0.5=23=0.666667-\frac43\times0.5=-\frac23=-0.666667, e0.666667=0.513417e^{-0.666667}=0.513417

S=1u=10.545605=0.454395 S=1-u^{*}=1-0.545605=\boxed{0.454395}
차분 열이 말해 주는 것
증가폭이 0.013417 → 0.009268 → 0.006498 → … 로 매번 약 0.72배씩 준다. 이 0.72가 바로 f(u)=λeλ(1u)=λu=43×0.5456=0.7275f'(u^{*})=\lambda e^{-\lambda(1-u^{*})}=\lambda u^{*}=\frac43\times0.5456=0.7275이다. 1보다 작으므로 반복이 수렴한다 — 그리고 λ\lambda가 1에 가까울수록 이 값이 1에 가까워져 수렴이 한없이 느려진다 (§16 연습문제 2에서 λ=0.9\lambda=0.9로 직접 겪는다).

11. 임계점 λ=1\lambda=1 — 왜 하필 1인가 (The Critical Point)

f(u)=eλ(1u)f(u)=e^{-\lambda(1-u)}라 두면 우리가 찾는 것은 f(u)=uf(u)=u인 점이다.

먼저 확인할 것: u=1u=1λ\lambda가 무엇이든 항상 해다.

f(1)=eλ(11)=e0=1 f(1)=e^{-\lambda(1-1)}=e^{0}=1

"퍼짐이 반드시 죽는다"는 언제나 하나의 답이다. 문제는 u<1u<1두 번째 해가 있느냐다. 그 판정은 u=1u=1에서의 기울기가 한다.

f(u)=λeλ(1u),f(1)=λe0=λ f'(u)=\lambda\,e^{-\lambda(1-u)},\qquad f'(1)=\lambda\,e^{0}=\lambda
f(1)=λf'(1)=\lambda곡선 f(u)f(u)와 직선 y=uy=u의 관계결과
λ<1\lambda<1u=1u=1완만하게 다가온다. [0,1)[0,1) 전 구간에서 f(u)>uf(u)>u해는 u=1u=1 하나뿐S=0S=0
λ=1\lambda=1u=1u=1에서 직선과 접한다임계 — 여전히 S=0S=0이지만 아슬아슬
λ>1\lambda>1u=1u=1에서 직선보다 가파르다 → 왼쪽 어딘가에서 가로지른다u<1u^{*}<1인 해가 생김 → S>0S>0
한 문장 요약평균 친구 수가 1을 넘는 순간 거대 컴포넌트가 생긴다. "한 명이 한 명을 데려오면 본전, 그보다 조금이라도 많이 데려오면 눈덩이"라는 말이다. 전염병의 R0=1R_0=1, 연쇄 편지의 손익분기점과 같은 계산이다.

11-1. λ\lambda를 올려 가며 — 열 줄 전부 (Raising λ Step by Step)

λ\lambda소멸 확률 uu^{*}거대 컴포넌트 S=1uS=1-u^{*}읽는 법
0.51.0000000.000000전부 작은 덩어리
0.81.0000000.000000아직 없다
0.91.0000000.0000001 바로 아래에서도 0
1.00.9990030.000997임계점 (수치적으로 0에 수렴 중)
1.10.8238660.1761340.1 올렸을 뿐인데 17.6% — 급격하다
1.3333 (FMH)0.5456050.454365§10에서 손으로 구한 값
1.50.4171880.582812과반
2.00.2031880.79681280%
3.00.0595200.94048094%
4.5882 (가라테)0.0106820.98931899% — 가라테는 실제로 전원 연결(고립 0명)
거대 컴포넌트 상전이
파란 선이 이론 S=1uS=1-u^{*}, 주황 점이 n=1461n=1461 시뮬레이션(각 20회 평균). λ=1\lambda=1에서 꺾인다 — 이런 꺾임을 물리학에서 상전이라 부른다.

11-2. 시뮬레이션과 이론 — 여덟 줄 (Simulation vs Theory)

λ\lambda최대 컴포넌트
(20회 평균, n=1461n=1461)
비율이론 SS비고
0.511.30.00770.0000이론 0인데 11명 — 유한 크기 효과
0.838.10.02610.0000여전히 작다
1.0115.20.07880.0010임계점 — 이론은 0, 실제는 n2/3n^{2/3}
1.2421.40.28840.3137붙기 시작
1.3333666.20.45600.4544소수 둘째 자리까지 일치
1.5851.80.58300.5828일치
2.01157.00.79190.7968일치
3.01370.80.93820.9405일치
임계점 아래에서 이론과 어긋나는 이유
λ=0.5\lambda=0.5에서 이론은 S=0S=0인데 시뮬레이션은 11.3명이 나왔다. 틀린 게 아니다. SSnn\to\infty에서의 비율이고, 11.3/1461=0.007711.3/1461=0.0077nn이 커지면 0으로 간다 (임계 아래에서 최대 덩어리는 lnn\ln n 정도로만 자란다).
nn이 작으면 임계점이 흐려진다 — 25명 학급에서 "거대 컴포넌트가 생겼다/안 생겼다"를 칼같이 말할 수 없는 이유다.

12. FMH 대조 ② 거대 컴포넌트 439명 (FMH: A Giant That Is Too Small)

이론은 S=0.4544S=0.4544, 즉 1461×0.4544=6641461\times0.4544=664명을 예측한다. 실제는?

항목모형 예측실제 FMH차이읽는 법
평균 차수 λ\lambda1.33331.33330맞춰 넣은 값
거대 컴포넌트 크기664439−225명예측의 66%밖에 안 된다
거대 컴포넌트 비율45.44%30.05%−15.4%p
고립자385524+139명§7
컴포넌트 개수507661+154개잘게 부서져 있다
두 이야기가 하나로 합쳐진다
§7에서 고립자가 139명 남고, 여기서 거대 덩어리가 225명 모자란다. 같은 간선 974개를 가지고도 실제 학교는 더 잘게 갈라져 있다.
왜인가? 4-1에서 본 차수 분산 초과가 답의 절반이다. 간선이 소수의 학생에게 몰리면(차수 8인 학생 2명 등) 그 간선들은 이미 연결된 사람들 사이에서 낭비된다 — 새로운 사람을 덩어리에 끌어들이는 데 쓰이지 못한다.
나머지 절반의 답은 4-3에 있다: 간선이 삼각형을 이루며 겹쳐 놓이기 때문이다. 삼각형 하나에 쓰인 세 번째 간선은 연결에 아무 기여도 하지 않는다 (두 간선이면 이미 세 명이 이어져 있다).
교실 해석 — "우리 반은 몇 조각인가"
학급 교우관계도를 그렸을 때 가장 큰 덩어리가 전체의 몇 %인가는 평균 친구 수보다 훨씬 실전적인 지표다.
  • 90% 이상 — 반이 하나로 돌아간다 (가라테 유형: λ=4.59\lambda=4.59)
  • 50~90% — 큰 무리 하나 + 바깥 몇 명
  • 30~50%반이 갈라져 있다 (FMH 유형: 30%)
  • 30% 미만 — 학급이라는 단위가 사실상 작동하지 않는다
그리고 이 표를 볼 때 반드시 함께 볼 것: 같은 간선 수의 무작위 학급이라면 몇 %인가. 평균 차수 λ\lambda만 알면 §11-1 표에서 바로 읽을 수 있다. 실제가 그보다 낮다면 "친구가 적어서"가 아니라 "끼리끼리라서"다.

13. R 검증 (R Verification)

13-1. 푸아송 근사 (The Poisson Approximation)

dpois(0:5, 1)          # 0.367879 0.367879 0.183940 0.061313 0.015328 0.003066
sum(dpois(0:5, 1))     # 0.9994058

lam <- 4/3
for (N in c(4, 10, 50, 200, 1460))
  cat(N, max(abs(dbinom(0:20, N, lam/N) - dpois(0:20, lam))), "\n")
# 4 0.066066 / 10 0.024529 / 50 0.004728 / 200 0.001174 / 1460 0.000161

13-2. 고립자 (Isolates)

data(faux.magnolia.high); G <- asIgraph(faux.magnolia.high)
n <- vcount(G); m <- ecount(G); p <- m/choose(n,2); lam <- 2*m/n
c(정확 = (1-p)^(n-1), 푸아송 = exp(-lam))    # 0.2634366  0.2635971
c(기대 = n*exp(-lam), 실제 = sum(igraph::degree(G)==0))
#     기대      실제
#  385.1154   524

13-3. 거대 컴포넌트 — 반복 대입 한 줄 (The Giant Component in One Line)

solve_u <- function(lam) { u <- 0.5; for (i in 1:2000) u <- exp(-lam*(1-u)); u }
1 - solve_u(4/3)                              # 0.4543950  (§10 손 계산과 일치)
n * (1 - solve_u(4/3))                        # 663.8710  -> 664명
max(components(G)$csize)                      # 439
components(G)$no                              # 661
for (i in 1:2000)가 무식해 보이지만 — 이것이 §10의 손 계산과 정확히 같은 절차다. 2000번을 도는 것은 λ\lambda가 1에 가까울 때 수렴이 느리기 때문이다. λ=0.9\lambda=0.9에서는 200번을 돌아도 uu가 0.99에 못 미친다 (§16 연습문제 2).

13-4. 상전이 시뮬레이션 (Simulating the Phase Transition)

set.seed(11)
for (L in c(0.5, 0.8, 1.0, 1.2, 4/3, 1.5, 2.0, 3.0)) {
  s <- replicate(20, max(components(sample_gnp(1461, L/1460))$csize))
  cat(sprintf("%6.3f  %8.1f  %.4f  (이론 %.4f)\n", L, mean(s), mean(s)/1461, 1-solve_u(L)))
}
여기서 sample_gnp를 쓴 이유 — 4-1 §13에서 "실제 망과 비교할 때는 G(n,m)G(n,m)"이라 했다. 그런데 §11-2는 실제 망과의 비교가 아니라 이론 곡선의 확인이다. 이론이 G(n,p)G(n,p)에 대해 유도됐으므로 여기서는 pp를 지정하는 것이 맞다. 반대로 §8-2의 무작위화는 FMH와 겨루는 자리이므로 sample_gnm(1461, 974)를 썼다. 영 모형은 "무엇과 겨루는가"에 따라 고른다.

14. 교실 적용 (Classroom Application)

① 고립 학생 수는 계산할 수 있는 값이다
학급 인원 nn과 간선 수 mm만 알면 λ=2m/n\lambda=2m/n이고, 기대 고립자는 neλn\,e^{-\lambda}다. 30명 학급에 간선 60개면 λ=4\lambda=4, 30×e4=0.5530\times e^{-4}=0.55명. 실제로 3명이 고립이라면 그것은 우연이 아니다.
반대로 λ=1.5\lambda=1.5인 학급(간선 22개)이라면 기대 고립자가 30×e1.5=6.730\times e^{-1.5}=6.7명 — 고립 학생이 6명 나와도 "관계가 나쁜 반"이 아니라 "지목을 적게 한 반"일 수 있다. 설문 방식을 먼저 확인해야 하는 이유다.
② "평균 1명"의 함정
§4에서 본 것: λ=1\lambda=1이면 고립 학생이 36.8%다. "평균적으로 다들 친구가 한 명은 있다"는 문장은 산술적으로 틀렸다. 평균은 0명인 학생과 3명인 학생을 섞어 만든 값이지, 대표값이 아니다.
학부모·관리자에게 보고할 때 평균 대신 "친구 0명 몇 명, 1명 몇 명"을 쓰면 같은 데이터가 전혀 다르게 읽힌다.
③ 임계점은 교실 활동 설계에 그대로 쓰인다
모둠을 섞는 활동을 설계할 때, 학생 한 명당 새로 만나는 사람 수가 1을 넘느냐가 "반 전체가 하나로 이어지느냐"를 가른다.
  • 짝 활동만 반복 → 한 사람당 새 접촉 1명 이하 → 끼리끼리 유지
  • 4인 모둠을 매번 새로 짜기 → 한 사람당 새 접촉 3명 → λ>1\lambda>1, 몇 회 만에 전원 연결
§11-1 표를 그대로 쓰면 된다: λ=1.1\lambda=1.1이면 17.6%, λ=2\lambda=2면 79.7%, λ=3\lambda=3이면 94%. 1.1에서 2로 가는 구간이 가장 남는 장사다 (17.6% → 79.7%).
④ 정보·소문·감염은 같은 계산을 쓴다
"한 사람이 평균 몇 사람에게 옮기는가"가 1을 넘으면 퍼지고 못 넘으면 사그라든다. 전염병의 R0R_0와 정확히 같은 수다. 학급에서 좋은 규범을 퍼뜨리려면 λ>1\lambda>1을 만들어야 하고, 나쁜 소문을 막으려면 λ<1\lambda<1로 떨어뜨려야 한다 — 후자는 "중간에서 옮기는 몇 명"의 연결을 끊는 것으로 되고, 그 몇 명을 찾는 도구가 2-3의 매개 중심성이었다.
⑤ 그런데 이 모든 계산은 "무작위라면"이라는 단서를 달고 있다
FMH에서 실제 거대 컴포넌트는 예측의 66%였다. 학급도 마찬가지일 것이다. 계산값은 "이 정도는 되어야 정상"의 상한선으로 쓰고, 실제가 그보다 낮으면 왜 낮은지(끼리끼리 뭉쳤는지, 특정 학생에게 몰렸는지)를 묻는 것 — 그것이 이 도구의 올바른 사용법이다.

15. 연습문제 (Exercises)

연습문제 1 — 30명 학급, 간선 30개
30명 학급에서 교우관계 조사를 했더니 간선 30개가 나왔다.
  1. ppλ\lambda를 구하라.
  2. 푸아송으로 P(k)P(k)여섯 항(k=0k=0~5)을 전부 쓰고, 30명 중 기대 인원을 각각 구하라. e2=0.1353352832e^{-2}=0.1353352832를 쓸 것.
  3. 기대 고립자 수를 푸아송과 정확 이항 두 가지로 구하고 상대오차를 계산하라. n=30n=30에서 푸아송 근사는 쓸 만한가?
  4. 이 학급의 거대 컴포넌트 예상 크기는 몇 명인가? (λ=2\lambda=2u=0.203188u^{*}=0.203188을 쓸 것)
  5. 실제 고립 학생이 7명이었다. 기대치의 몇 배인가? 그리고 이것을 "유의하다"고 말할 수 있는가? (힌트: 고립자 수는 B(30,e2)B(30,\,e^{-2})에 가깝다)
§16 해설 — 먼저 풀고 맞춰 볼 것.
연습문제 2 — 임계점 양옆의 두 학년
평균 차수만 다른 두 학년이 있다: A학년 λ=0.9\lambda=0.9, B학년 λ=1.25\lambda=1.25.
  1. 각각에 대해 ui+1=eλ(1ui)u_{i+1}=e^{-\lambda(1-u_i)}u0=0.5u_0=0.5에서 여덟 번 돌려 표로 적어라. 두 경우의 움직임이 어떻게 다른가?
  2. 수렴값과 S=1uS=1-u^{*}를 구하라. 각 학년 30명이라면 거대 컴포넌트는 몇 명인가?
  3. A학년에서 반복이 왜 그렇게 느린지 f(u)f'(u)로 설명하라.
  4. 실제로 n=1000n=1000으로 시뮬레이션하면 A학년(λ=0.9\lambda=0.9)의 최대 덩어리가 53명(5.3%) 나온다. 이론은 0인데 왜 0이 아닌가?
  5. 두 학년의 담임에게 각각 무엇을 조언하겠는가?
§16 해설 — 먼저 풀고 맞춰 볼 것.

16. 해설과 답 (Solutions)

연습문제 1 해설 (Solution to Exercise 1)

(1) 무엇을 나누는가 — 밀도는 실제 간선 수 ÷ 가능한 짝의 수, λ\lambda는 악수 정리.

(302)=30292=435,p=30435=229=0.068966 \binom{30}{2}=\frac{30\cdot29}{2}=435,\qquad p=\frac{30}{435}=\frac{2}{29}=\boxed{0.068966} λ=2mn=6030=2,(n1)p=29×229=2  \lambda=\frac{2m}{n}=\frac{60}{30}=\boxed{2},\qquad (n-1)p=29\times\frac{2}{29}=2\ \checkmark
답 (1) p=2/29=0.068966p=2/29=0.068966, λ=2\lambda=2. 두 방식이 정확히 일치한다 — 4-1 §16에서 본 항등식 2mn=(n1)p\frac{2m}{n}=(n-1)p 그대로다.

(2) 무엇을 곱하는가P(k)=e22k/k!P(k)=e^{-2}\cdot 2^k/k!. 2k2^kk!k!를 따로 적고 마지막에 e2=0.1353352832e^{-2}=0.1353352832를 곱한다. 여섯 항 전부:

kk2k2^kk!k!2k/k!2^k/k!P(k)P(k)30명 중
기대 인원
왜 그 값인가
01110.1353354.060고립e2e^{-2} 그 자체
12120.2706718.120최빈값 (동률)
24220.2706718.12022/2!=4/2=22^2/2!=4/2=2k=1k=1같다. λ\lambda가 정수면 P(λ1)=P(λ)P(\lambda-1)=P(\lambda)
3861.33330.1804475.413k=2k=22/32/3
416240.66670.0902242.707k=3k=32/42/4
5321200.26670.0360891.083k=4k=42/52/5
합 (k=0k=0~5)0.98343629.503꼬리 P(k6)=0.016564P(k\ge6)=0.016564 → 0.497명

비 검산 — 푸아송은 이웃 항끼리 P(k)P(k1)=λk\dfrac{P(k)}{P(k-1)}=\dfrac{\lambda}{k}다. λ=2\lambda=2이므로 2/1=22/1=2, 2/2=12/2=1, 2/32/3, 2/42/4, 2/52/5 — 위 표의 "왜 그 값인가" 열이 정확히 이 수열이다 ✓

답 (2) P=0.135335, 0.270671, 0.270671, 0.180447, 0.090224, 0.036089P=0.135335,\ 0.270671,\ 0.270671,\ 0.180447,\ 0.090224,\ 0.036089 (합 0.983436, 꼬리 0.016564).
30명 중 기대 인원 4.06 / 8.12 / 8.12 / 5.41 / 2.71 / 1.08명.
값의 의미: 친구가 1명 또는 2명인 학생이 합쳐 16.2명으로 절반이 넘고, 고립이 4.1명이다. λ=2\lambda=2는 "평균 두 명"이지만 실제로 정확히 2명인 학생은 8명(27%)뿐이다.

(3) 두 방식으로 고립자 세기

푸아송: 30×e2=30×0.1353352832=4.0601 명 \text{푸아송: } 30\times e^{-2}=30\times0.1353352832=\boxed{4.0601\ \text{명}} 정확 이항: 30×(1229)29=30×(2729)29=30×0.1258946=3.7768 명 \text{정확 이항: } 30\times\left(1-\frac{2}{29}\right)^{29} =30\times\left(\frac{27}{29}\right)^{29}=30\times0.1258946=\boxed{3.7768\ \text{명}}
방식P(d=0)P(d=0)30명 중왜 그 값인가
정확 이항0.1258953.777동전 29개가 전부 뒷면
푸아송 근사0.1353354.060e2e^{-2}
차이+0.009440+0.283명상대오차 7.50% — 푸아송이 과대평가
답 (3) 푸아송 4.06명, 정확 이항 3.78명, 상대오차 7.5%.
쓸 만한가? 어림값으로는 쓸 만하지만 보고서에는 정확식을 쓸 것. 학급 규모(n=2535n=25\sim35)에서 pp는 0.07~0.2로 작지 않다. §3의 표에서 N=29N=29면 조각 ②가 1\approx 1이지만 조각 ③이 eλe^{-\lambda}에서 여전히 몇 % 떨어져 있다.
방향까지 기억할 것: 푸아송은 언제나 고립자를 더 많게 잡는다 (eλ>(1p)n1e^{-\lambda}>(1-p)^{n-1}). 즉 이 어림값은 안전한 쪽으로 틀린다 — "모형이 4명을 예상했는데 실제 4명"이면 사실은 실제가 살짝 많은 것이다.

(4) 거대 컴포넌트λ=2\lambda=2의 소멸 확률은 u=0.203188u^{*}=0.203188.

S=1u=10.203188=0.796812 S=1-u^{*}=1-0.203188=0.796812 30×0.796812=23.90 명 30\times 0.796812=\boxed{23.90\ \text{명}}

검산 — uu^{*}가 정말 해인지 식에 도로 넣는다: e2(10.203188)=e1.593624=0.203188e^{-2(1-0.203188)}=e^{-1.593624}=0.203188

답 (4)24명 (전체의 79.7%).
값의 의미: 30명 중 24명이 서로 (간접적으로라도) 이어진 하나의 덩어리를 이루고, 나머지 6명은 고립이거나 두세 명짜리 조각이다. λ=2\lambda=2는 임계점 1의 두 배지만 전원 연결에는 한참 못 미친다 — 전원 연결에 필요한 λ\lambda는 대략 lnn=ln30=3.4\ln n=\ln 30=3.4 이상이다.
교실 해석 — "간선 30개"는 한 사람이 평균 두 명을 적은 설문 결과다. 그것만으로 이미 4분의 3 이상이 하나로 이어진다. 반대로 말하면, 학급 교우관계도가 여러 조각으로 갈라져 있다면 그것은 지목 수가 적어서가 아니라 지목이 끼리끼리 겹쳤기 때문이다 (4-3에서 이 "겹침"을 군집계수로 정확히 잰다).

(5) 7명은 유의한가

74.0601=1.724 배 \frac{7}{4.0601}=\boxed{1.724\ \text{배}}

배수만 보면 커 보인다. 그런데 흔들림을 봐야 한다. 고립자 수는 대략 XB(30,e2)=B(30,0.135335)X\sim B(30,\,e^{-2})=B(30,\,0.135335)이므로

E[X]=4.0601,sd[X]=30×0.135335×0.864665=3.5106=1.8737 E[X]=4.0601,\qquad \mathrm{sd}[X]=\sqrt{30\times0.135335\times0.864665}=\sqrt{3.5106}=1.8737 z=74.06011.8737=1.569 z=\frac{7-4.0601}{1.8737}=1.569 P(X7)=1P(X6)=0.1015 P(X\ge 7)=1-P(X\le 6)=\boxed{0.1015}
답 (5) 1.72배 — 그러나 유의하지 않다 (P=0.10P=0.10).
값의 의미: 이런 학급 10개 중 1개에서는 순전히 우연으로 고립이 7명 이상 나온다. "기대보다 1.7배"라는 말은 인상적으로 들리지만 n=30n=30에서는 표준편차가 1.87명이나 되므로 ±2명은 흔한 흔들림이다.
이 문제의 진짜 교훈 — 작은 표본에서 배수는 증거가 아니다
FMH에서 1.36배(524 vs 385)는 z=+11.3z=+11.3으로 압도적이었는데, 여기서 1.72배(7 vs 4.06)는 z=1.57z=1.57로 유의하지 않다. 차이는 nn이다 — 1461명에서는 표준편차가 12.35명이라 139명 초과가 11 시그마가 되지만, 30명에서는 3명 초과가 1.6 시그마에 그친다.
학급 하나의 데이터로는 웬만한 어긋남을 통계적으로 입증할 수 없다. 그렇다고 무시하라는 말은 아니다 — 7명은 통계적으로 유의하지 않아도 교육적으로는 일곱 명이다. 통계는 "우연으로 설명되는가"를 답할 뿐, "개입할 가치가 있는가"를 답하지 않는다.
교실 해석 — 그러므로 학급 단위 보고서에는 pp값을 쓰지 말고 명단을 쓴다. "고립 학생 7명(모형 기대 4.1명)"이라고 적고, 판단이 필요한 곳은 그 7명이 누구이며 작년에도 그랬는가다. 통계적 유의성이 필요한 자리는 학년·학교 단위로 묶어 볼 때다.

연습문제 2 해설 (Solution to Exercise 2)

(1) 무엇을 반복하는가 — 두 경우 모두 ui+1=eλ(1ui)u_{i+1}=e^{-\lambda(1-u_i)}, u0=0.5u_0=0.5. 여덟 번 전부 나란히 놓는다.

A학년 λ=0.9\lambda=0.9증가폭B학년 λ=1.25\lambda=1.25증가폭왜 그렇게 되는가
u0u_00.5000000.500000같은 출발
u1u_10.637628+0.1376280.535261+0.035261λ\lambda가 작을수록 크게 뛴다
u2u_20.721708+0.0840800.559382+0.024121
u3u_30.778440+0.0567320.576504+0.017122
u4u_40.819219+0.0407790.588976+0.012472
u5u_50.849844+0.0306250.598230+0.009254
u6u_60.873593+0.0237490.605190+0.006960
u7u_70.892467+0.0188740.610478+0.005288
u8u_80.907756+0.0152890.614527+0.004049
수렴값 uu^{*}1.0000000.628630A는 끝없이, B는 금방
답 (1) 움직임이 질적으로 다르다.
B학년은 8회 만에 0.6145로 수렴값 0.6286에 거의 도달했다(남은 거리 0.014).
A학년은 8회에 0.9078인데 목적지가 1이라 아직 0.09가 남았고, 증가폭도 여전히 0.015로 크다. 영원히 다가가지만 유한 회에 도달하지 못한다.
겉보기에는 A가 더 빨리 움직이는 듯하지만(첫 회 +0.138 대 +0.035), 가야 할 거리가 훨씬 멀어서 결국 더 느리다.

(2) 수렴값과 SS

학년λ\lambdauu^{*}S=1uS=1-u^{*}30명 중읽는 법
A0.901.0000000.0000000명거대 컴포넌트 없음 — 임계점 아래
B1.250.6286300.37137011.14명37.1% — 임계점 위

검산 — B학년의 uu^{*}를 식에 도로 넣는다: e1.25(10.628630)=e1.25×0.371370=e0.464213=0.628630e^{-1.25(1-0.628630)}=e^{-1.25\times0.371370}=e^{-0.464213}=0.628630

답 (2) A: u=1, S=0u^{*}=1,\ S=00명. B: u=0.628630, S=0.371370u^{*}=0.628630,\ S=0.371370약 11명.
값의 의미: 평균 친구 수가 0.9명에서 1.25명으로 0.35명 늘었을 뿐인데 "덩어리 없음"에서 "3분의 1이 한 덩어리"로 바뀐다. 연속적으로 늘린 원인이 불연속적인 결과를 만드는 것 — 이것이 상전이다.

(3) 왜 A가 느린가 — 반복 대입의 속도는 도착점에서의 기울기가 정한다.

f(u)=eλ(1u),f(u)=λeλ(1u)=λf(u) f(u)=e^{-\lambda(1-u)},\qquad f'(u)=\lambda\,e^{-\lambda(1-u)}=\lambda f(u)
학년도착점 uu^{*}f(u)=λuf'(u^{*})=\lambda u^{*}한 회마다 남은 거리가
A10.9×1=0.9000.9\times1=\mathbf{0.900}0.9배1에 가까움 → 아주 느림. 10분의 1로 줄이는 데 22회
B0.6286301.25×0.62863=0.7861.25\times0.62863=\mathbf{0.786}0.786배10분의 1로 줄이는 데 10회
참고 FMH0.5456051.3333×0.545605=0.7281.3333\times0.545605=\mathbf{0.728}0.728배§10의 차분 열이 0.72배씩 줄던 그 값

표의 "증가폭" 열로 직접 확인하자. A: 0.084080/0.137628=0.6110.084080/0.137628=0.611, 0.056732/0.084080=0.6750.056732/0.084080=0.675, … 0.015289/0.018874=0.8100.015289/0.018874=0.810회를 거듭할수록 0.9로 올라간다(도착점에 가까워지므로).
B: 0.024121/0.035261=0.6840.024121/0.035261=0.684, … 0.004049/0.005288=0.7660.004049/0.005288=0.7660.786으로 수렴한다.

답 (3) f(u)=λuf'(u^{*})=\lambda u^{*}가 수렴 속도를 정한다. A학년은 u=1u^{*}=1이라 f=λ=0.9f'=\lambda=0.9 — 1에 아주 가까워 느리다.
일반화: 임계점 λ=1\lambda=1에서는 f(u)=1f'(u^{*})=1이 되어 기하급수 수렴이 아예 깨진다. 그래서 §13-3의 R 코드가 for (i in 1:2000)을 돈다. λ\lambda가 1에 가까울수록 이론값 자체를 구하기가 어렵다는 것 — 이것도 임계점의 특징 중 하나다.

(4) 이론 0인데 왜 53명인가

답 (4) S=0S=0은 "덩어리가 없다"가 아니라 "비율이 0으로 간다"는 뜻이다.
53/1000=5.3%53/1000=5.3\%인데, 같은 λ=0.9\lambda=0.9nn을 키우면 이 비율은 계속 줄어든다. 임계점 아래에서 최대 덩어리 크기는 nn에 비례하지 않고 lnn\ln n에 비례해서만 자란다. nn이 1000배가 되어도 덩어리는 몇 배밖에 안 커지므로 비율은 0으로 간다.
값의 의미: 유한한 망에서는 임계점이 칼금이 아니라 번진 띠다. §11-2에서도 λ=1.0\lambda=1.0일 때 n=1461n=1461에서 115명(7.9%)이 나왔다.
학급 규모에서는 이 사실이 특히 중요하다
n=30n=30에서는 ln30=3.4\ln 30=3.4n=30n=30의 차이가 크지 않아 임계점 위아래를 구분하는 것 자체가 무의미해진다. 학급 데이터에서 "거대 컴포넌트가 있다/없다"를 이론값으로 판정하려 들지 말고, 실제 컴포넌트 크기 목록을 직접 보는 편이 낫다 (FMH의 439, 23, 19, 12, …처럼 1등이 압도적이면 거대 컴포넌트다).

(5) 두 담임에게

답 (5) 조언 예시
A학년 담임(λ=0.9\lambda=0.9)에게 — "지금은 작은 무리 여러 개로 갈라져 있고, 학년 전체를 관통하는 연결망이 없습니다. 소식이나 규범이 학년 전체로 퍼지지 않습니다.
그런데 지금이 개입 효율이 가장 높은 지점입니다. 평균 연결을 0.9에서 1.25로 — 한 사람당 0.35명분 늘리는 것만으로 아무것도 없던 데서 3분의 1이 한 덩어리가 됩니다. 학년 단위 합동 활동을 몇 번 넣는 것으로 충분할 수 있습니다."

B학년 담임(λ=1.25\lambda=1.25)에게 — "3분의 1이 하나로 이어져 있고 3분의 2는 밖에 있습니다. 여기서 주의할 것은 덩어리 안과 밖의 격차입니다. 안쪽 학생들은 정보와 기회를 서로 나누지만 바깥 학생은 그 흐름에서 빠져 있습니다. 평균을 더 올리는 것보다, 바깥 학생 한 명 한 명을 덩어리에 이어 주는 쪽이 효과적입니다 — λ\lambda를 1.25에서 1.5로 올리면 58%가 되지만(§11-1), 그 늘어난 간선이 이미 안쪽에 있는 학생들끼리 이어지면 바깥은 그대로입니다."

공통으로 덧붙일 것: 이 계산은 전부 "무작위로 이어졌다면"이라는 가정 위에 있다. 실제 학년은 반·성별·동네로 갈라져 있으므로 실제 덩어리는 이 예측보다 작을 것이다 (FMH가 예측의 66%였다, §12).
교실 해석 — 오늘 배운 것을 한 장으로
① 평균 차수 λ\lambda 하나만 알면 고립자 수(neλn e^{-\lambda})가장 큰 덩어리 크기(n(1u)n(1-u^{*}))둘 다 예측할 수 있다.
② 그 예측은 상한선으로 쓴다 — 실제는 대개 고립이 더 많고 덩어리는 더 작다.
③ 예측과 실제의 차이가 그 학급·학년의 성격이다. FMH는 "고립 +139명, 덩어리 −225명" — 같은 간선으로 더 잘게 부서진 학교였다.
④ 그리고 그 부서짐의 원인을 다음 단원에서 찾는다: 간선이 삼각형으로 겹쳐 놓이기 때문이다.