メタゲノミクスは、微生物の遺伝物質を自然環境から直接研究するものである(Chen and Pachter, 2005)。次世代シーケンシング(NGS)技術により、ヒトマイクロバイオームプロジェクト(The Human Microbiome Project Consortium, 2012)のような大規模な研究が可能になり、大量のショートリードデータを生成してさまざまな環境のシーケンスを行うことが可能になった。微生物群集に存在する個々のゲノムを復元することは、このような研究において重要なステップであり、それは異なる種の機能や行動の特徴付けに役立つからである。このような分析において重要なステップは、リードを異なる種を表す個々のビンにグループ化することである。この作業のためには、ビンの数とリードが属するビンの数を推定する必要があり、多くのビニングツールが設計されている。
メタゲノミクスのビニングツールには大きく分けて2つのタイプがある。(i)リファレンスベースのビニングと(ii)リファレンスフリーのビニング(taxonomyに依存しない)である。リファレンスベースのビニングツールは、配列類似度などの特徴を利用し、既知のゲノムのデータベース内の配列と比較するもので、例えば、LMAT(Ames et al、2013)、MetaPhlAn(Segata et al、2012)、Kraken(Wood and Salzberg、2014)などがある。リファレンスベースのビニングツールは、データセットが既知の微生物ゲノムで構成されている場合に、非常に正確な結果を生成する。しかし、リファレンスゲノムは未知のものや不完全なものが多く、そのような場合にはこれらのツールを使用することはできない。対照的に、リファレンスフリーのビニングツールは、リファレンスデータベースを使用せずに動作する。これらのツールは、ゲノムシグネチャと配列情報に完全に基づいて、配列をラベルの付いていないビンにグループ化する。例としては、CLAME(Benavides et al、2018)、MetaProb(Girotto et al、2016)、MrGBP(Kouchaki et al、2019)およびOpal(Luo et al、2019)が挙げられる。これらのツールの大部分は、エラー率が非常に低いショートリードを用いて設計され、ベンチマークされている(McIntyre et al、2017; Pearman et al、2019)。
ショートNGSリードの使用は、個々のゲノム内でのリピートや、異なるゲノム間で共有される類似領域のために、曖昧なアラインメントや断片化されたアセンブリーになりやすい(Pearman et al、2019)。これらの制限を克服するために、メタゲノミクスの分野では、PacBioやONTなどの第三世代シーケンシング技術によって生成されたロングリードデータを、特にメタゲノムアセンブリのために利用することへの関心が高まっていることが示されている(Pearman et al、2019)。しかし、ロングリードリードやエラーが発生しやすいリードからのビニングの精度をベンチマークする研究は限られた数しか行われていない(Pearman et al、2019)。
ロングリードリードを扱えるビニングツールの中でも、MEGAN-LR(Huson et al、2018)、Centrifuge(Kim et al、2016)、Kaiju(Menzel et al、2016)は、k-merマッチング、インデキシング、アライメントのためにリファレンスデータベースが必要なリファレンスベースのビニングを行う。ツールMetaProb(Girotto et al、2016)およびBusyBee Web(Laczny et al、2017)は、ロングリードのリファレンスフリーのビニングをサポートする。しかし、MetaProb(Girotto et al、2016)の現在の実装は、大規模で未知のロングリードデータセットをビニングするためにうまくスケールできず、一方、BusyBee Web(Laczny et al、2017)は、現在、ウェブベースのツールとして利用可能であり、入力データセットのサイズに制限がある。著者らの知る限りでは、大規模なロングリードデータセットを正確にビニングすることができるリファレンスフリーのツールは存在しない。
ショートリードでは十分な種特異的シグナルが含まれていない可能性があるため、別のアプローチとして、より長いコンティグにアセンブルし、コンティグビニングツールを使用することが考えられる[例えば、MetaBAT(Kangら、2015、2019)、MetaWatt(Strousら、2012)、SolidBin(Wangら、2019)、MaxBin 2.0(Wuら、2016)、BMC3C(Yuら、2018)、およびAutometa(Millerら、2019)など]。しかし、これらのツールは、ロングリードをコンティグとして扱うことにより、長いリードをビニングするために直接適用することはできない。第一に、コンティグビニングツールは、各コンティグのカバレッジ情報を必要とするが、そのようなカバレッジ情報は、通常、単一のロングリードに対しては利用できない。第二に、これらのツールはシングルコピーマーカー遺伝子を使用してビン数を決定するが、ロングリードはこのような解析にはエラーが発生しやすく、また(ゲノムのカバレッジが1よりも大きい場合)ビン数が過大評価される可能性がある。第三に、ロングリードデータセットはコンティグデータセットよりもはるかに大規模であり、これらのツールはスケーラビリティの課題に対処することができない。そのため、大規模なロングリードデータセットを正確かつ効率的にビニングできるリファレンスフリーのツールが必要とされている。
本論文では、メタゲノムのロングリードをビニングするためのスケーラブルなリファレンスフリービニングツールであるMetaBCC-LRを設計した。MetaBCC-LRは、種の豊富さと組成情報をキャプチャする識別特徴を使用して、ビンの数を見つけ出し、各ビンの統計モデルを開発する。これは、入力されたリードのサンプルだけを使用することで達成され、MetaBCC-LRは大規模なデータセットを効率的に扱うことができる。この統計モデルにより、最尤フレームワークを用いて各ロングリードを正確にビンに分類することができる。実験結果は、複数の評価基準を用いて、シミュレーションデータと実データの両方において、最先端のリファレンスフリーのビニングツールよりも大幅に改善されていることを示している。ビニングによって下流のタスクがどのように改善されるかを評価するために、MetaBCC-LRを適用して、大規模なロングリードデータセットを前処理し、ロングリードアセンブリのために個々のビンに読み込んだデータをビン化した。これにより、実行時間とメモリ使用量が大幅に削減されただけでなく、アセンブリの品質も向上した。
MetaBCC-LR: Metagenomics Binning by Coverage and Composition for Long Reads https://t.co/2hvHCnAHlY
— Anuradha (@Anuradhawick) 2020年7月14日
インストール
依存
Python dependencies
- numpy 1.16.4
- scipy 1.3.0
- kneed 0.4.2
- seaborn 0.9.0
- h5py 2.9.0
C++ requirements
Third party programs
#ここではpython3.6の仮想環境を作って入れる(3.6とpipも導入している)。
conda create -n metabcc python=3.6 -y
conda activate metabcc
pip install numpy==1.16.4
pip install scipy==1.3.0
pip install kneed==0.4.2
pip install seaborn==0.9.0
pip install h5py==2.9.0
conda install -c bioconda -y dsk
git clone https://github.com/anuradhawick/MetaBCC-LR.git
cd MetaBCC-LR
./build.sh
> ./MetaBCC-LR -h
$ ./MetaBCC-LR -h
usage: MetaBCC-LR [-h] -r <READS PATH> [-t <THREADS>] [-i <IDS>]
[-c <No of reads to sample>] [-s <Sensitivity>]
[-b <bin width for coverage histograms>]
[-m <Max memory for DSK in Mb>] [--resume] -o <DEST>
MetaBCC-LR Help. A tool developed for binning of metagenomics long reads
(PacBio/ONT). Tool utilizes composition and coverage profiles of reads based
on k-mer frequencies to perform dimension reduction. dimension reduced reads
are then clustered using DB-SCAN. Minimum RAM requirement is 9GB.
optional arguments:
-h, --help show this help message and exit
-r <READS PATH> Reads path (FASTQ)
-t <THREADS> Thread limit
-i <IDS> Read ids of reads (For dry runs with ground truth)
-c <No of reads to sample>
Number of reads to sample in order to determine the
number of bins. Set to 1% of reads by default.
Changing this parameter will affect whether low
coverage species are separated or not.
-s <Sensitivity> Value between 1 and 10, Higher helps recovering low
abundant species (No. of species > 100)
-b <bin width for coverage histograms>
Value of bx32 will be the total coverage of k-mers in
the coverage histograms. Usually k-mers are shifted
towards y-axis due to errors. By defaul b=10;
coverages upto 320X
-m <Max memory for DSK in Mb>
Default 5000. DSK k-mer counter accepts a max memory
parameter. However, the complete pipeline requires
5GB+ RAM. This is only to make DSK step faster, should
you have more RAM.
--resume Continue from the last step or the binning step (which
ever comes first). Can save time needed to run DSK and
obtain k-mers. Ideal for sensitivity tuning
-o <DEST> Output directory
実行方法
MetaBCC-LR -r input_long_reads.fq -t 20 -o out_dir
- -r Reads path (FASTQ)
- -t Thread limit
出力
引用
MetaBCC-LR: metagenomics binning by coverage and composition for long reads
Anuradha Wickramarachchi, Vijini Mallawaarachchi, Vaibhav Rajan, Yu Lin
Bioinformatics. 2020 Jul 1;36(Supplement_1):i3-i11
関連