5강 / 20강
상호정보량 — 알고 나면 얼마나 줄어드나
아라크네가 두 유전자 사이를 재는 자
4강에서 엔트로피를 "맞히는 데 드는 질문 수"로 익혔습니다. 이제 질문 하나만 더 하면 됩니다.
Y 를 미리 알고 있으면, X 를 맞히는 질문이 몇 번 줄어드나?
그 줄어든 질문 수가 상호정보량입니다.
MI(X ; Y) = H(X) − H(X | Y)- Y 를 알아도 하나도 안 줄어든다 → MI = 0 → 두 유전자는 서로 무관
- Y 만 알면 X 를 바로 안다 → H(X|Y) = 0 → MI = H(X) → 완전히 묶여 있다
세 가지 성질이 따라 나오는데, 아라크네를 이해하는 데 전부 필요합니다.
| 성질 | 뜻 | 어디서 쓰나 |
|---|---|---|
| MI ≥ 0 | 알고 나서 모름이 늘어나는 일은 없다 | 9강 — 그래서 문턱은 양수 한쪽만 |
| MI = 0 ⟺ 독립 | 0 은 정말로 '아무 관계 없음' | 3강 — r 의 0 과 다른 점 |
| MI(X;Y) = MI(Y;X) | 대칭이다 — 방향이 없다 | 10강 — 그래서 아라크네의 그물은 무향 그래프 |
칸을 나눠 실제로 세어 보기
연속된 발현량이니 4강처럼 칸으로 나눕니다. 이번엔 두 유전자를 동시에 — X 를 7칸, Y 를 7칸으로 나누면 격자가 7 × 7 = 49칸 생깁니다. 200명을 그 49칸에 떨어뜨리고 칸마다 몇 명인지 세면 결합분포 p(x,y) 입니다.
대각선에 몰린다 = 한쪽을 알면 다른 쪽 칸을 좁힐 수 있다 = 정보가 있다.
Python
브라우저에서 실행
arac 꾸러미의 mi_bins 도 정확히 이 여섯 줄입니다. 남이 만든 것을 쓰기 전에 한 번은 직접 짜 봅시다.
Python
브라우저에서 실행
🎮 결합분포를 손으로 옮겨 보기
3 × 3 격자에 확률을 직접 배치해 보세요. 대각선에 몰면 MI 가 커지고, 고르게 펴면 0 이 됩니다. 테두리 분포(p(x), p(y))는 그대로 두고 안쪽만 바꿔 보는 것이 요령입니다.
무관한데도 0 이 아니라 0.17 쯤 나옵니다. 이 '0 이 아닌 0' 이 6강과 9강의 주제입니다.
Python
브라우저에서 실행
🤔 확인 문제
MI(X;Y) = 0 이 뜻하는 것은?
해설 상관계수의 0 과 결정적으로 다른 점입니다. MI = 0 은 어떤 형태의 관계도 없다, 즉 완전한 독립을 뜻합니다. 그래서 아라크네는 곡선 관계도 U 자 관계도 놓치지 않습니다.
🤔 확인 문제
MI 가 대칭(MI(X;Y) = MI(Y;X))이라는 사실에서 따라오는 결과는?
해설 MI 로는 '누가 누구를 부리는지' 알 수 없습니다. 아라크네가 내놓는 것은 방향 없는 선이고, 방향은 '한쪽이 전사인자다'라는 사전 지식으로 붙입니다. 16강의 DIGGIT 이 인과 방향을 보태는 도구입니다.
🤔 확인 문제
서로 아무 관계 없는 두 벡터의 MI 를 200개 샘플·7칸으로 쟀더니 0.09 가 나왔습니다. 이것은?
해설 표본이 유한하면 격자에 우연한 얼룩이 남고, 추정 MI 는 참값보다 위로 치우칩니다. 그래서 '0 보다 크다'는 기준은 쓸모가 없고, 9강처럼 귀무분포로 문턱을 세워야 합니다.