Friday, July 15, 2011

A Practical Comparison of De Novo Genome Assembly Software Tools for NGS Tech.

de novo assembly에 대해서 여러가지 툴들을 비교 분석한다. 음.. abstract를 보면 너무 뻔한 소리를 하고 있긴 한다만.. 그래도 그 과정이 궁금하기에 한번 보자.


intro를 보자면
아하.. quality-value를 input으로 하는 것은 SHARCGS와 ALLPATHS-LG 밖에 없단다.


memory saving과 data inquiry의 편의성을 위해서 요즘 assembler는 크게 두가지 형태의 data structure를 채택하는데
1. string-based model : Greedy-extension algorithm 채택, 상대적으로 작은 사이즈의 게놈에 이용
2.graph-based model : OLC (overlap-layout consensus)와 DeBruijn graph를 이용한 방식, complex genome을 핸들링 하는데 사용


요즘 assembler의 bottleneck은 어떻게 repetitive fragment를 처리하냐인데 paired end로 수습하려는 시도가 있다. 두번째 큰 문제는 시간이 엄청 걸린다는 것, 이것을 해결하기 위해 thread의 병렬화 이용.
아래 그림은 이제 이 논문에서 비교하려는 24개의 assembler를 그들이 취급하는 data structure에 따라 분류한 그림
이 논문에서는 24가지 전체 비교는 아니고 8가지 assembler로만(이것들이 4개의 assembly strategy를 대표) 4개의 genome에 대해서 test 한다. 물론 이 논문의 목적은 각각의 assembler의 performance 비교 (memory cost, assembly accuracy, completeness, size distribution of contigs) 하는 것.


result를 보자면..
speed 랑 memory 를 얼마나 차지하나를 보는데.. 건질건 없다. 4개의 quad core CPU, 32GB of RAM에서 실행한건데... 그냥 De Buijn graph를 이용하는 것들이 메모리도 적게 먹고 빠르다.
그 담엔 accuracy랑 integrity를 봤는데.. 뭐 accuracy와 integrity의 정의가 뭐 그닥 fancy 하지 않다. 그냥 굉장히 단순하게 계산을 했다. "shorter than Ybp" 라고 한건 오타가 아닐까 생각이 들고 integrity 를 정의 할때 contig의 cover region에 대한 redundancy를 왜 고려하지 않았을까란 생각이 든다. 그냥 mapped contig의 길이의 총합을 이용했는데.. 이건 좀 정확한 의미의 integrity가 아닐거란 생각이 든다.


이 논문은 끝까지 안보련다.. 시간 낭비란 생각이 들어서




------------------------checkList-----------------------
1.string based model 이란게 정확하게 뭔지.. 알고리즘적인 접근 필요

No comments:

Post a Comment