Salient

flodl-bio: First Rust data, transformers and model layer for entire deep learning on biological sequences

Sablok, G., de Stefanis, F.
10.64898/2026.10.21.760383 · was preprinted
method development code ↗ benchmarked
Surfaced because: open code, benchmarked against baselines.
relevance 0.41 openness 0.50 novelty 0.35

Abstract

Python ecosystem dominates the deep learning framework. flodl-bio is a Rust crate that extends flodl, a libtorch-backed deep-learning framework, with deep learning on biological sequences. To our knowledge, flodl-bio is the first Rust crate that provides a comprehensive and practical deep learning for the biological applications, which includes the alphabet-aware sequence encoding, including one-hot and k-mer representations, padded sequences, and channels-first batches. It also includes several FASTA parsing and graph construction utilities for adjacency matrices, GCN-normalised adjacency matrices, graph Laplacians, residue contact maps, and de Bruijn graphs. Among the added functionalities, it includes AUROC and AUPRC with their associated curves; classification metrics, and the export of learned convolutional filters as MEME motifs and seeded splits. Deep biological learning includes a multi-width motif CNN, a dilated residual CNN, bidirectional LSTM and GRU architectures, and transformer encoder. On the five human transcription-factor-binding datasets in the GUE benchmark, a motif CNN with approximately 10,000 parameters, trained from scratch, outperforms all published CNN baselines. It also superseded the 2.5-billion-parameter Nucleotide Transformer on two datasets and DNABERT-2 on one. Given a fixed hardware configuration and software stack, experiments are reproducible at the bit level. See Supplementary Table S2 of Supplementary Material. flodl-bio is written in Rust and released under the MIT licence at https://github.com/sablokg/flodl-bio. The core builds with stable Rust and has no dependencies. The model tier is enabled with the flodl Cargo feature (cuda for NVIDIA GPUs) and requires libtorch and Rust 1.91 or later. The evaluation harness is in the repository's experiments directory, and the complete run outputs are archived at https://doi.org/10.5281/zenodo.23321850

Lifecycle

Discussion

No qualifying discussion yet.