FELA · Genomics
DNA Promoter Screening
Setup
Reads DNA code and determines if a span is a switch that can turn genes on.
Pros
200kbp on your laptop · HIPAA compliance loves us - no API call
Usage
Screen a panel of real candidate regions at once or classify one you paste.
This is complicated!
It's an important problem to figure out how our genes get expressed, IE, how do they get enabled and disabled
and end up having their genetic code executed? Pointing at the promoters and regulatory switches in a genome
can often mean slow lab assays or heavy computations, run region by region painstakingly. A model this
small changes the economics fundamentally - one could score a candidate stretch of DNA in a
single quick pass, in a few seconds - meaning a long list of candidates can be scanned on a laptop and
the handful that are worth a closer look are found much faster. The panel on the right does
exactly that, a first pass triage of real candidate regions, live.
Honest vibe check: this is a demo, it
does not find genes, variants, cure anything, or replace lab
validation - but certainly can narrow what gets validated.
What am I even LOOKING at?
A DNA model that reads a stretch of raw nucleotides, represented by the
letters A, C, G and T, for their amino acid base pair names, one base at a time. It then decides whether it is a
promoter (the region just upstream of a gene where transcription
starts) or not a promoter. This is the human non TATA
promoters task from the public Genomic Benchmarks suite. The bars on
the right are the live probabilities the model assigns.
SOTA? But it's tiny?
We won't get tired of saying this. The bulk of the model is a Fourier Neural Operator: a learned
global convolution done in the frequency domain, with no all pairs
attention matrix. We emplace the same Linear Attention system we use on most FELA architectures with
constant memory footprint. One model call is a fixed full pass, about 2.7 seconds on a single CPU
core in the browser's scalar math. The speed comes from screening in parallel. Each
candidate runs on its own worker across your cores, so a whole panel
finishes in about the time of the slowest wave, not the sum. Repeat calls
are served from cache instantly. Because there is no attention matrix,
memory stays flat with length, so the same approach streams a whole
chromosome at a fixed RAM cost where a standard transformer would tap out.
How it compares to HyenaDNA
Same public GenomicBenchmarks tasks, top-1 test accuracy.
HyenaDNA is a widely used, state of the art, long range DNA model - with these published
performance numbers. Our model matches or beats it on half the tasks and stays close on
the rest, while being efficient enough to run on a laptop CPU.
| GenomicBenchmarks task | Our model | HyenaDNA | Δ |
| Human non-TATA promoters (the demo) | 96.8 | 96.6 | +0.2 |
| Coding vs intergenomic | 92.2 | 91.3 | +0.9 |
| Human enhancers (Ensembl) | 89.5 | 89.2 | +0.3 |
| Human or worm | 95.3 | 96.6 | -1.3 |
| Human OCR (Ensembl) | 78.3 | 80.9 | -2.6 |
| Human enhancers (Cohn) | 71.5 | 74.2 | -2.7 |
14.6M parameters
15 MB on disk (int8)
~180 ms per window, 1 CPU core
flat memory with length
Full card on Hugging Face ↗