This lesson is only available in Korean for now.
Lesson 14 of 20

metaVIPER — 지도 여러 장을 겹쳐 본다

내 조직의 지도가 없을 때, 남의 지도를 빌리는 법

metaVIPER — 지도 여러 장을 겹쳐 본다
지도 여러 장을 겹쳐 놓고, 가장 잘 맞는 것에 무게를 실습니다.

문제가 생겼습니다. 여러분이 분석하려는 조직에 ARACNe 네트워크가 없습니다. 네트워크를 만들려면 같은 조직 샘플이 수백 개 필요한데, 희귀암이라 스무 개밖에 없어요.

남의 지도를 빌려 쓸 수 있을까요? 유방암 지도로 위암을 볼 수 있을까요? 어떤 전사인자는 조직을 가리지 않고 같은 부하를 부립니다 (세포주기 조절자들이 그렇습니다). 어떤 전사인자는 조직마다 완전히 다른 부하를 부립니다. 문제는 어느 쪽인지 미리 모른다는 것입니다.

metaVIPER 의 답은 시원합니다 — 지도를 전부 다 써 보고, 잘 맞는 것에 무게를 싣자.

합치는 규칙 — 스토퍼 방법

같은 전사인자에 대해 네트워크마다 NES 가 하나씩 나옵니다. 이 여러 개의 z 값을 하나로 합치는 고전적인 방법이 스토퍼(Stouffer) 결합입니다.

NES통합 = Σ (aᵢ · NESᵢ) / √( Σ aᵢ² )

aᵢ 는 네트워크 i 에 실어 주는 무게입니다. 무게를 모두 1 로 두면 단순 평균에 √k 를 곱한 꼴이 되는데, metaVIPER 는 여기에 묘수를 씁니다 — |NESᵢ| 자체를 무게로 씁니다.

왜 그럴까요? 어떤 네트워크에서 강한 신호가 나왔다는 것은 그 지도가 이 데이터에 잘 맞는다는 증거이기 때문입니다. 안 맞는 지도는 0 근처의 NES 를 내고, 그러면 무게도 0 근처가 되어 자연스럽게 조용해집니다.

|NES| 를 무게로 쓰면 '맞는 지도'가 스스로 나서고 '안 맞는 지도'는 물러납니다.
Python Runs in your browser

🎮 지도를 겹쳐 보세요

네트워크 세 개의 NES 를 슬라이더로 바꾸며 통합 NES 가 어떻게 나오는지 보세요. 두 지도가 반대 부호를 말할 때 통합값이 어떻게 되는지 꼭 확인해 보십시오. metaVIPER 는 그런 경우에 억지로 편들지 않고 조용해집니다.

네트워크별 NES 를 조절하며 통합 NES 가 어떻게 나오는지 봅니다
Loading…
지도를 늘려도 손해가 없는 이유 — 안 맞는 지도는 조용하기 때문입니다.
Python Runs in your browser
🤔 Check yourself
metaVIPER 가 여러 네트워크의 NES 를 합칠 때 |NES| 자체를 무게로 쓰는 까닭은?
🤔 Check yourself
두 네트워크가 같은 전사인자에 대해 각각 NES +5.0 과 −4.8 을 냈습니다. metaVIPER 의 통합 결과는?
🤔 Check yourself
metaVIPER 를 쓰기에 덜 적합한 상황은?