Cargando…
LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search
MOTIVATION: Predicting the secondary structure of an ribonucleic acid (RNA) sequence is useful in many applications. Existing algorithms [based on dynamic programming] suffer from a major limitation: their runtimes scale cubically with the RNA length, and this slowness limits their use in genome-wid...
Autores principales: | , , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Oxford University Press
2019
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6681470/ https://www.ncbi.nlm.nih.gov/pubmed/31510672 http://dx.doi.org/10.1093/bioinformatics/btz375 |
_version_ | 1783441735127400448 |
---|---|
author | Huang, Liang Zhang, He Deng, Dezhong Zhao, Kai Liu, Kaibo Hendrix, David A Mathews, David H |
author_facet | Huang, Liang Zhang, He Deng, Dezhong Zhao, Kai Liu, Kaibo Hendrix, David A Mathews, David H |
author_sort | Huang, Liang |
collection | PubMed |
description | MOTIVATION: Predicting the secondary structure of an ribonucleic acid (RNA) sequence is useful in many applications. Existing algorithms [based on dynamic programming] suffer from a major limitation: their runtimes scale cubically with the RNA length, and this slowness limits their use in genome-wide applications. RESULTS: We present a novel alternative O(n(3))-time dynamic programming algorithm for RNA folding that is amenable to heuristics that make it run in O(n) time and O(n) space, while producing a high-quality approximation to the optimal solution. Inspired by incremental parsing for context-free grammars in computational linguistics, our alternative dynamic programming algorithm scans the sequence in a left-to-right (5′-to-3′) direction rather than in a bottom-up fashion, which allows us to employ the effective beam pruning heuristic. Our work, though inexact, is the first RNA folding algorithm to achieve linear runtime (and linear space) without imposing constraints on the output structure. Surprisingly, our approximate search results in even higher overall accuracy on a diverse database of sequences with known structures. More interestingly, it leads to significantly more accurate predictions on the longest sequence families in that database (16S and 23S Ribosomal RNAs), as well as improved accuracies for long-range base pairs (500+ nucleotides apart), both of which are well known to be challenging for the current models. AVAILABILITY AND IMPLEMENTATION: Our source code is available at https://github.com/LinearFold/LinearFold, and our webserver is at http://linearfold.org (sequence limit: 100 000nt). SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online. |
format | Online Article Text |
id | pubmed-6681470 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2019 |
publisher | Oxford University Press |
record_format | MEDLINE/PubMed |
spelling | pubmed-66814702019-08-07 LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search Huang, Liang Zhang, He Deng, Dezhong Zhao, Kai Liu, Kaibo Hendrix, David A Mathews, David H Bioinformatics Ismb/Eccb 2019 Conference Proceedings MOTIVATION: Predicting the secondary structure of an ribonucleic acid (RNA) sequence is useful in many applications. Existing algorithms [based on dynamic programming] suffer from a major limitation: their runtimes scale cubically with the RNA length, and this slowness limits their use in genome-wide applications. RESULTS: We present a novel alternative O(n(3))-time dynamic programming algorithm for RNA folding that is amenable to heuristics that make it run in O(n) time and O(n) space, while producing a high-quality approximation to the optimal solution. Inspired by incremental parsing for context-free grammars in computational linguistics, our alternative dynamic programming algorithm scans the sequence in a left-to-right (5′-to-3′) direction rather than in a bottom-up fashion, which allows us to employ the effective beam pruning heuristic. Our work, though inexact, is the first RNA folding algorithm to achieve linear runtime (and linear space) without imposing constraints on the output structure. Surprisingly, our approximate search results in even higher overall accuracy on a diverse database of sequences with known structures. More interestingly, it leads to significantly more accurate predictions on the longest sequence families in that database (16S and 23S Ribosomal RNAs), as well as improved accuracies for long-range base pairs (500+ nucleotides apart), both of which are well known to be challenging for the current models. AVAILABILITY AND IMPLEMENTATION: Our source code is available at https://github.com/LinearFold/LinearFold, and our webserver is at http://linearfold.org (sequence limit: 100 000nt). SUPPLEMENTARY INFORMATION: Supplementary data are available at Bioinformatics online. Oxford University Press 2019-07 2019-07-05 /pmc/articles/PMC6681470/ /pubmed/31510672 http://dx.doi.org/10.1093/bioinformatics/btz375 Text en © The Author(s) 2019. Published by Oxford University Press. http://creativecommons.org/licenses/by-nc/4.0/ This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License (http://creativecommons.org/licenses/by-nc/4.0/), which permits non-commercial re-use, distribution, and reproduction in any medium, provided the original work is properly cited. For commercial re-use, please contact journals.permissions@oup.com |
spellingShingle | Ismb/Eccb 2019 Conference Proceedings Huang, Liang Zhang, He Deng, Dezhong Zhao, Kai Liu, Kaibo Hendrix, David A Mathews, David H LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search |
title | LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search |
title_full | LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search |
title_fullStr | LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search |
title_full_unstemmed | LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search |
title_short | LinearFold: linear-time approximate RNA folding by 5'-to-3' dynamic programming and beam search |
title_sort | linearfold: linear-time approximate rna folding by 5'-to-3' dynamic programming and beam search |
topic | Ismb/Eccb 2019 Conference Proceedings |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6681470/ https://www.ncbi.nlm.nih.gov/pubmed/31510672 http://dx.doi.org/10.1093/bioinformatics/btz375 |
work_keys_str_mv | AT huangliang linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch AT zhanghe linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch AT dengdezhong linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch AT zhaokai linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch AT liukaibo linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch AT hendrixdavida linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch AT mathewsdavidh linearfoldlineartimeapproximaternafoldingby5to3dynamicprogrammingandbeamsearch |