Riboflow: Using Deep Learning to Classify Riboswitches With ∼99% Accuracy - Premkumar, Keshav Aditya R.; Bharanikumar, Ramit; Palaniappan, Ashok (Frontiers in Bioengineering and Biotechnology, 2020)
Riboswitches are cis-regulatory genetic elements that use an aptamer to control gene expression. Specificity to cognate ligand and diversity of such ligands have expanded the functional repetoire of riboswitches to mediate mounting apt responses to sudden metabolic demands and signal changes in environmental conditions. Given their critical role in microbial life, riboswitch characterisation remains a challenging computational problem. Here we have addressed the issue with advanced deep learning frameworks, namely convolutional neural networks (CNN), and bidirectional recurrent neural networks (RNN) with Long Short-Term Memory (LSTM). Using a comprehensive dataset of 32 ligand classes and a stratified train-validate-test approach, we demonstrated the accurate performance of both the deep-learning models (CNN and RNN) relative to conventional hyperparameter-optimised machine learning classifiers on all key performance metrics, including the ROC curve analysis. In particular, the bidirectional LSTM RNN emerged as the best-performing learning method for identifying the ligand-specificity of riboswitches with an accuracy > 0.99 and macro-averaged F-score of 0.96. An additional attraction is that the deep learning models do not require prior feature engineering. A dynamic update functionality is built into the models to factor for the constant discovery of new riboswitches, and extend the predictive modelling to new classes. Our work would enable the design of genetic circuits with custom-tuned riboswitch aptamers that would effect precise translational control in synthetic biology. The associated software is available as an open-source Python package and standalone resource for use in genome annotation, synthetic biology, and biotechnology workflows. Availability: PyPi package: riboflow @ https://pypi.org/project/riboflow Repository with Standalone suite of tools: https://github.com/RiboswitchClassifier Language: Python 3.6 with numpy, keras, and tensorflow libraries. Licence: MIT