Otázka:
Rozdíl mezi BWA-backtrack a BWA-MEM
DDRRpy
2017-05-16 23:41:23 UTC
view on stackexchange narkive permalink

Mnoho mých kolegů doporučuje, abych místo běžného starého BWA používal BWA-MEM. Problém je, že nechápu, proč a čtení manuálové stránky BWA se nezdá, že by to pomohlo.

Jaký je rozdíl mezi BWA a BWA-MEM? A ve kterých případech byste zaměstnávali jeden nad druhým?

Měli byste si přečíst publikace [BWA] (https://www.ncbi.nlm.nih.gov/pubmed/19451168) a [BWA mem] (https://arxiv.org/abs/1303.3997).
Tento dokument: https://arxiv.org/abs/1303.3997
Možný duplikát: https://bioinformatics.stackexchange.com/questions/418/why-is-bwa-mem-the-standard-algorithm-when-using-bwa
Dva odpovědi:
Karel Brinda
2017-06-07 20:34:52 UTC
view on stackexchange narkive permalink

BWA-backtrack je založen na backtrackingu. Tento přístup je vhodný pouze v případě, že rozdílnost mezi čtením a odkazem je nízký, nebo pokud chcete najít všechny nejlepší zásahy nebo vyjmenovat všechna možná zarovnání až na zadaný počet chyb.

Ve všech ostatních situacích je BWA-MEM díky své propracované strategii výhodnější, jak může. na základě maximálních přesných shod řešit chyby lépe a také automaticky přepínat mezi režimy místního a globálního zarovnání.

Dlouhý popis:

Chtěl bych poskytnout některé algoritmický vhled, protože se domnívám, že to v tomto případě může být velmi užitečné. BWA-backtrack i BWA-MEM používají stejnou strategii indexování (silně se spoléhající na BWT-index), ale skutečné algoritmy jsou zcela odlišné.

BWT-index (a také další fulltextové indexy, například pole přípon nebo stromy přípon) mohou snadno najít přesné shody (představte si Ctrl + F-like search in a text editor), but any d Pokud rozdíly mezi čtením a odkazem, jako jsou chyby sekvenování nebo genomické varianty, situaci komplikují. Jeden pak musí nějakým způsobem transformovat nepřesnou shodu na přesnou shodu a všechny tři mapovače BWA (všimněte si, že existuje také BWA-SW, ale je zastaralý) používají zcela odlišné strategie.

BWA-backtrack hledá podřetězce odkazu, které by byly podobné celému čtení (end-to-end) pomocí algoritmu backtracking. Nejprve vyhledává výskyty čtení bez jakýchkoli „oprav“. Pokud se nic nenašlo, zohlední se všechny možné jednotlivé úpravy; pak dvě úpravy atd. Aby bylo mapování efektivní, jeden obvykle chce skončit s prvním nalezeným zarovnáním, protože by to bylo nejlepší. V případě potřeby je také možné najít další stejně dobré zarovnání nebo vyjmenovat všechna zarovnání až po nějakou úpravu vzdálenost nebo přesáhne určitou odchylku (viz volba -N u BWA-backtrack).

Ukázalo se, že čas potřebný k nalezení zarovnání může být v počtu chyb exponenciální, což je pravděpodobně hlavní problém přístupů založených na zpětném sledování. Aby se zabránilo velkým režijním nákladům v důsledku odlišných čtení, je třeba omezit počet povolených chyb na nějaký rozumný počet (viz maxDiff na BWA man page) a zvažte, že ostatní čte nezarovnané. V případě BWA-backtrack je minimální požadovaná úroveň identity ~ 97% s výchozími možnostmi (viz možnost -n).

Algoritmus je ve skutečnosti komplikovanější a používá různé heuristiky, jako je seed-and-extend nebo Z-dropoff, aby byl výpočet dostatečně rychlý (za cenu nižší přesnosti). Pokud vás zajímá více podrobností, všechny tyto triky jsou dobře popsány v příspěvku.

BWA-MEM používá zcela jinou strategii. Detekuje dlouhé přesné shody mezi čtením a odkazem a poté je zřetězí do místního nebo globálního zarovnání na základě toho, co je v konkrétním případě vhodnější.Takové automatické přepínání mezi místními a globálními může být velmi silné a BWA-MEM funguje dobře s různými typy dat (krátká čtení, dlouhá čtení, nízká chybovost, vysoká chybovost atd.).

Michael Hall
2017-05-17 03:49:39 UTC
view on stackexchange narkive permalink

Chcete-li citovat Úvod do BWA na sourceforge:

BWA je softwarový balíček pro mapování málo divergentních sekvencí proti velkému referenční genom, jako je lidský genom. Skládá se ze tří algoritmů: BWA-backtrack, BWA-SW a BWA-MEM. První algoritmus je navržen pro čtení sekvence Illumina až 100 bp, zatímco zbývající dva pro delší sekvence se pohybovaly od 70 bp do 1 Mbp. BWA-MEM a BWA-SW sdílejí podobné funkce, jako je podpora dlouhého čtení a rozdělení rozdělení, ale nejnovější verze BWA-MEM se obecně doporučuje pro vysoce kvalitní dotazy, protože je rychlejší a přesnější. BWA-MEM má také lepší výkon než BWA-backtrack pro čtení Illumina 70-100bp.

Stručně řečeno, pro cokoli, kde jste četli délky přes 70 bp, je BWA-MEM rychlejší a přesnější .

Jedním důležitým doplňkem je, že BWA-MEM bude rozdělit čtení agresivněji. Zatímco BWA-ALN vyžaduje (pokud si dobře pamatuji) jedno zarovnání end-to-end pro ukotvení, BWA-MEM umožňuje částečné zarovnání. Praktické je použít příznak `-M` pro bwa mem, pokud zpracováváte zarovnání se staršími nebo méně mainstreamových programů, pokud dosud nerozumí příznaku doplňkového čtení BAM.
@Manuel: Jaké konkrétní programy máte na paměti, že potřebují `-M`? Tato vlajka byla přidána pro použití s ​​Picardem <1,96, který je nyní starodávný - samotný Picard už čtyři roky z této vlajky neprospěl ani ji nepotřeboval. Viz také https://github.com/lh3/bwa/pull/26


Tyto otázky a odpovědi byly automaticky přeloženy z anglického jazyka.Původní obsah je k dispozici na webu stackexchange, za který děkujeme za licenci cc by-sa 3.0, pod kterou je distribuován.
Loading...