#2025/09/22 インストール手順修正
コンティグビニングは、メタゲノムデータ解析において、同一または近縁ゲノムからのコンティグをグループ化することで重要な役割を果たしている。しかし、既存のビニング手法は、データの種類が多様であることや、異種情報を効率的に統合することが困難であることから、実用化において課題に直面している。ここでは、対照的マルチビュー表現学習に基づくビニング手法COMEBinを紹介する。COMEBinは、データ増大を利用して各コンティグの複数の断片(ビュー)を生成し、対比学習により異種特徴(配列カバレッジとk-mer分布)の高品質な埋め込みを得る。複数の模擬データセットおよびリアルデータセットを用いた実験結果から、COMEBinは、特に実環境サンプルからほぼ完全なゲノムを復元する際に、最先端のビニング手法を凌駕することが実証された。COMEBinは、メタゲノム解析パイプラインに組み込んだ場合、潜在的な病原性抗生物質耐性菌(PARB)の回収や、潜在的な生合成遺伝子クラスター(BGC)を含む中程度以上の品質のビンの回収など、他のビニング手法よりも著しく優れている。
レポジトリより
COMEBin のフレームワークは主に以下のステップに分けられる: 1)データ補強:元のコンティグからランダムに部分配列を抽出することにより、5セットの補強データを構築し、元のコンティグごとに6つのビューを得る。2)特徴ベクトルの構築:各コンティグ(元の配列と補強配列を含む)について、ヌクレオチド頻度特徴とカバレッジ特徴を構築する。3)対比学習:マルチビュー対比学習に基づいて、異種情報を用いたビニングに適した低次元の埋め込み表現を得る。4)クラスタリング:コミュニティ分割アルゴリズムLeidenに基づいてビニング結果を生成する。
このうち、対比学習で用いられるネットワーク構造には、1)「カバレッジネットワーク」:カバレッジ特徴量を処理する部分と、2)「コンバインネットワーク」:k-mer特徴量と「カバレッジネットワーク」を統合し、異種情報を含む表現を得る部分がある。
インストール
mamba create -n comebin_env -y
conda activate comebin_env
mamba install -c conda-forge -c bioconda comebin -y
#GPU版をランするにはpytorchも必要
mamba install pytorch pytorch-cuda=11.8 -c pytorch -c nvidia -c conda-forge -y
#docker (ホストマシンにドライバーが入っていればGPU対応)
#GPU check
docker run --gpus all eikematthias/comebin:1.0.4 nvidia-smi
> run_comebin.sh
COMEBin version: 1.0.2
Usage: bash run_comebin.sh [options] -a contig_file -o output_dir -p bam_file_path
Options:
-a STR metagenomic assembly file
-o STR output directory
-p STR path to access to the bam files
-n INT number of views for contrastive multiple-view learning (default=6)
-t INT number of threads (default=5)
-l FLOAT temperature in loss function (default=0.07 for assemblies with an N50 > 10000, default=0.15 for others)
-e INT embedding size for comebin network (default=2048)
-c INT embedding size for coverage network (default=2048)
-b INT batch size for training process (default=1024)
テストラン
レポジトリのgoogle driveリンクからテストデータ(5.2GB)をダウンロードできる。
解凍後

bamfiles/下にはbamファイル(5.1GB)が1個配置されている。
COMEBinのランにはコンティグとBAMファイルを指定する。
cd comebin_test_data/
run_comebin.sh -a BATS_SAMN07137077_METAG.scaffolds.min500.fasta.f1k.fasta \
-p bamfiles -o run_comebin_test -n 6 -t 40
- -a metagenomic assembly file
- -o output directory
- -n number of views for contrastive multiple-view learning (default=6)
- -t number of threads (default=5)
CPUモードのランでは数時間かかった。
出力
run_comebin_test/

comebin_res/

comebin_res_bins/

実行方法
1、実際にランするには、MAGにショートリードをマッピングしてbamファイルを用意する必要がある。MetaWRAPのスクリプトを少し改良したgen_cov_file.shスクリプトが利用できるようになっている(format: *_1.fastq and *_2.fastq )。condaで入れた場合、すでにパスが通っている。
gen_cov_file.sh -a assembly.fasta -t 20 -o bam sample1_*fastq
#注意contigの配列ヘッダはcontig_<INT>形式を期待する。修正してから使う。また短いcontig(1kb以下)があるとエラーが起きやすいので注意する
awk '/^>/{print ">contig_" ++i; next}1' assembly.fasta > renamed.fasta
- -a metagenomic assembly file
- -o output directory (to save the coverage files)
- -b directory for the bam files (optional)
- -t number of threads (default=1)
- --single-end non-paired reads mode (provide *.fastq files)
2、出力されたassembly.faとディレクトリを指定する。
run_comebin.sh -a bam/work_files/assembly.fa -p bam/work_files/ -o run_comebin_test -n 6 -t 20
引用
Effective binning of metagenomic contigs using contrastive multi-view representation learning
Ziye Wang, Ronghui You, Haitao Han, Wei Liu, Fengzhu Sun & Shanfeng Zhu
Nature Communications volume 15, Article number: 585 (2024)