Bonito هو قاعدة بيانات بحثية مفتوحة المصدر لقراءات Oxford Nanopore.
لأي شيء آخر غير تدريب قاعدة المتصلين أو تطوير الطريقة، يرجى استخدام دورادو.
$ 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
يمنع إدراجه على أنه تبعية عادية.
سيساعد تعيين 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
) .(ج) 2019 شركة أكسفورد نانوبور تكنولوجيز المحدودة.
يتم توزيع Bonito بموجب شروط الترخيص العام لشركة Oxford Nanopore Technologies, Ltd.، الإصدار 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.}
}