7강 / 20강
ARACNE ① — 전사인자와 표적을 잇는다
프로토콜 Phase I-1 · 상호정보량 문턱과 부트스트랩 100회
이제 네트워크를 만듭니다. 규칙은 단순합니다.
전사인자 T 와 유전자 G 의 상호정보량이 충분히 크면, T → G 링크를 긋는다.
두 가지를 정해야 합니다.
- 어떤 유전자가 전사인자인가 — 아무나 화살표의 출발점이 될 수는 없습니다.
- 얼마나 커야 '충분히' 큰가 — 문턱을 정해야 합니다.
① 전사인자 목록
전사인자(TF)는 DNA 에 직접 달라붙어 다른 유전자의 스위치를 켜고 끄는 단백질입니다. 사람 유전자 약 2만 개 중 1,600여 개가 여기 해당합니다.
논문은 AnimalTFDB 3.0 을 썼고, 우리는 Human TFs v1.01 (Lambert 등 2018, 토론토대) 목록을 씁니다. 둘 다 널리 쓰이는 큐레이션 목록이지만 포함된 유전자가 완전히 같지는 않습니다 — 이런 자잘한 차이가 쌓여 결과 차이를 만듭니다.
② 문턱 — p < 10⁻⁸
논문은 p < 10-8 을 씁니다. 왜 이렇게 극단적으로 작을까요?
다중검정 때문입니다. 전사인자 1,300개 × 유전자 16,000개 = 2천만 번의 검정을 합니다. p < 0.05 를 쓰면 아무 관계가 없어도 백만 개의 가짜 링크가 생깁니다. 10-8 이면 기대되는 가짜 링크가 0.2개 수준으로 떨어집니다.
p값 문턱을 상관계수 문턱으로 옮겨 놓으면 감이 잡힙니다.
Python
브라우저에서 실행
2천만 쌍이든 백만 쌍이든, 행렬 곱 한 번이면 끝납니다.
Python
브라우저에서 실행
🎮 네트워크 실험실
MI 문턱을 옮기면 링크 수가 어떻게 변하는지, 그리고 부트스트랩을 켜면 어떤 링크가 사라지는지 확인해 보세요.
🤔 확인 문제
ARACNE 가 p < 10⁻⁸ 처럼 극단적으로 엄격한 문턱을 쓰는 이유는?
해설 2천만 번 검정에 p < 0.05 를 쓰면 우연만으로 100만 개의 링크가 생깁니다. 다중검정이 극심한 상황에서는 문턱을 그만큼 조여야 합니다.
🤔 확인 문제
부트스트랩으로 링크를 거르면 무엇을 막을 수 있나요?
해설 부트스트랩은 '표본을 조금 바꿔도 이 링크가 계속 나오는가' 를 묻습니다. 한두 표본 때문에 생긴 링크는 재추출하면 자주 사라지므로 걸러집니다.
🤔 확인 문제
전사인자 목록으로 논문은 AnimalTFDB, 우리는 Human TFs 를 썼습니다. 이것이 뜻하는 바는?
해설 네트워크의 출발점 집합이 달라지면 레귤론도 달라지고, 뒤의 VIPER·DIGGIT 결과도 달라집니다. 재현 연구에서는 이런 참조 데이터베이스의 판본이 흔한 차이 원인입니다.