Bonito เป็นผู้เรียกการวิจัยแบบโอเพ่นซอร์สสำหรับการอ่าน Oxford Nanopore
สำหรับสิ่งอื่นนอกเหนือจากการฝึกอบรม basecaller หรือการพัฒนาวิธีการ โปรดใช้ dorado
$ pip install --upgrade pip
$ pip install ont-bonito
$ bonito basecaller [email protected] /data/reads > basecalls.bam
Bonito รองรับการเขียน aligned/unaligned {fastq, sam, bam, cram}
$ bonito basecaller [email protected] --reference reference.mmi /data/reads > basecalls.bam
Bonito จะดาวน์โหลดและแคชโมเดล basecalling โดยอัตโนมัติในการใช้งานครั้งแรก แต่ทุกรุ่นสามารถดาวน์โหลดได้ด้วย -
$ 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
สายการฝึกอบรมทั้งหมดใช้ Automatic Mixed Precision เพื่อเร่งการฝึกอบรม หากต้องการปิดใช้งาน ให้ตั้งค่าสถานะ --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
)(ค) 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.}
}