Bonito는 Oxford Nanopore 읽기를 위한 오픈 소스 연구 기반 호출자입니다.
베이스콜러 교육이나 방법 개발 이외의 경우에는 dorado를 사용하세요.
$ pip install --upgrade pip
$ pip install ont-bonito
$ bonito basecaller [email protected] /data/reads > basecalls.bam
Bonito는 정렬/정렬되지 않은 {fastq, sam, bam, cram}
쓰기를 지원합니다.
$ bonito basecaller [email protected] --reference reference.mmi /data/reads > basecalls.bam
Bonito는 처음 사용할 때 베이스콜링 모델을 자동으로 다운로드하고 캐시하지만 모든 모델은 다음을 통해 다운로드할 수 있습니다.
$ bonito download --models --show # show all available models
$ bonito download --models # download all available models
bonito.transformer
패키지에는 flash-attn이 필요합니다.
flash-attn
패키징 시스템으로 인해 일반 종속성으로 나열되지 않으므로 수동으로 설치해야 합니다.
CUDA_HOME
관련 라이브러리 디렉터리로 설정하면 패키지 간의 CUDA 버전 불일치를 방지하는 데 도움이 됩니다.
수정된 베이스 콜링은 Remora에서 처리됩니다.
$ bonito basecaller [email protected] /data/reads --modified-bases 5mC --reference ref.mmi > basecalls_with_mods.bam
remora model list_pretrained
명령을 사용하여 사용 가능한 수정된 기본 모델을 확인하세요.
자체 읽기를 사용하여 모델을 교육하려면 먼저 추가 --save-ctc
플래그를 사용하여 읽기를 베이스콜하고 출력 디렉터리를 교육용 입력 디렉터리로 사용합니다.
$ bonito basecaller [email protected] --save-ctc --reference reference.mmi /data/reads > /data/training/ctc-data/basecalls.sam
$ bonito train --directory /data/training/ctc-data /data/training/model-dir
새로운 모델을 처음부터 훈련하는 것 외에도 사전 훈련된 모델 중 하나를 쉽게 미세 조정할 수도 있습니다.
bonito train --epochs 1 --lr 5e-4 --pretrained [email protected] --directory /data/training/ctc-data /data/training/fine-tuned-model
분석법 개발에 관심이 있지만 자체 판독 세트가 없는 경우 사전 준비된 세트가 제공됩니다.
$ bonito download --training
$ bonito train /data/training/model-dir
모든 훈련 호출은 자동 혼합 정밀도를 사용하여 훈련 속도를 높입니다. 이를 비활성화하려면 --no-amp
플래그를 True로 설정하십시오.
$ git clone https://github.com/nanoporetech/bonito.git # or fork first and clone that
$ cd bonito
$ python3 -m venv venv3
$ source venv3/bin/activate
(venv3) $ pip install --upgrade pip
(venv3) $ pip install -e .[cu118] --extra-index-url https://download.pytorch.org/whl/cu118
ont-bonito[cu118]
및 ont-bonito[cu121]
선택적 종속성을 해당 --extra-index-url
과 함께 사용하여 PyTorch 패키지가 로컬 CUDA 설정과 일치하는지 확인할 수 있습니다.
bonito view
- 주어진 .toml
파일에 대한 모델 아키텍처와 네트워크의 매개변수 수를 봅니다.bonito train
- 가다랑어 모델을 훈련시킵니다.bonito evaluate
- 모델 성능을 평가합니다.bonito download
- 사전 훈련된 모델 및 훈련 데이터 세트를 다운로드합니다.bonito basecaller
- basecaller ( .fast5
-> .bam
) .(c) 2019 Oxford Nanopore Technologies Ltd.
Bonito는 Oxford Nanopore Technologies, Ltd. Public License, v. 1.0의 조건에 따라 배포됩니다. 라이센스 사본이 이 파일과 함께 배포되지 않은 경우 http://nanoporetech.com에서 라이센스 사본을 얻을 수 있습니다.
연구 릴리스는 기능에 대한 조기 액세스를 제공하거나 도구의 커뮤니티 개발을 촉진하기 위한 기술 시연으로 제공됩니다. 이 소프트웨어에 대한 지원은 최소화되며 개발자가 직접 제공합니다. 기능 요청, 개선 및 토론을 환영하며 이는 분기 및 끌어오기 요청을 통해 구현할 수 있습니다. 사용자가 가질 수 있는 모든 문제와 피드백을 수정하고 싶지만 개발자는 이 소프트웨어를 지원하기 위한 리소스가 제한적일 수 있습니다. 연구 발표는 불안정할 수 있으며 Oxford Nanopore Technologies에 의해 빠르게 반복될 수 있습니다.
@software{bonito,
title = {Bonito: A PyTorch Basecaller for Oxford Nanopore Reads},
author = {{Chris Seymour, Oxford Nanopore Technologies Ltd.}},
year = {2019},
url = {https://github.com/nanoporetech/bonito},
note = {Oxford Nanopore Technologies, Ltd. Public License, v. 1.0},
abstract = {Bonito is an open source research basecaller for Oxford Nanopore reads. It provides a flexible platform for training and developing basecalling models using PyTorch.}
}