Comparing Dorado polish to Clair3 for bacterial variant calling
If you use these results, please cite the paper they build on: Hall MB, et al. Benchmarking reveals superiority of deep learning variant callers on bacterial nanopore sequence data. eLife 13:RP98300 (2024). doi:10.7554/eLife.98300 TL;DR I reran our bacterial nanopore variant calling benchmark [1] with a couple of updated tools. I then compared the paper’s best caller, Clair3 [2] with ONT’s dorado polish. SNPs: Clair3, run in (default) diploid mode, with an allele frequency (AF) filter in place of --haploid_precise, had the highest median SNP F1 score at every depth with both read models. With sup reads its lead over Dorado grows from 25x up: at 50x it made 23 SNP errors over the 14 genomes, against Dorado’s 83. Clair3 with the paper’s settings vs Dorado: Dorado calls SNPs better at 5x and 10x, predominantly via improved recall. The two are level at 25x, and Clair3 is slightly ahead at 50x. Indels: Clair3 is better at nearly every depth. At 50x its median F1 is 0.990 against Dorado’s 0.978 for hac, and 0.995 against 0.990 for sup. Default filters: Dorado’s PASS filter lets too much through at low depth. Its QUAL scores sort good calls from bad well, so filtering on QUAL fixes most of this. Speed: Dorado takes about 5 seconds for a 50x bacterial genome on an H100 GPU. On CPU it takes about a minute, as Clair3 does, but needs about 10 GB of RAM. In practice, at 50x either tool will give you nearly the same SNPs, with fewer than ten errors per genome. If you want the best you can get, down to single SNPs, use Clair3 with the AF filter. ...