INGOT-DR: An Interpretable Classifier for Predicting Drug Resistance in M. Tuberculosis

Peer reviewed: 
Yes, item is peer reviewed.
Scholarly level: 
Final version published as: 

Zabeti, H., Dexter, N., Safari, A. H., Sedaghat, N., Libbrecht, M., & Chindelevitch, L. (2021). INGOT-DR: an interpretable classifier for predicting drug resistance in M. tuberculosis. Algorithms for Molecular Biology, 16(1), 17.

Date created: 
DOI: 10.1186/s13015-021-00198-1
Drug resistance
Interpretable machine learning
Group testing
Integer linear programming
Rule-based learning
Whole-genome sequencing


Prediction of drug resistance and identification of its mechanisms in bacteria such as Mycobacterium tuberculosis, the etiological agent of tuberculosis, is a challenging problem. Solving this problem requires a transparent, accurate, and flexible predictive model. The methods currently used for this purpose rarely satisfy all of these criteria. On the one hand, approaches based on testing strains against a catalogue of previously identified mutations often yield poor predictive performance; on the other hand, machine learning techniques typically have higher predictive accuracy, but often lack interpretability and may learn patterns that produce accurate predictions for the wrong reasons. Current interpretable methods may either exhibit a lower accuracy or lack the flexibility needed to generalize them to previously unseen data.


In this paper we propose a novel technique, inspired by group testing and Boolean compressed sensing, which yields highly accurate predictions, interpretable results, and is flexible enough to be optimized for various evaluation metrics at the same time.


We test the predictive accuracy of our approach on five first-line and seven second-line antibiotics used for treating tuberculosis. We find that it has a higher or comparable accuracy to that of commonly used machine learning models, and is able to identify variants in genes with previously reported association to drug resistance. Our method is intrinsically interpretable, and can be customized for different evaluation metrics. Our implementation is available at and can be installed via The Python Package Index (Pypi) under ingotdr. This package is also compatible with most of the tools in the Scikit-learn machine learning library.

Document type: