유전체학을 위한 신경망 모델 (Neural Networks for Genomics)


원본글

http://blog.qure.ai/notes/neural-networks-for-genomics


위 글을 번역한 포스팅입니다.



Introduction


딥러닝을 처음 유전체학에 적용하려고 한다면, 최신으로 이루어지고 있는 연구(state-of-the-art)가 무엇인지, 연구자들이 딥러닝을 통해 어떠한 문제를 해결하고자 하고, 이를 어떻게 접근하고 있는지 알아야할 필요가 있다. 이 포스팅은 유전체학에서 유명한 네트워크 구조를 소개하고, 이 네트워크를을 트레이닝할 때 쓰이는 데이터의 타입, 그리고 모델을 통해 최종적으로 예측한 결과가 어떻게 나오는지를 요약한다.


시퀀싱 기술의 발달, 그리고 1000-genome project, encode, geo와 같은 public dataset의 범람에도 불구하고 아직까지 genotype-phenotype 구분, 그리고 시퀀스를 통해 질병을 예측하는 것을 완벽하게 해내지 못하고 있다. Bredan Frey의 이 talk는 딥러닝과 유전체학의 컨텍스트상에서 왜 더 많은 genome을 시퀀싱 하는 것이 반드시 해답이 아니라는 것을 설명하고 있다. genome은 매우 복잡하고, 서로 상호작용하는 수많은 정보 레이어를 갖고 있다. 현재의 대부분의 접근법은 시퀀스를 통해 직접적으로 표현형을 추측하는 것이 아니라, 시퀀스의 일부를 해석하는 시스템을 구축하는 것이다. 아래에 딥러닝이 유전체학이나 전사체학에 적용된 예를 소개한다.



얕은 fully connected networks 를 이용한 초기 연구


초기 연구중 몇몇은 주성분분석을 통해 차원을 축소한 gene expression 데이터를 single layer fully connected network에 적용한 것이다. 이러한 초기 연구는 gene expression을 통해 tumor type을 구분하거나, tumor grade를 예측하거나, 환자의 생존 여부를 예측하는데에 사용되었다. 이러한 연구의 발달은 가장 예측력이 높은 gene의 subset을 찾거나, gene의 signature를 찾는 연구의 발달을 가져왔다. 이와 비슷하게 인공신경망은 microRNA의 발현 패턴을 통해 대장암의 등급을 예측하거나, 암 상태를 예측할 수 있는 microRNA를 찾아내는 연구에 사용되었다.



Autoencoder를 이용한 차원 축소와 특징값 추출


Autoencoder는 유전체학에서 gene expression 데이터로부터 feature space를 줄이거나 유용한 feature를 찾아내는데 사용되어왔다. 한 예는 autoencoder를 사용해 labling 되지 않은 gene expression data로부터 정교한 feature representation을 구현하고, 이를 통해 tumor를 예측하는 classifier를 구현한 이 페이퍼이다. 더 최근 연구는 denoising autoencoder를 이용해 유방암 gene expression data에서 feature extraction을 한 연구이다. 다음은 ADAGE(paper and repository)인데, 박테리아 gene expression 데이터에 비슷한 접근을 한 연구이다. autoencoder를 통해 추출한 유용한 feature들은 암 분류, 에스트로겐 수용체의 상태, 환자의 생존 예측에 활용될 수 있다. 그러면 하나의 autoencoder로 부터 밝혀진 gene expression profile들을 통해 어떠한 조직에도 일반적으로 적용할 수 있는 feature를 밝혀낼 수 있을까? gene expression 데이터 말고 DNA sequence에 autoencoder를 적용하여 유용한 feature를 추출할 수 있을까?



Deep learning을 통해 gene expression, transcript expression level을 예측하기


 유전자의 발현은 공동으로 이루어지는 경우가 많기 때문에, 서로 다른 유전자의 발현 정도는 상관관계가 매우 높다. 이는 특정 subset의 유전자 발현 데이터만 가지고도 나머지 gene의 발현 정도를 예측해볼 수 있다는 것을 뜻한다. 이는 잠재적으로 유전자 발현 profiling에서 비용과 복잡성을 줄일 수 있다. D-GEX라고 불리는 방법이 개발되었는데 이는 퍼블릭 데이터인 CMAP을 통해 트레이닝된 심층신경망 모델로써, 1000개의 gene expression 데이터를 통해 나머지 gene 의 expression 정도를 예측한다. 최근의 topcoder challenge도 이와 비슷한 문제가 올라와있다. 이와 비슷하지만 더 hard한 태스크는 exon이나 transcript의 expression level을 DNA sequence data로 부터 예측하는 것이다. expression level은 sequence로만 결정되는 것이아니라, cellular context 에도 의존한다. ‘Deep learning of the tissue-regulated splicing code’ 라는 타이틀의 연구는 exon 주변의 dna sequence를 통해 그 exon이 splice in 되는 확률 (PSI)를 예측한다. 직접 손으로 만든 genomics feature들(이 genomics feature들은 특정한 mouse의 cell type에서 splicing pattern을 예측할 수 있는 것들이다.) 이 모델을 트레이닝하는데 사용되었다. autoencoder를 통해 이 feature의 차원을 축소하고, cell type을 나타내는 추가적인 input을 통해 multilayer fully connected network를 트레이닝하였다. 이 방법을 통해 저자들은 tool을 개발하고 검증하였는데, 이것을 통해 SNV가 splicing애 미치는 effect를 scoring할 수 있다.



Epigenomics를 위한 Convolutional Networks


최근 연구의 많은 부분이 바로 전사인자 결합 위치나, 인핸서 지역, 시퀀스를 통한 크로마틴 accessibility 예측과 같은 epigenomic의 문제에 CNN을 이용하는 것이다. DeepBind는 주어진 sequence를 통해 DNA나 RNA 결한 proteins의 specificity를 예측할 수 있는 방법이다. 이것을 하기 위해 많은 수의 protein binding micro-array chip-seq 데이터를 통해 CNN이 training 되었다. convolutional stage에는 one-hot encoding된 시퀀스에서 'motif detector' matiireces의 set을 scan한다. learning된 filter는 유전쳏학에서 DNA seuqnece motif를 설명하고 이해하는데 사용된다. 네트워크는 알려진 motif와 알려지지 않은 motif까지도 learning할 수 있다. DeepMotif는 비슷한 계열의 더 깊은 모델로써, 시퀀스에 따라 transcription factor binding(yes or no)를 분류하고, motif를 추출하는데 더 중점을 둔 모델이다. DeepSea는 ENCODE의 epigenomics 데이터로부터 트레이닝되었고, 단일염기의 mutation이 transcription factor binding과 DNAse sensitivity에 미치는 영향을 예측한다. 이 모델의 주요 기능은 다양한 규모의 시퀀스 기능을 학습하는 계층적 아키텍처의 사용, 광범위한 시퀀스 컨텍스트 스캔 기능 및 예측 기능을 공유하는 다양한 염색질 요소의 멀티 태스크 공동 학습이다. 다른 epigenomics에 사용되는 CNN의 예는 Basset인데, DNA 시퀀스로부터 chromatin accessibility code를 예측한다. DeepCpG는 DNA metylation을 모델링하였고, DEEP은 enhancer나 transcription factor binding으로 인해 gene의 transcription이 증가하는 DNA의 region을 예측하는 ensemble framework이다. 또한 chip-seq 실험에서 noise를 감소시키거나 signal을 증폭하기 위한 CNN-based 방법도 있다.



언어처리로부터 영감을 얻은 모델들


언어처리와 genome해석은 어느정도 비슷한 면이있다. 이는 언어처리에 사용되는 방법이 genomics를 이해하는데 유용할 수 있다는 것을 시사한다.


Recurent Neural Networks


RNN은 긴 범위를 갖는 DNA 시퀀스의 상호작용을 발견하기 위해 사용되어왔다. DanQ는 CNN과 bi-directional LSTM(long-short term memory)의 하이브리드로써, convolution layer는 regulatory motif를 발견하고, recurrent layer는 regulatory 'grammer'를 이해하기 위해 motif들 간의 long-term dependency를 발견하는데 사용된다. 다른 예는 DNA-level splice junction prediction인데 RNN이 splice junction이나 intro과 exon의 경계를 발견하기위해 training이 된다. 또한 바이러스 gemoe에서 proten coding region을 발견하는 것도 있다.



Word embedding이나 word2vec 같은 모델


‘Gene2vec: Neural word embeddings of genetic data’ 라는 타이틀을 갖고있는 한 프로젝트는 구글의 오리지날 word2vec을 genome 시퀀스로 구현한 것이다. (genome을 27bp의 'word'로 splitting한다.) 실제로 이것이 인간 genom에 실용적으로 적용될 수 있는지는 흥미로운 주제일 것이다. 비슷한 word2vec 스타일의 모델은 gene expression data로도 트레이닝이 가능하다.




기타 링크

dna binding protein motif

http://2013.igem.org/wiki/index.php?title=Team:XMU_Software/Project/promoter&oldid=359507