Hyppää sisältöön

COMEBin

COMEBin binnaa metagenomisia kontigeja metagenomiksi koottuihin genomeihin (MAGeihin). Se oppii esityksen jokaiselle kontigille sen sekvenssikoostumuksen ja lukukattavuuden perusteella kontrastiivisen moninäkymäisen oppimisen avulla ja klusteroi kontigit Leiden-algoritmilla.

Lisenssi

Vapaasti käytettävissä ja avointa lähdekoodia GNU GPLv3 -lisenssillä.

Saatavuus

  • Roihu-CPU: 1.1.0, bio-apps-moduulin kautta.
  • Roihu-GPU: 1.1.0 (GPU-kiihdytetty opetus), bio-apps-moduulin kautta.

Käyttö

COMEBin on osa Roihun bio-apps -kokoelmaa. Lataa ensin bio-apps-moduulipuu ja sitten COMEBin-moduuli:

module load bio-apps/v202603
module load comebin/1.1.0

COMEBin tarvitsee kontigit pakkaamattomana FASTA-tiedostona sekä hakemiston järjestetyille BAM-tiedostoille, jotka on tuotettu kohdistamalla kunkin näytteen luvut kontigeihin. COMEBinin mukana tuleva gen_cov_file.sh-skripti kohdistaa paired-end-lukuja BWA:lla ja kirjoittaa BAM-tiedostot hakemistoon, joka annetaan valitsimella -b:

gen_cov_file.sh -a contigs.fa -o cov -b bams -t 16 \
  -f _1.fastq.gz -r _2.fastq.gz reads/*.fastq.gz

-f ja -r määrittävät etu- ja takalukutiedostojen pääteosat (oletukset ovat _1.fastq ja _2.fastq). Anna kaikki valitsimet ennen lukutiedostoja.

run_comebin.sh suorittaa sitten COMEBinin kolme vaihetta: data augmentaation, jossa kontigipiirteet lasketaan kontigeista ja BAM-tiedostoista, mallin opetuksen sekä klusteroinnin. Vain opetusvaihe voi käyttää GPU:ta. Suorita kohdistus ja kaikki COMEBin-vaiheet eräajoina, ei kirjautumissolmulla. Katso alla oleva esimerkkieräajokomentosarja.

Ajaminen Roihu-CPU:ssa

Suorita kaikki kolme vaihetta Roihu-CPU:ssa valitsimella -d cpu, jolloin malli opetetaan CPU:lla. Oletusarvo cuda epäonnistuu CPU-solmuilla:

run_comebin.sh -a contigs.fa -p bams -o comebin_out -d cpu -t $SLURM_CPUS_PER_TASK

Bin-tulokset kirjoitetaan hakemistoon comebin_out/comebin_res/comebin_res_bins, ja kunkin kontigin bin tiedostoon comebin_out/comebin_res/comebin_res.tsv. Jos ajo pysähtyy, suorita sama komento uudelleen: COMEBin ohittaa data augmentaatio- ja opetusvaiheet, jotka on jo saatu valmiiksi.

Jos haluat yhdistää COMEBinin bin-tulokset muiden binnaustyökalujen tuloksiin, käytä MAGScoT.

Opetus GPU:lla

Opetus on nopeampaa GH200-GPU:lla, mutta muut vaiheet käyttävät vain CPU:ita. Suorita vain opetus GPU-eräajona ja muut vaiheet eräajoina Roihu-CPU:ssa. Lähetät GPU-työn Roihu-GPU:n kirjautumissolmulta (roihu-gpu.csc.fi), mutta huomaa, että kirjautumissolmulla itsellään ei ole GPU:ita.

  1. Luo Roihu-CPU:ssa BAM-tiedostot ja suorita data augmentaatio -vaihe eräajossa (katso esimerkkieräajokomentosarja):

    python $COMEBIN_INSTROOT/bin/COMEBin/main.py generate_aug_data --contig_file contigs.fa \
      --bam_file_path bams --out_augdata_path comebin_out/data_augmentation --num_threads $SLURM_CPUS_PER_TASK
    
  2. Kirjaudu osoitteeseen roihu-gpu.csc.fi, siirry samaan hakemistoon kuin vaiheessa 1 ja lähetä GPU-eräajon esimerkkikomentosarja, joka opettaa mallin.

  3. Suorita Roihu-CPU:ssa run_comebin.sh eräajossa samoilla valitsimilla kuin kohdassa Ajaminen Roihu-CPU:ssa. Se löytää valmiit data augmentaatio- ja opetusvaiheet ja suorittaa vain klusteroinnin.

Esimerkkieräajokomentosarja

Tämä suorittaa kaikki kolme vaihetta Roihu-CPU:ssa. GPU-opetusta varten korvaa rivi run_comebin.sh yllä olevan vaiheen 1 generate_aug_data-komennolla.

#!/bin/bash
#SBATCH --job-name=comebin
#SBATCH --account=<project>
#SBATCH --output=output_%j.txt
#SBATCH --error=errors_%j.txt
#SBATCH --partition=small
#SBATCH --time=24:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=32
#SBATCH --mem=64G

module load bio-apps/v202603
module load comebin/1.1.0

gen_cov_file.sh -a contigs.fa -o cov -b bams -t $SLURM_CPUS_PER_TASK \
  -f _1.fastq.gz -r _2.fastq.gz reads/*.fastq.gz
run_comebin.sh -a contigs.fa -p bams -o comebin_out -d cpu -t $SLURM_CPUS_PER_TASK

Korvaa <project> CSC-projektillasi (esimerkiksi project_2001234).

GPU-eräajon esimerkkikomentosarja

Tämä suorittaa vain opetusvaiheen Roihu-CPU:n data augmentaatio -tuloksilla. Lähetä se osoitteesta roihu-gpu.csc.fi:

#!/bin/bash
#SBATCH --job-name=comebin-train
#SBATCH --account=<project>
#SBATCH --output=output_%j.txt
#SBATCH --error=errors_%j.txt
#SBATCH --partition=gpumedium
#SBATCH --time=08:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=32
#SBATCH --gres=gpu:gh200:1

module load bio-apps/v202603
module load comebin/1.1.0

python $COMEBIN_INSTROOT/bin/COMEBin/main.py train --data comebin_out/data_augmentation \
  --output_path comebin_out/comebin_res --earlystop --addvars --vars_sqrt \
  --num_threads $SLURM_CPUS_PER_TASK

Katso lisätietoja eräajojen suorittamisesta kohdasta eräajokomentosarjan luominen Roihulle ja käytettävissä olevista GPU-resursseista kohdasta GPU-osiot.

Tuki

CSC Service Desk

Lisätietoja

Onko tämä sivu hyödyllinen?
Kiitos palautteestasi!
Kiitos! Arvostamme palautettasi.

Kerro meille miten voisimme parantaa tätä sivua ottamalla meihin yhteyttä .