macでインフォマティクス

macでインフォマティクス

NGS関連のインフォマティクス情報についてまとめています。

高速なヒトゲノムのアセンブラ Peregrine

 

 初期のヒトゲノムプロジェクトと安価なDNAシークエンシング技術の技術の開発は、学術研究とゲノム情報を使用して人間の健康を改善する産業の両方を進歩させた。それは、遺伝子型と表現型の関連と多くの重要かつ臨床関連のアプリケーションのための貴重な情報につながる。 Oxford Nanopore Technology(ONT)およびPacific Biosciences(PacBio)のシーケンサーは、第2世代のシーケンスよりも桁違いに長いDNA配列を読み取ることができる。リード長が長くなると、de novoアセンブリが比較的簡単になり、より連続したアセンブリを生成できるようになる。ゲノムのdenovo再構築により、リファレンスを事前情報として使用することへの依存が軽減される。リファレンスに依存するリシークエンシングアプローチは、リファレンスから大幅に逸脱したゲノム構造を探索するのに効果的ではない場合がある。直接的なヒトゲノムアセンブリの最近の研究により、現在のリファレンスゲノムにない新しい配列が発見された。構造変異を発見する体系的なアプローチは、多くの新しい構造変異と、ヒトのSNPおよびsmall indels以外のより大きな変異のより包括的なカタログを生成するために、より多くのサンプルを必要とする。

(一段落省略)
 ロングリードゲノムアセンブリの場合、現在のほとんどのロングリードアセンブラのにオーバーラップレイアウトコンセンサス(OLC)パラダイムが使用される。リードのquadraticな比較(おそらくリード数に応じて二次的に増加するという意味合い)が計算効率をさらに向上させるための主要なボトルネックのままである。たとえば、最初にノイジーなPacBioのリード用に設計されたhierarchical genome assembly process HGAPは、2つの重複するステップを取る、1つはエラー修正用で、もう1つはアセンブリグラフ生成用で、ノイズの多い配列からヒトゲノムをアセンブリするのに20,000から30,000 CPU時間必要である。最近開発されたほとんどの高性能アセンブラ、たとえばFlye、wtdbg、Shastaは、2つの完全なリードの間でこのような計算的に高価な明示的なオーバーラッピングステップを避けるため、新しい戦略を適応させる。このような最適化は、ノイズの多いリードを効率的にアセンブリするために必要になる可能性がある。一方、ゲノムアセンブリのオーバーラップしたリードの計算効率を向上させるために、より正確なコンセンサスリードから始めることができる。より良いリード精度を活用することで、オーバーラップ検出の計算の複雑さを軽減できることがわかった。新しいゲノムアセンブラPeregrine(https://github.com/cschin/peregrine)を開発した。コンセンサスリードから始まり、ヒトゲノムサイズのアセンブリを行うために、効率的なインデックススキームを利用して、計算時間を20 cpu時間まで短縮した。
ここで紹介するゲノムアセンブリアプローチは、クラスター計算用の特別なセットアップなしで、ゲノムアセンブリを日常作業にするのに効果的である。ゲノムプロジェクトのこのような基本的なプロセスを簡素化することは、リシークエンシングアプローチからの情報の欠落を回避するde novoゲノムアセンブリを定期的に生成するための鍵である。現在、de novoアプローチのコストは、リシークンシングよりも高価である。しかしながら、速いペースで進む計算方法とシークエンシング技術の向上により、de novoでヒトゲノムを生成するためのコストは、間も無く到来するオーダーメイド医療で受け入れられる価格まで下がるかもしれない。我々(本著者ら)の方法はまた、現在のヒトのリファレンスGRCh38では利用できない新規のヒトゲノム配列をキャプチャすることを可能にし、pan-human-genomics references の構築に役立つ。ヒトゲノムのより包括的な見解を提供する可能性を考え、我々(本著者ら)は、今回の全ゲノムアプローチがリシークンシングアプローチでは簡単に明らかにできない遺伝子疾患の重要な情報を提供することを望んでいる。(複数段落省略)

 単一のノードで、クラウドアクセス可能なハードウェアを使用して、約2時間でヒトゲノムアセンブリを実行できることを実証した。 これにより、ソフトウェアインフラストラクチャ要件とグリッドコンピューティングの専門スキルの両方が不要になる。
この普遍的なアクセスは、DNAシーケンス技術の迅速な進歩と相まって、リファレンスグレードのゲノムアセンブリの日常的な生成を可能にする。サンプル収集から結果まで1〜2日という速さになる。

 

インストール

オーサーらが準備したdockerイメージをpullしてテストした。

本体 Github

dockerhub (link)
docker pull cschin/peregrine:latest

Usage:

  pg_run.py asm <reads.lst> <index_nchunk> <index_nproc>

                            <ovlp_nchunk> <ovlp_nproc>

                            <mapping_nchunk> <mapping_nproc>

                            <cns_nchunk> <cns_nproc>

                            <sort_nproc>

                            [--with-consensus]

                            [--with-L0-index]

                            [--output <output>]

                            [--shimmer-k <shimmer_k>]

                            [--shimmer-w <shimmer_w>]

                            [--shimmer-r <shimmer_r>]

                            [--shimmer-l <shimmer_l>]

                            [--best_n_ovlp <n_ovlp>]

                            [--mc_lower <mc_lower>]

                            [--mc_upper <mc_upper>]

                            [--aln_bw <aln_bw>]

                            [--ovlp_upper <ovlp_upper>]

  pg_run.py (-h | --help)

  pg_run.py --verison

 

Options:

  -h --help                   Show this help

  --version                   Show version

  --with-consensus            Generate consensus after getting the draft contigs

  --with-L0-index             Keep level-0 index

  --output <output>           Set output directory (will be created if not exist) [default: ./wd]

  --shimmer-k <shimmer_k>     Level 0 k-mer size [default: 16]

  --shimmer-w <shimmer_w>     Level 0 window size [default: 80]

  --shimmer-r <shimmer_r>     Reduction factore for high level SHIMMER [default: 6]

  --shimmer-l <shimmer_l>     number of level of shimmer used, the value should be 1 or 2 [default: 2]

  --best_n_ovlp <n_ovlp>      Find best n_ovlp overlap [default: 4]

  --mc_lower <mc_lower>       Does not cosider SHIMMER with count less than mc_low [default: 2]

  --mc_upper <mc_upper>       Does not cosider SHIMMER with count greater than mc_upper [default: 240]

  --aln_bw <aln_bw>           Max off-diagonal gap allow during overlap confirmation [default: 100]

  --ovlp_upper <ovlp_upper>   Ignore cluster with overlap count greater ovlp_upper [default: 120]

  

テストラン

docker run -it --rm -v $PWD:/wd cschin/peregrine test

 ラン途中で確認が出る、2019/10現在はまだプレリリースで、再配布は許可されていない。agreeならyes。

f:id:kazumaxneo:20191022121323p:plain

 

またランした時に追記します。

引用 

Human Genome Assembly in 100 Minutes

Chen-Shan Chin, Asif Khalak

bioRxiv preprint first posted online Jul. 17, 2019