단원 5-2The Exponential Family and the Normalizing Constant
지수족과 정규화 상수
5-1에서 이라는 닫힌 식이 나왔다. 그래프가 개인데 그 합을 한 줄로 적을 수 있었다.
오늘은 그게 운이었다는 것을 보인다. 통계량이 간선 수 하나뿐이라 쌍들이 서로 독립이었고, 그래서 항의 합이 개의 짧은 합의 곱으로 접혔던 것이다.
항을 하나만 더 넣으면 — 삼각형 수 — 그 접힘이 깨진다. 의 그래프 8개를 손으로 다시 더해서 어디가 어떻게 깨지는지 눈으로 확인하고, 의 1024개는 R로 전부 더해 정확한 답을 구한 뒤
ergm이 내놓는 답과 비교한다.결론은 하나다. 는 거의 언제나 계산할 수 없다. 그 사실이 5단계 나머지 전체(5-3의 의사가능도, 5-7의 MCMC)의 존재 이유다.
- 오늘의 질문: 5-1의 닫힌 식은 왜 나왔는가 (Why Did 5-1 Have a Closed Form?)
- 정의 — 정규화 상수 (Defining the Normalizing Constant)
- 손 계산 ① , 항이 하나일 때 — 8개를 다 더한다 (Summing All Eight Graphs)
- 손 계산 ② 항을 하나 더 넣는다 — 삼각형 (Adding a Triangle Term)
- 손 계산 ③ 확률 8개를 전부 계산한다 (All Eight Probabilities)
- 인수분해가 깨지는 이유 (Why the Factorization Breaks)
- 가 약분되는 단 하나의 자리 — 확률의 비 (Where Cancels)
- 항의 수는 얼마나 빨리 커지는가 (How Fast the Sum Explodes)
- R 검증 ① 전수 합 (Exhaustive Sum for )
- R 검증 ② 정확 MLE — 1024개를 다 더해서 최적화 (Exact MLE by Enumeration)
- R 검증 ③
ergm은 다른 답을 준다 (WhatergmActually Reports) - 세 가지 결과 — 5단계의 나머지가 왜 필요한가 (Three Consequences)
- 교실 적용 (Classroom Application)
- 연습문제 (Exercises)
- 해설과 답 (Solutions)
1. 오늘의 질문: 5-1의 닫힌 식은 왜 나왔는가 (Why Did 5-1 Have a Closed Form?)
5-1에서 우리는 이렇게 썼다.
가라테는 이므로 표본 공간에 그래프가 개 있다. 그 개를 전부 더한 결과가 이다. 한 줄이다. 그래서 로그가능도를 미분할 수 있었고, 이라는 닫힌 해가 나왔다.
개를 더했는데 어떻게 한 줄이 되는가? 그리고 — 항을 하나 더 넣어도 계속 그런가?
오늘 답한다. 첫 물음의 답은 "쌍들이 독립이라서", 둘째 물음의 답은 "아니다"이다.
비유를 하나 두자. 동전 개를 던져서 나올 수 있는 결과가 가지다. "앞면이 나온 개수"만 따지는 모형이라면 가지를 일일이 볼 필요가 없다 — 동전 하나씩 따로 보고 곱하면 된다. 그런데 "연속으로 앞면이 세 번 나온 횟수"를 따지기 시작하면 동전 하나씩 떼어 볼 수 없다. 세 개를 한꺼번에 봐야 한다. 네트워크에서 간선 수가 앞의 경우이고, 삼각형 수가 뒤의 경우다.
2. 정의 — 정규화 상수 (Defining the Normalizing Constant)
ERGM의 일반형은 이렇다. 를 통계량 벡터, 를 계수 벡터라 하면
세 가지를 확실히 해 두자.
| 헷갈리는 점 | 사실 |
|---|---|
| 는 모수인가? | 아니다. 를 정하면 자동으로 정해지는 값이다. 추정할 대상이 아니라 계산할 대상이다. |
| 합은 무엇에 대해 도는가? | 관측한 망 가 아니라 표본 공간 전체, 즉 있을 수 있는 모든 망 에 대해 돈다. 그래서 에는 데이터가 전혀 들어가지 않는다 — 와 만의 함수다. |
| 왜 필요한가? | 확률의 총합이 1이어야 하기 때문이다. . 정의상 반드시 성립한다. |
는 그냥 "이 망의 점수"다. 점수는 0보다 크지만 합이 1이라는 보장이 없다. 모든 망의 점수를 더한 값 로 나누면 비로소 확률이 된다. 반 학생 30명의 시험 원점수를 총점으로 나눠서 "각자의 비중"을 만드는 것과 정확히 같은 조작이다. 총점을 모르면 비중을 모른다 — 오늘의 문제가 바로 이것이다.
3. 손 계산 ① , 항이 하나일 때 — 8개를 다 더한다 (Summing All Eight Graphs)
정점 3개짜리 무방향 망을 쓰자. 쌍은 개다: . 각 쌍이 0 또는 1이므로 그래프는 개. 전부 적는다. 통계량은 간선 수 하나뿐이다.
| # | 모양 | |||||
|---|---|---|---|---|---|---|
| 1 | 0 | 0 | 0 | 0 | 빈 그래프 | |
| 2 | 1 | 0 | 0 | 1 | 간선 1개 | |
| 3 | 0 | 1 | 0 | 1 | 간선 1개 | |
| 4 | 0 | 0 | 1 | 1 | 간선 1개 | |
| 5 | 1 | 1 | 0 | 2 | 경로 (2–1–3) | |
| 6 | 1 | 0 | 1 | 2 | 경로 (1–2–3) | |
| 7 | 0 | 1 | 1 | 2 | 경로 (1–3–2) | |
| 8 | 1 | 1 | 1 | 3 | 삼각형 |
여덟 줄을 전부 더한다. 하나도 빠뜨리지 않고 적으면
계수 이 보이는가. 이항계수 이다. 간선 개짜리 그래프가 개 있으니 당연하다. 그러므로
이항정리다. 일반적인 에 대해서도 똑같이 .
3-1. 곱으로 접히는 과정을 한 번 더, 이번엔 반대 방향으로 (Factorization Once More, in Reverse)
이항정리를 몰라도 같은 결과를 얻는 길이 있고, 그 길이 오늘의 핵심이다. 을 전개해 보자. 괄호 세 개에서 각각 또는 를 하나씩 고른다:
| 첫째 괄호 (쌍 ) | 둘째 괄호 (쌍 ) | 셋째 괄호 (쌍 ) | 곱 | 대응하는 그래프 |
|---|---|---|---|---|
| #1 빈 그래프 | ||||
| #2 | ||||
| #3 | ||||
| #4 | ||||
| #5 | ||||
| #6 | ||||
| #7 | ||||
| #8 삼각형 |
괄호 하나가 쌍 하나에 대응하고, 그 괄호에서 을 고르면 "간선 없음", 를 고르면 "간선 있음"이다. 그러니 을 전개하는 일과 그래프 8개를 열거하는 일은 글자 그대로 같은 작업이다.
기호로 쓰면 — 이게 오늘 기억해야 할 한 줄이다 — 왼쪽은 개를 더한 것, 오른쪽은 2개짜리 합을 번 곱한 것이다. 이 로 줄었다. 이 맞바꿈이 5-1의 전부였다.
4. 손 계산 ② 항을 하나 더 넣는다 — 삼각형 (Adding a Triangle Term)
이제 통계량을 두 개로 늘린다.
는 삼각형의 개수다. 에서는 삼각형이 될 수 있는 정점 조합이 가지()뿐이므로 는 0 아니면 1이다. 세 간선이 모두 있을 때만 1이 된다.
같은 그래프 8개에 열을 하나 더 붙인다.
| # | |||||||
|---|---|---|---|---|---|---|---|
| 1 | 0 | 0 | 0 | 0 | 0 | ||
| 2 | 1 | 0 | 0 | 1 | 0 | ||
| 3 | 0 | 1 | 0 | 1 | 0 | ||
| 4 | 0 | 0 | 1 | 1 | 0 | ||
| 5 | 1 | 1 | 0 | 2 | 0 | ||
| 6 | 1 | 0 | 1 | 2 | 0 | ||
| 7 | 0 | 1 | 1 | 2 | 0 | ||
| 8 | 1 | 1 | 1 | 3 | 1 |
여덟 항을 전부 더한다.
4-1. 이 식은 인수분해되는가? (Does This Expression Factor)
5-1의 식과 나란히 놓는다.
앞의 세 항은 똑같고, 마지막 항만 배가 되었다. 차를 구하면
이면 이므로 보정항이 사라지고 . ✔
"삼각형 계수가 0"이라는 말은 "삼각형을 신경 쓰지 않는다"는 뜻이고, 그러면 정확히 간선만 있는 5-1 모형이 된다. 모형이 서로 포개진다(nested)는 것을 식이 보여 준다.
위의 "보정항 하나"는 에서 삼각형이 될 수 있는 자리가 단 한 군데라서 생긴 특수 사정이다. 만 되어도 삼각형 자리가 군데이고, 가 0·1·2·4의 값을 갖는 그래프가 뒤섞여 이런 깔끔한 보정항으로 정리되지 않는다. 직접 확인하는 것이 §14 연습문제 2다.
5. 손 계산 ③ 확률 8개를 전부 계산한다 (All Eight Probabilities)
숫자를 넣자. , 로 둔다. "간선은 드물게, 그런데 삼각형은 좋아하는" 모형이다. 필요한 지수함수 값 세 개를 먼저 구한다.
| 필요한 값 | 계산 | 값 |
|---|---|---|
| 0.6065307 | ||
| 0.3678794 | ||
| 0.6065307 |
를 항별로 쌓는다.
이제 여덟 그래프의 확률을 하나씩 낸다. 각각 점수를 로 나누면 된다.
| # | 점수 | 점수 | 일 때 (5-1 모형) | ||
|---|---|---|---|---|---|
| 1 | 0 | 0 | 0.2207622 | 0.2411754 | |
| 2 | 1 | 0 | 0.1338990 | 0.1462803 | |
| 3 | 1 | 0 | 0.1338990 | 0.1462803 | |
| 4 | 1 | 0 | 0.1338990 | 0.1462803 | |
| 5 | 2 | 0 | 0.0812139 | 0.0887235 | |
| 6 | 2 | 0 | 0.0812139 | 0.0887235 | |
| 7 | 2 | 0 | 0.0812139 | 0.0887235 | |
| 8 | 3 | 1 | 0.1338990 | 0.0538135 |
합이 1인지 확인한다. 무리별로 묶어서
5-1. 삼각형 확률은 몇 배가 되었나 — 그리고 왜 배가 아닌가 (How Much the Triangle Probability Grew, and Why Not by e)
표의 마지막 두 열을 비교하면 삼각형의 확률이 으로 올랐다. 배율은
그런데 우리가 곱한 것은 이었다. 왜 2.718배가 아니라 2.488배인가? 분모도 같이 커졌기 때문이다.
"삼각형 계수가 이니 삼각형이 하나 늘면 확률이 배" — 틀렸다. 가 같이 움직이므로 실제 배율은 그보다 작다.
확률이 아니라 확률의 비로 말해야 정확해진다(§7). 5-1에서 "는 확률이 아니라 로그오즈"라고 했던 경고의 다항 모형판이다.
5-2. 우연이 아닌 우연 — 삼각형과 간선 1개의 확률이 정확히 같다 (A Coincidence That Isn't One)
표를 다시 보면 일 때 #8(삼각형)과 #2~#4(간선 1개)의 확률이 모두 0.1338990으로 똑같다. 간선이 세 배나 많은 그래프인데도. 왜 그런가? 점수를 비교하면 된다.
여기서 이다. 조건에 정확히 걸렸다. 우연이 아니라 고른 숫자가 그 선 위에 있었을 뿐이다.
은 "간선 하나를 더 그을 비용 과 그 결과로 삼각형이 완성될 때 받는 보상 가 정확히 맞아떨어지는 지점"이다. 교실로 옮기면 — 새 친구를 사귀는 부담이, 그렇게 해서 "친구의 친구와도 친구가 되는" 이득과 정확히 상쇄되는 상태. 이보다 가 크면 학급은 뭉치고, 작으면 흩어진다.
6. 인수분해가 깨지는 이유 (Why the Factorization Breaks)
§3-1의 맞바꿈이 왜 성립했는지 한 단계씩 되짚고, 어디서 무너지는지 짚는다.
6-1. 성립할 때 (간선 항만) (When It Holds: Edges Only)
지수의 합이 곱이 되었다. 여기서 결정적인 것은 라는 각 인수가 단 하나의 칸 에만 의존한다는 점이다. 그래서 전체에 대한 합을 칸별로 분배할 수 있다.
6-2. 무너질 때 (삼각형 항) (When It Breaks: Adding Triangles)
여기까지는 똑같이 곱이 된다. 그러나 이번 인수 는 칸 세 개를 동시에 본다. 칸 는 뿐 아니라 인수에도 들어간다. 그래서 "쌍마다 따로 합을 매긴다"는 분배가 불가능하다. 과 을 맞바꿀 수 없다.
§4의 여덟 항 중 를 가진 항은 #8 하나뿐이다. 곱 형태로 쓰려면 세 괄호에서 하나씩 골라 만든 8가지 조합이 전부 항이 되어야 하는데, 는 여덟 개 중 딱 한 조합에만 붙어 있다. 어떤 세 괄호로도 이런 비대칭을 만들 수 없다 — 그래서 인수분해가 없다.
5-1의 모형에서는 "1–2가 친구인가"와 "1–3이 친구인가"가 서로 무관했다. 그래서 5-1 §9에서
glm(y ~ 1, family=binomial)이 ergm과 같은 답을 냈던 것이다
— 561개 쌍을 독립 관측치로 취급해도 됐으니까.삼각형 항이 들어오는 순간 그게 깨진다. 1–2와 1–3이 이미 있으면 2–3이 생길 확률이 달라진다. 더 이상 로지스틱 회귀가 아니다. 5-3에서 이 붕괴를 정면으로 다룬다.
7. 가 약분되는 단 하나의 자리 — 확률의 비 (Where Cancels)
를 모르면 아무것도 못 하는가? 그렇지 않다. 두 망의 확률을 나누면 가 사라진다.
분자와 분모에 같은 가 있으니 약분된다. 남는 것은 통계량의 차이뿐이다. 손으로 확인하자. #8(삼각형), #5(경로 2–1–3)로 두면
| — 삼각형 | 3 | 1 |
| — 경로 | 2 | 0 |
| 차 | 1 | 1 |
표의 값으로 검산하면 . 완전히 일치한다.
방금 고른 두 그래프는 칸 하나만 다르다 — 경로 #5에 을 더하면 삼각형 #8이 된다. 그러니 위의 비는 그냥 두 그래프의 비가 아니라 "나머지를 다 고정했을 때 2–3 칸에 간선이 있을 오즈"다.
은 "간선 하나가 늘어서" 붙고, 는 "그 간선 때문에 삼각형이 하나 생겨서" 붙는다. 통계량의 이 차이 벡터 가 5-3에서 배울 변화 통계량(change statistic)이다. 를 몰라도 계산되는 유일한 양이고, 그래서 ERGM 계수 해석은 전부 여기에 기댄다.
8. 항의 수는 얼마나 빨리 커지는가 (How Fast the Sum Explodes)
를 정직하게 계산한다는 것은 그래프를 전부 열거한다는 뜻이다. 몇 개인가.
| 쌍 개수 | 그래프 수 | 초당 1억 개를 처리한다면 | |
|---|---|---|---|
| 3 | 3 | 8 | 손으로 (오늘 했다) |
| 4 | 6 | 64 | 손으로 (연습문제 2) |
| 5 | 10 | 1,024 | R로 즉시 — 오늘의 §10 |
| 6 | 15 | 32,768 | 즉시 |
| 7 | 21 | 2,097,152 | 0.02초 |
| 8 | 28 | 268,435,456 | 2.7초 — 현실적 한계 |
| 10 | 45 | 35,184,372,088,832 | 97.7 시간 |
| 20 | 190 | 초 = 우주 나이의 배 | |
| 34 (가라테) | 561 | — | |
| 1461 (FMH) | 1,066,530 | 321,058자리 수 | — |
관측 가능한 우주의 원자 수가 대략 개다. 가라테 클럽 34명의 표본 공간은 개 — 원자 하나마다 우주를 하나씩 통째로 배정해도 아직 배 모자란다.
학생 34명짜리 한 학급에서 이렇다. 30명 학급이면 , .
그러니 "정확히 계산하되 조금 오래 걸린다"가 아니다. 영원히 불가능하다.
9. R 검증 ① 전수 합 (Exhaustive Sum for )
손 계산이 맞는지 8개를 실제로 열거해 확인한다.
## 정점 3개 위의 그래프 8개를 전부 만들고 (간선 수, 삼각형 수) 계산
prs <- rbind(c(1,2), c(1,3), c(2,3))
mm <- sapply(0:7, function(cd) sum(as.integer(intToBits(cd))[1:3]))
tt <- ifelse(mm == 3, 1, 0) # n=3 에서 삼각형 자리는 한 군데뿐
t1 <- -0.5; t2 <- 1
sum(exp(t1*mm + t2*tt)) # kappa 전수 합
[1] 4.529760962
1 + 3*exp(t1) + 3*exp(2*t1) + exp(3*t1 + t2) # 손 계산 식
[1] 4.529760962
(1 + exp(t1))^3 + exp(3*t1)*(exp(t2) - 1) # 보정항 형태
[1] 4.529760962
pr <- exp(t1*mm + t2*tt) / sum(exp(t1*mm + t2*tt))
sum(pr)
[1] 1
pr[mm == 3] # 삼각형
[1] 0.1338990434
pr[mm == 1][1] # 간선 1개 — 같은 값!
[1] 0.1338990434
세 가지 형태가 소수점 아래 아홉 자리까지 일치하고, 확률의 합이 정확히 1이며, 이라 삼각형과 간선 1개의 확률이 같다는 것까지 확인된다.
10. R 검증 ② 정확 MLE — 1024개를 다 더해서 최적화 (Exact MLE by Enumeration)
이제 진짜 추정을 해 보자. 면 그래프가 1024개뿐이니
를 근사 없이 정확히 계산할 수 있다. 이런 크기는 흔치 않다 —
"정답을 아는 상태"에서 ergm을 채점할 수 있는 거의 유일한 기회다.
관측 망은 5-1 연습문제 1의 5명 모둠을 그대로 쓴다: 간선 S1–S2 S1–S3 S2–S3 S3–S4, S5는 외톨이. 통계량은 , (삼각형 S1–S2–S3 하나).
## 1024개 전수 열거 -> 정확한 로그가능도 -> optim
e5 <- enumerate(5) # 1024 x 2 행렬, 열은 (m, t)
mo <- 4; to <- 1 # 관측 통계량
negll <- function(th) {
lin <- th[1]*e5[,"m"] + th[2]*e5[,"t"]
M <- max(lin) # 넘침 방지
-(th[1]*mo + th[2]*to - (M + log(sum(exp(lin - M)))))
}
op <- optim(c(0,0), negll, method = "BFGS", control = list(reltol = 1e-14))
op$par
[1] -0.7757745245 0.6579263060
-op$value # 최대 로그가능도
[1] -6.60005759
## 적률 일치 확인 — 근사가 아니라 정확한 기댓값
lin <- op$par[1]*e5[,"m"] + op$par[2]*e5[,"t"]
w <- exp(lin - max(lin)); w <- w/sum(w)
c(sum(w*e5[,"m"]), sum(w*e5[,"t"]))
[1] 3.999999977 0.999998867 # 관측 (4, 1) 과 일치
## 간선만 넣으면 5-1 의 손 계산으로 돌아가는가?
edges-only 정확 MLE = -0.40546513 , log(4/6) = -0.4054651081
① 적률 일치가 다항 모형에서도 성립한다. 5-1에서 하나였던 조건이 , 두 개로 늘었다. 통계량이 개면 조건도 개다. 이건 모든 ERGM에서 참이다.
② 간선 항만 남기면 5-1의 닫힌 해로 정확히 돌아온다. . 전수 열거로 얻은 값과 소수점 일곱 자리까지 같다. 5-1의 손 계산이 옳았다는 독립적인 증거다.
ergm이 MCMC로 내놓은 답이다(§11).10-1. 삼각형 항을 넣으니 간선 계수가 더 음수가 되었다 (Adding Triangles Pushes the Edge Coefficient Down)
| 모형 | (간선) | (삼각형) |
|---|---|---|
y ~ edges (5-1) | — | |
y ~ edges + triangle |
간선 계수가 로 더 내려갔다. 왜 그런가?
간선만 있던 모형에서 은 "이 망에 간선이 4개나 있다"는 사실을 혼자 설명해야 했다. 삼각형 항이 들어오자, 4개 중 삼각형을 이루는 3개는 가 설명해 준다. 그러면 이 남겨 받는 몫은 "삼각형과 무관하게 그냥 생긴 간선"뿐이고, 그건 훨씬 드무므로 계수가 더 음수가 된다.
교실 언어로: "우리 반은 아무하고나 친구가 되는 경향은 오히려 약하다. 다만 친구의 친구와는 친구가 되는 경향이 뚜렷하다." 앞의 단순 모형은 이 두 힘을 하나로 뭉뚱그려 평균 낸 것이었다.
회귀에서 변수를 추가하면 기존 계수가 움직이는 것과 정확히 같은 현상이며, 그래서 ERGM 계수는 그 모형에 무엇이 같이 들어 있는지를 밝히지 않으면 뜻이 없다.
11. R 검증 ③ ergm은 다른 답을 준다 (What ergm Actually Reports)
같은 자료에 ergm을 그대로 돌려 보자.
nw5 <- network(A5, directed = FALSE)
ergm(nw5 ~ edges + triangle)
Starting maximum pseudolikelihood estimation (MPLE): ...
Starting Monte Carlo maximum likelihood estimation (MCMLE):
Iteration 1 of at most 60: ... Convergence test p-value: 0.0014. Converged with 99% confidence.
Evaluating log-likelihood at the estimate. Fitting the dyad-independent submodel...
Bridging between the dyad-independent submodel and the full model...
Using 16 bridges: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 .
Estimate Std. Error z value Pr(>|z|)
edges -0.9074695 0.9011879 -1.0070 0.3139
triangle 0.8410930 0.9598360 0.8763 0.3809
정확한 답은 였다. ergm은 을 준다.
차이가 각각 , 이다. 난수 씨앗을 바꾸면 답도 바뀐다.
| 방법 | 비고 | ||
|---|---|---|---|
| 전수 열거 (정답) | 1024개를 다 더함. 난수 없음 | ||
ergm, seed=7 | MCMC | ||
ergm, seed=101 | MCMC | ||
ergm, seed=2026 | MCMC |
ergm의 버그가 아니다 — 오늘 배운 사실의 직접적 귀결이다를 계산할 수 없으므로
ergm은
모의실험으로 근사한다(MCMLE). 근사이므로 실행마다 값이 흔들린다.흔들림 폭(약 0.09~0.13)을 표준오차(0.90, 0.96)와 견주면 작지만 0은 아니다. 소수점 셋째 자리를 논문에 적을 때는 이 사실을 기억해야 한다.
4단계 §4-8에서
cluster_louvain()의 가 실행마다 달랐던 것과 같은 종류의 문제다.
"난수를 쓰는 알고리즘의 출력은 값 하나가 아니라 분포"라는 점에서.결정적으로 — 에서는 위 표의 첫 줄이 없다. 대조할 정답이 존재하지 않는다. 그래서 5-7에서 수렴 진단(
mcmc.diagnostics())을 반드시 배워야 한다.
출력 로그의 Using 16 bridges도 이제 읽힌다. 로그가능도 값
(모형 비교와 AIC에 필요하다)을 내려면 를 알아야 하는데 알 수 없으므로,
ergm은 계산 가능한 쌍 독립 모형에서 출발해 목표 모형까지
중간 모형 16개를 놓고 다리를 놓듯 차이를 누적한다(bridge sampling).
를 우회하는 또 하나의 장치다.
12. 세 가지 결과 — 5단계의 나머지가 왜 필요한가 (Three Consequences)
| 를 모르면 못 하는 것 | 그래서 어떻게 하는가 | 어디서 |
|---|---|---|
| 가능도 를 직접 계산하고 최대화하기 | ① 의사가능도(MPLE) — 쌍마다의 조건부 확률만 곱한다.
조건부에서는 가 약분된다(§7) ② MCMC 최대가능도(MCMLE) — 모형에서 망을 잔뜩 뽑아 의 비를 추정 | 5-3 / 5-7 |
| 로그가능도·AIC·우도비 검정으로 모형 비교하기 | 다리 표본(bridge sampling)으로 두 모형의 차이를 근사. 절댓값은 끝내 모르지만 차이면 비교에 충분하다 | 5-6 |
| "우리 반 관계망이 나올 확률은 0.003입니다" 같은 절대 확률 말하기 | 포기한다. 대신 확률의 비(조건부 오즈)로 말한다. 실무에서 필요한 것도 대개 이쪽이다 | 5-3 |
5-1은 "ERGM은 이렇게 생겼다"였고, 5-2는 "그런데 그대로는 계산이 안 된다"이다. 5-3부터 5-8까지는 전부 를 피해 가는 방법과 피해 간 대가로 생기는 문제(퇴화, 수렴 실패)에 관한 이야기다.
13. 교실 적용 (Classroom Application)
13-1. 우리 반에서 실제로 무엇이 계산되고 무엇이 안 되는가 (What Can and Cannot Be Computed for Your Class)
| 단위 | 계산 | |||
|---|---|---|---|---|
| 모둠 하나 | 4 | 6 | 64 | 연필로 가능 — 오늘 연습문제 2 |
| 모둠 하나 (5명) | 5 | 10 | 1,024 | R로 즉시 — 오늘 §10 |
| 분단 | 8 | 28 | 2.7억 | 몇 초. 여기가 끝 |
| 한 학급 | 30 | 435 | 불가능 — MCMC로 근사 | |
| 한 학년 6학급 | 180 | 16,110 | 불가능 |
주목할 점은 모둠 하나는 정확히 계산된다는 것이다.
"교사가 직접 손으로 확인해 볼 수 있는 규모"가 실재한다는 뜻이고,
4명 모둠에서 를 직접 조립해 보는 경험은 30명 학급에서 ergm이
무엇을 근사하고 있는지를 이해하는 가장 빠른 길이다.
13-2. 동료 교사에게 말할 수 있는 것과 없는 것 (What to Say to a Colleague, and What Not To)
| 말 | 가능? | 이유 |
|---|---|---|
| "우리 반 교우관계도가 이렇게 나올 확률은 0.0003입니다" | ✗ | 를 모르므로 절대 확률은 계산 불가. 게다가 가지 중 하나이므로 어떤 망이든 확률은 사실상 0이다 |
| "이미 공통 친구가 있는 두 학생이 서로 친구일 오즈는, 공통 친구가 없을 때보다 배 높습니다" | ✓ | 비이므로 가 약분된다(§7). 다만 "다른 조건이 모두 같을 때"를 반드시 붙여야 한다 |
| "삼각형 계수가 0.66이니 뭉침 경향이 배 강합니다" | △ | 방향은 맞지만 무엇의 1.93배인지를 말해야 한다. 확률이 아니라 오즈이고, 그것도 간선 하나를 추가할 때의 조건부 오즈다 (§5-1의 2.488배 vs 2.718배 차이) |
| "작년 반은 , 올해는 이니 올해가 두 배 잘 뭉칩니다" | ✗ | 두 가지 이유로 안 된다. ① 배지 두 배가 아니다. ② 학급 크기가 다르면 계수를 직접 비교할 수 없다(5-1 §13, 단원 1-5의 학급 규모 함정) |
"ergm을 두 번 돌렸는데 계수가 달라요. 뭔가 잘못됐나요?" | ✓ 정상 | MCMC 근사이므로 당연하다(§11). 단, 흔들림이 표준오차에 육박하면 수렴을 의심해야 한다(5-7) |
학생 4명(A·B·C·D)을 세우고 "친하다/아니다"를 정할 짝이 6쌍임을 세게 한다. 가능한 경우가 가지임을 확인한 뒤, 64장을 조별로 나눠 그려 보게 한다.
그리고 묻는다 — "이 중 삼각형이 하나라도 있는 그림은 몇 장일까?" (답: 삼각형 수가 1 이상인 것 장. §15 연습문제 2 참조)
학생들이 실제로 세어 보면 "가능한 관계 지도가 이렇게 많다"와 "그중 뭉친 모양은 일부다"를 동시에 체감한다. 30명 학급이면 이 64가 이 된다는 말을 덧붙이면 충분하다.
14. 연습문제 (Exercises)
같은 정점 3개 모형에서 이번에는 , 로 둔다. "간선은 더 드물게, 삼각형은 더 좋아하는" 모형이다.
(가) 를 네 항을 모두 적어 계산하라. (, , )
(나) 그래프 8개의 확률을 전부 구하고 합이 1인지 확인하라.
(다) 일 때(=5-1 모형)의 삼각형 확률과 비교해 배율을 구하라. 그 배율이 이 아닌 이유를 식으로 설명하라.
(라) 이번에도 삼각형과 간선 1개짜리 그래프의 확률이 정확히 같다. 우연인가? §5-2의 조건식으로 답하라.
먼저 풀고 나서 §15 해설과 맞춰 볼 것.
정점 4개짜리 무방향 망. 쌍은 개, 그래프는 개다.
(가) 간선 개짜리 그래프가 몇 개인지 에 대해 적고, 합이 64인지 확인하라.
(나) 삼각형 수 를 센다. 다음 표의 빈칸(
?)을 채워라.
힌트를 붙여 둔다.
| 그래프 수 | 별 개수 | 힌트 | |
|---|---|---|---|
| 0, 1, 2 | 1, 6, 15 | 전부 | 삼각형에는 간선 3개가 필요하다 |
| 3 | 20 | ?개가 , ?개가 | 간선 3개로 만들 수 있는 모양은 삼각형·별·경로 셋뿐이다. 삼각형은 정점 3개를 고르는 가지 |
| 4 | 15 | ?개가 , ?개가 | 뺀 간선 2개로 세는 게 쉽다. 뺀 두 간선이 정점을 공유하는가 아닌가로 갈린다 |
| 5 | 6 | 전부 ? | 에는 삼각형이 4개. 간선 하나를 빼면 그 간선이 든 삼각형이 몇 개 죽는가? |
| 6 | 1 | ? | . |
(라) 에서 의 값을 구하고, 와 를 계산하라. 또 paw(삼각형에 꼬리가 하나 붙은 모양, ) 하나와 4-사이클 하나의 확률 비가 임을 §7의 공식으로 계산 없이 설명하라.
먼저 풀고 나서 §15 해설과 맞춰 볼 것.
15. 해설과 답 (Solutions)
15-1. 연습문제 1 해설 (Solution to Exercise 1)
(가) — 항이 네 개다. 에 를 넣는다. 마지막 지수를 먼저 정리하면 이므로 이다.
| 항 | 무엇의 합인가 | 지수 | 지수함수 값 | 개수 | 기여 |
|---|---|---|---|---|---|
| 1 | 빈 그래프 | 1 | 1.0000000 | ||
| 2 | 간선 1개 | 0.3678794 | 3 | 1.1036383 | |
| 3 | 간선 2개 (경로) | 0.1353353 | 3 | 0.4060058 | |
| 4 | 삼각형 | 0.3678794 | 1 | 0.3678794 |
(나) 확률 8개 — 각 점수를 으로 나눈다.
| # | 점수 | 점수 | 개수 | 소계 | ||
|---|---|---|---|---|---|---|
| 1 | 0 | 0 | 1 | 0.3475210 | 1 | 0.3475210 |
| 2–4 | 1 | 0 | 0.3678794 | 0.1278458 | 3 | 0.3835375 |
| 5–7 | 2 | 0 | 0.1353353 | 0.0470319 | 3 | 0.1410956 |
| 8 | 3 | 1 | 0.3678794 | 0.1278458 | 1 | 0.1278458 |
(다) 배율 — 이면 이고 삼각형 점수는 이다.
왜 이 아닌가. 분자는 배가 되었지만 분모 도 커졌다.
확률의 총합이 1로 묶여 있으므로, 한 그래프의 확률을 올리면 나머지의 확률은 반드시 내려간다. 실제로 빈 그래프는 로 내려갔다.
(라) 삼각형과 간선 1개의 확률이 같은 이유 — §5-2의 조건은 이었다. 여기서
해석: 간선 하나를 더 긋는 대가 와 삼각형이 완성될 때의 이득 가 정확히 상쇄되는 지점이다. 이 선 위에서는 "혼자 뻗은 관계 하나"와 "완전히 뭉친 삼인조"가 똑같이 그럴듯하다.
15-2. 연습문제 2 해설 (Solution to Exercise 2)
(가) 별 그래프 수 — 쌍 6개 중 개를 고르는 것이므로 이다.
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 합 | |
|---|---|---|---|---|---|---|---|---|
| 1 | 6 | 15 | 20 | 15 | 6 | 1 | 64 |
(나) 삼각형 수 세기 — 한 줄씩 간다.
: 삼각형에는 간선이 3개 필요하다. 간선이 2개 이하면 불가능하므로 전부 . 그래프 개.
: 간선 3개로 만들 수 있는 모양은 세 가지뿐이다.
| 모양 | 개수 | 세는 법 | |
|---|---|---|---|
| 삼각형 | 4 | 삼각형을 이룰 정점 3개를 고르는 가지. 남은 정점 1개는 외톨이 | 1 |
| 별 | 4 | 중심이 될 정점을 고르는 4가지. 나머지 셋이 전부 중심에 붙는다 | 0 |
| 경로 | 12 | 나머지. . (직접 세면: 정점 4개의 배열 가지, 뒤집으면 같으니 ) | 0 |
따라서 이 4개, 이 16개. 검산 ✔
: 힌트대로 뺀 간선으로 센다. (간선 6개)에서 2개를 빼는 가지. 뺀 두 간선의 관계가 두 경우로 갈린다.
| 뺀 두 간선 | 개수 | 세는 법 | 남는 모양 | |
|---|---|---|---|---|
| 정점을 공유하지 않음 (완전 매칭) | 3 | 의 완전 매칭은 의 3가지 | 4-사이클 | 0 |
| 정점을 공유함 | 12 | paw (삼각형 + 꼬리) | 1 |
왜 그런가. 4-사이클에는 삼각형이 없다(사이클 길이가 4). paw는 삼각형 하나와 거기 붙은 간선 하나이므로 . 따라서 이 12개, 이 3개.
: 에서 간선 하나를 뺀 것. 6가지. 에는 삼각형이 개 있고, 임의의 한 간선은 그중 2개에 들어 있다(그 간선의 두 끝점 + 나머지 두 정점 각각). 그 2개가 죽으므로 . 6개 모두 .
: 하나. .
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | |||
|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 4 | |
| 개수 | 1 | 6 | 15 | 16 | 4 | 3 | 12 | 6 | 1 |
삼각형이 하나라도 있는 그래프는 23개 (§13-2 활동의 답).
(다) 아홉 항 — 위 표의 각 칸이 항 하나가 된다.
을 넣으면 꼴이 전부 1이 되므로 같은 끼리 합쳐진다.
(라) 수치 — . 항별로 쌓는다.
| 개수 | 지수 | 지수함수 값 | 기여 (개수×값) | ||
|---|---|---|---|---|---|
| 0 | 0 | 1 | 1.0000000 | 1.0000000 | |
| 1 | 0 | 6 | 0.6065307 | 3.6391840 | |
| 2 | 0 | 15 | 0.3678794 | 5.5181916 | |
| 3 | 0 | 16 | 0.2231302 | 3.5700826 | |
| 3 | 1 | 4 | 0.4965853 | 1.9863412 | |
| 4 | 0 | 3 | 0.1353353 | 0.4060058 | |
| 4 | 1 | 12 | 0.3011942 | 3.6143305 | |
| 5 | 2 | 6 | 0.4065697 | 2.4394180 | |
| 6 | 4 | 1 | 1.2214028 | 1.2214028 | |
| 23.3949565 | |||||
paw 하나는 . 그 비를 의 공식으로 계산 없이 보면 — paw와 4-사이클은 둘 다 이고 만 1과 0으로 다르므로
검산: ✔
왜 계산 없이 알 수 있었나: 두 그래프는 간선 수가 같다. 그래서 이 약분되고, 도 약분된다. 남는 것은 삼각형 수의 차 뿐이므로 비는 정확히 다.
의미: "간선 4개를 같은 개수로 쓰되 뭉쳐 놓느냐 둥글게 펴 놓느냐"의 선호가 정확히 배다. 삼각형 계수는 바로 이것을 재는 값이다.
4명 모둠에서 "친한 짝이 4쌍"이라는 사실은 같은데 모양이 다를 수 있다.
• 4-사이클: A–B–C–D–A. 모두가 두 명씩과 친하지만 삼인조가 하나도 없다. 고리형이라 관계가 얇게 퍼져 있다.
• paw: A–B–C가 뭉치고 D가 그중 한 명에게만 붙어 있다. 단단한 삼인조 + 주변부 한 명이다.
간선 수만 세는 지표(밀도·평균차수)로는 이 둘이 완전히 같다. 짜리 모형은 후자를 2.23배 더 그럴듯하게 본다.
현장에서 중요한 것도 대개 후자다 — D가 소외될 위험은 paw에서 훨씬 크다. 모둠 편성을 볼 때 "몇 쌍이 친한가"가 아니라 "어떤 모양으로 친한가"를 봐야 하는 이유이고, ERGM에 삼각형 항을 넣는다는 것은 정확히 그 모양을 모형에 넣는다는 뜻이다.
오늘 가 약분되는 자리를 딱 하나 찾았다 — 확률의 비다(§7). 5-3에서는 그 비를 칸 하나만 다른 두 망 사이에서 계산해, 라는 식을 손으로 유도한다. 가 변화 통계량이고, 오늘 §7에서 구한 이 바로 그 예다.
이 식이 ERGM 계수 해석의 전부이며, 동시에 없이 추정하는 첫 번째 방법 (의사가능도 MPLE)의 출발점이다. 가라테에서 삼각형 항의 변화 통계량을 실제로 손으로 세어 볼 것이다.