Sunday, July 17, 2011

Optimization of de novo transcriptome assembly from NGS data

제목이 상당히 인상적인라서 함봐야 할거 같단 생각에 선택한 논문.
요즘 NGS data assemblers는 대부분 De bruijn graph 방식으로 assembly 하는데 선택 옵션 중의 하나가 k-mer size. 과연 어떠한 k-mer size를 정해야 하는가에 대해 고민하게 된다.


velvet의 경우 1.palindrome을 피하기 위해 홀수로 2.당연한 것이지만 read length보다는 작게해야 한다고 한다. 이 k-mer의 size는 specificity와 sensitivity의 trade-off 라고, 즉 k-mer의 길이가 길어지면 specificity가 높아지는 반면 sensitivity가 떨어진다. 이들이 경험적인 해결책으로 내놓은 것은 다음 공식을 따른다.
Ck = C*(L-k+1)/L
여기서 C는 standard coverage, Ck는 k-mer coverage, L은 read length, k는 k-mer size로 경험상 Ck가 최소 10은 되야 하고 20이 넘어가면 이는 "wasting" coverage가 된다고 한다(위 공식에서 풀어서 생각하면 일반적인 coverage를 구하기 위해 read count * read length / genome size를 하는데 read length 대신에 read에서 나올 수 있는 k-mer의 수를 곱해준 것으로 각 base에서 몇 개의 k-mer가 cover되는가, 즉 말그대로 k-mer coverage를 구하게 되는 것이다). 


abstract를 보자면..
de novo assembly of transcriptome의 최적화를 위해 여기서는 두가지 방법을 제시한다. 한가지가 Multiple-k method, 다른 한가지가 STM(Scaffolding using Translation Mapping) method. Multiple-k method는 말그대로 k-mer size 다양하게 해서 assembly 한다는 것이고 STM method는 가장 유사하다고 여겨지는 이용가능한 reference proteome을 이용해서 같은 protein에 mapping되는 contig들을 scaffolding 하는것. 이 두 방법을 사용해서 catfish, 매기에 transcriptome 을 분석하였단다.


음.. 굉장히 별거 아닌거 같이 보인다.. k-mer 의 길이를 다양하게 하는 것은 velvet등의 assembler에서의 권장 사항이며 reference based assembly 역시 velvet에서 columbus라는 모듈로 나온것인데.. 뭐 끝까지 함 봐보자.


intro가 상당히 긴데 기억할 만한 것은 higher expressed 되는 transcript의 경우 k-mer 길이를 길게 함으로 해서 더욱 긴 contig를 만들수 있는데 반해 poorly expressed 되는 transcript경우에는 짧은 k-mer size가 났단다. 결국 이 k-mer의 길이의 선택은 어느것에 초점을 맞추느냐인 주관적인 문제라고. 음.. abstract 만 보고 reference based assembly에 대해 뻔하고 했는데.. 여기서도 다양한 선례를 보인다. 다만 선례들은 close relative genome을 이용했으므로 제한적이라는 것. genome을 사용했다는 건 reference로 사용한 genome의 evolutionary distance가  멀수록 nucleotide difference가 클 수 밖에 없으므로. 이 문제의 해결 방법으로 amino acid sequence를 이용한다는 것.


아하. 이 논문의 차별성은 보통은 다양한 k-mer 길이를 이용하여 테스트를 해보기는 하나 결국은 하나의 k-mer size를 정해서 분석하는데 반해 이 논문은 다양한 k-mer에서 나온 결과를 전부 이용한 다는 것이며, 보통 reference based assembly에서 genomics sequence가 사용되는데 반해 여기서는 amino acide sequence를 사용한다는 것.


아래 두 표에서 보듯이 k-mer size를 늘려가면 확실히 sensitivity는 줄어드나(table1에서 reference coverage 감소) contig의 average coverage는 늘어남을 알 수 있다(table2의 rpkm 값 증가). 여기서 집고 넘어가는 것 중에 하나가 k-mer size가 늘어날 수록 rpkm의 mean은 커지고 동시에 SD도 커진다는 것. 즉 k-mer size가 커지면 적은 수의 다양한 expression level을 보이는 transcript의 assembly가 된다는것. 곧 k-mer size마다 assembly 결과 특징이 다르다.
아래표는 모기의 trascriptome 데이터 가지고 evaluation을 해본 것이다.
그래서 이 논문에서는 다양한 k-mer size를 이용하는 두가지 방법을 제시. 하나가 subtractive Multiple-k 와 additive Multiple-k.
subtractive Multiple-k : 큰 k-mer size로 assembly 하고 나서 nonassembled read만 모아서 작은 k-mer size로 assembly
additive Multiple-k : subtractive Multiple-k와는 달리 큰 k-mer size로 assemble 했을때 contig 생성에 참여한 read를 제거하지 않고 다시 중복해서 작은 k-mer size로의 assembly에 사용. 이렇게 되면 contig에 redundancy가 생기게 되는데 CD-HIT-EST를 이용해서 clustering을 한뒤 가장 긴 contig만 남긴다.
위 표에서 볼수 있듯이 subtractive Multiple-k는 그다지 나아진 점이 없는걸로 보인다. 반면 additive Multiple-k의 결과는 상당히 개선됨을 보인다. 이 논문에서 찝어서 이야기 하는 것중 하나가 No. of transcript로 보면 Multiple-k가 19 k-mer보다 나은게 없어보이지만 100이상인 contig의 수가 2배 이상이라는 것(커버하는 transcript의 수는 비슷할지라도 그 transcript의 cover 면적은 Multiple-k가 훨씬 좋다는 것. 그렇다면 cover 했다는 definition이 뭐냐? blastn을 돌렸을때 query의 95%가 align에 참여하고 reference의 99% identity가 있을 경우를 의미 한다. 곧 query 대비 길이가 95%가 넘어가면 그 transcript를 커버했다고 보는 것).


STM method : initial assembly 결과 contig를 translation해서 reference proteome에서 orthologous region을 찾는것. 만약 서로 다른 contig의 translated amino acid가 하나의 protein에 mapping된다면 이를 scaffolding 하는 것이다. 이 과정에서 initially unassembled read를 사용하느냐 마느냐에 따라 STM+ 와 STM-로 나뉜다. 자세한 과정은 아래 그림을 참조한다.



아래 표가 simulated read를 STM method을 이용해서 assembly 한 결과. 에러는 적은데 반해  maximum length랑 N50이 커진 것을 알 수 있다. 그리고 이 STM method가 transcript length나 adundance에 bias가 있는지도 확인했는데 그런건 없단다.

마지막으로 STM method의 한계점에 대해서 이야기 하는데.. 어떻게 보면 STM method가 EST로 orthology 찾는거랑 비슷한데 다른 논문에서 말하길 비교하자고 하는 두 종 중 하나의 종의 transcriptome이 완성됐다면 그 정확도가 상당히 높다는 것. 또한 비교하고자 하는 종의 evolutionary distance가 멀어짐에 따라 prediction 할 수 있는 ortholog는 줄어들지만 accuracy는 거의 똑같다고. 곧 이를 STM method에 적용해서 보자면 complete transcriptome을 사용한다면 reference의 evolutionary distance에 상관없이 low error rate의 결과를 얻을 것이라는 것.

No comments:

Post a Comment