Bachelor's Thesis

Tool for demultiplexing nanopore signals from POD5 files

Final Thesis 10.87 MB Appendix 24.13 MB

Author of thesis: Nikola Čechová

Acad. year: 2025/2026

Supervisor: Ing. Markéta Jakubíčková, Ph.D.

Reviewer: Ing. Kateřina Šabatová

Abstract:

This thesis deals with the design and implementation of a tool for demultiplexing raw signals from nanopore sequencing. The theoretical part introduces the reader to the development of sequencing technologies and describes the operating principles of Oxford Nanopore Technologies sequencing platforms. It then focuses on the analysis of data formats, with emphasis on the POD5 format specifications. The practical part is devoted
to requirements analysis, algorithm design, and its final implementation as an installable Python package. The resulting tool uses demultiplexed basecalled data to retroactively split raw sequencing data according to barcodes. It supports BAM, SAM and FASTQ input formats, processes data in parallel across multiple CPU cores, and is compatible with Linux, macOS and Windows operating systems. A user manual and a sample dataset for testing are also included.

Keywords:

nanopore sequencing, Oxford Nanopore Technologies, POD5, demultiplexing, basecalling

Date of defence

17.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaBznamka

Grading

B

Process of defence

Studentka prezentovala výsledky své práce a komise byla seznámena s posudky. Ing. Šabatová položila otázku na zvolené nastavené priority podle vyhledávání barcodů. Doc. Kolářová položila otázku na problemtiku budoucí časové a prostorové náročnosti. Studentka obhájila bakalářskou práci a odpověděla na otázky členů komise a oponenta.

Language of thesis

Czech

Faculty

Department

Study programme

Biomedical Technology and Bioinformatics (BPC-BTB)

Composition of Committee

doc. Ing. Martin Rožánek, Ph.D. (předseda)
doc. Ing. Jana Kolářová, Ph.D. (místopředseda)
MUDr. Zuzana Nováková, Ph.D. (člen)
Ing. Kateřina Šabatová (člen)
Ing. Radovan Smíšek, Ph.D. (člen)
Ing. Vratislav Harabiš, Ph.D. (člen)

Studentka Nikola Čechová vypracovala bakalářskou práci zabývající se tvorbou nástroje pro demultiplexaci nanopórových signálů. Práce obsahuje od úvodu po závěr 47 stran a odkazuje se na 33 relevantních zdrojů. Teoretická část práce je dostatečná a relevantní k tématu.
Praktická část se věnuje návrhu a implementaci nástroje pro zpětnou demultiplexaci surových nanopórových signálů na základě informací obsažených v basecallovaných datech. Oceňuji zejména skutečnost, že výsledkem práce není pouze návrh algoritmu, ale plně funkční software distribuovaný formou instalovatelného balíčku s rozhraním příkazové řádky, dokumentací a ukázkovým datasetem. Pozitivně hodnotím také podporu operačních systémů Linux i Windows. Přestože studentka odvedla značné množství práce při vývoji nástroje, některé části textu by si zasloužily pečlivější zpracování a přehlednější popis implementace. Popis některých částí algoritmu je místy nejednoznačný a čtenář se v něm obtížně orientuje. K lepší srozumitelnosti nepřispívá ani schéma nástroje na obrázku 6.1, které podle mého názoru není zcela jednoznačné a mohlo být zpracováno přehledněji.
Funkčnost nástroje byla ověřena na reálných datech ze dvou sekvenačních platforem. Oceňuji rozsah provedeného testování i skutečnost, že byly hodnoceny různé konfigurace počtu vláken a vstupních dat. Na druhou stranu se domnívám, že kapitola věnovaná výkonnostnímu hodnocení byla pravděpodobně ovlivněna časovým tlakem při dokončování práce. Jednotlivé experimenty nejsou prováděny zcela konzistentně a některé úlohy byly testovány s rozdílným počtem opakování, což ztěžuje vzájemné porovnání výsledků.
Po formální stránce je práce na dobré úrovni, i když se v textu místy objevují neobratné formulace. Tyto nedostatky však zásadním způsobem nesnižují srozumitelnost práce.
Studentka na práci během semestru pracovala samostatně a v případě potřeby konzultovala řešenou problematiku. Zadání práce považuji za splněné, práci doporučuji k obhajobě a hodnotím ji stupněm B/86 bodů. Points proposed by supervisor: 86

Grade proposed by supervisor: B

Reviewer’s report
Ing. Kateřina Šabatová

Předložená bakalářská práce se věnuje demultiplexaci dat ve formátu POD5. Literární rešerše se zaměřuje na sekvenování pomocí technologie společnosti Oxford Nanopore Technologies (ONT), přehled používaných datových formátů a způsoby předzpracování ONT dat. Tato část je zpracována zdařile, nicméně je nutné vytknout způsob uvádění literárních zdrojů, které jsou ve většině případů uváděny až za celými odstavci. Seznam literatury navíc není řazen ani podle pořadí výskytu v textu, ani abecedně podle autorů.
Nejproblematičtější částí práce jsou kapitoly 5 a 6, které popisují návrh a implementaci nástroje pro demultiplexaci dat. V těchto kapitolách je čtenář často ztracen, neboť popis jednotlivých kroků je roztříštěn a vysvětlen na více místech textu. Tento problém je způsoben zejména rozdělením obsahu do kapitoly 5 (Návrh nástroje) a kapitoly 6 (Implementace nástroje), které do určité míry opakují stejné informace v různých úrovních detailu (viz např. obrázek 5.1 vs. obrázek 6.1). Práci by mohlo prospět sloučení těchto kapitol, které by odstranilo duplicity v popisu postupů, problémů i jejich řešení.
Obrázek 6.1, který představuje logiku celého nástroje, je nestandardní a značně matoucí. Průběh algoritmu z něj není zřejmý, některé bloky nejsou vhodně propojeny a jednotlivé části algoritmu nejsou rozpracovány do stejné úrovně detailu. Textová část navíc dostatečně nepomáhá objasnit význam vstupního parametru --bc.
Na druhou stranu je třeba vyzdvihnout, že nástroj pod5_demux je plně funkční, dobře zdokumentovaný a volně dostupný na GitHubu, včetně podrobného návodu k instalaci a použití. Součástí je rovněž vzorový dataset.
Studentka v práci dále zavádí řadu vlastních pojmů, které nejsou součástí standardní terminologie. Samotné použití vlastní terminologie není problematické, pokud jsou jednotlivé pojmy jasně definovány (např. sub-čtení, klasifikovaná basecallovaná data, mapa barkódů, mapování barkódů na signál v POD5 souborech, mapovací soubor atd.). Dále se objevují nepřesnosti v názvech diagramových bloků, kdy například označení „načtení mapy barkódů“ v obrázku 5.1 může evokovat práci s existujícím souborem, ačkoliv tento krok taková data naopak vytváří. Obdobně jsou nepřesné i názvy některých kapitol – například kapitola 5.1 „Analýza vstupních dat“ není zcela výstižně pojmenována, neboť se fakticky zabývá testováním dostupných nástrojů pro práci s různými datovými formáty, a kapitola 7.3 „Výkonnost nástroje“ ve skutečnosti představuje analýzu časové náročnosti programu.
Závěrečná kapitola testuje nástroj na dvou reálných datasetech a diskutuje dosažené výsledky. Datasety jsou adekvátně a detailně popsány, stejně jako výsledky úspěšnosti demultiplexace POD5 souborů. V práci však chybí popis hardwarového prostředí, na kterém bylo testování prováděno. Problematická je také část věnovaná časové náročnosti programu. Přestože si studentka stanovila cíl analyzovat závislost doby běhu na počtu vláken, režimu spuštění a použitém datasetu, samotná metodika měření není dostatečně robustní. Počet opakování měření je nejednotný (v některých případech tři běhy, jindy pouze jeden) a výsledky vykazují vysokou variabilitu (např. v tabulce 7.4 je uveden čas načtení mapy 56 ± 50 s). Za těchto podmínek nelze činit spolehlivé závěry o vlivu jednotlivých parametrů na výkon, ani kvantifikovat zrychlení či zpomalení procesu.
Z formálního hlediska je práce na dobré úrovni, avšak se objevuje nekonzistentní způsob typografického zvýrazňování anglických termínů a rovněž nejednotný styl označování použitých nástrojů a programových prvků.
Celkově práci shledávám jako velmi prakticky zaměřenou, kde byl kladen velký důraz na výsledný nástroj pod5_demux, avšak obdobná pozornost nebyla věnována jeho popisu v textu práce ani analýze časové náročnosti. Přesto zadání práce považuji za zcela splněné, práci doporučuji k obhajobě a hodnotím ji stupněm C (78 bodů). Topics for thesis defence:
  1. V práci používáte pro spojování POD5 souborů knihovnu pod5 a příkaz pod5 merge. Zkoušela jste pro demultiplexaci POD5 souborů použít příkazy pod5 filter a pod5 subset z knihovny pod5, které umí provést to samé jako Váš blok pro „rozdělení POD5 souborů“?
  2. Vzhledem k nekonzistentním výsledkům měření doby běhu programu, jak by bylo možné jinak ohodnotit jeho časovou a prostorovou náročnost?
Points proposed by reviewer: 78

Grade proposed by reviewer: C

Responsibility: Mgr. et Mgr. Hana Odstrčilová