<p>The question of folding of RNA sequences looks slightly similar to protein folding - perhaps searching in this domain might bring more suggestions. </p>

<p>An example of (current) state of the art of deep learning approach to protein folding is <a href="https://deepmind.com/blog/alphafold/" rel="nofollow noreferrer">AlphaFold</a> developed by DeepMind for <a href="http://predictioncenter.org" rel="nofollow noreferrer">CASP</a> competition . They basically decompose the angles to an image representation and look for structures in the proximity of each atom. While it requires a <strong>significant</strong> processing power, RNA structures might be easier due to the size of the sequence.</p>

CC BY-SA 4.0
2019-06-15T13:38:43.620Z
2019-06-15T13:38:43.620Z
ellimilial
<p>I come from a protein background and this problem is analogous to protein torsion angle prediction, which in turn is a variant of protein secondary structure prediction.</p>

<p>Conventional ways to go here would be to use a sliding window of <em>x</em> bases either side to make a prediction for each point, or use a CNN/LSTM-type model to run over the whole sequence and output angles.</p>

<p>There are other technical concerns such as how to split the training and test sets, how to output the angles from the model (usually transformed by sin or cos), and whether to predict a single value or the probability of the value being in certain ranges.</p>

<p>The reference to protein tertiary prediction and CASP in another answer isn't directly relevant here unless you intend to build 3D models from your torsion angles, which you might very well do.</p>

<p>Some references on torsion angle prediction for proteins:</p>

<ul>
<li><a href="https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-017-1834-2" rel="nofollow noreferrer">A recent review</a>.</li>
<li><a href="https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-018-2065-x" rel="nofollow noreferrer">A recent state of the art method</a>.</li>
<li><a href="https://www.sciencedirect.com/science/article/pii/S0022283699930917?via%3Dihub" rel="nofollow noreferrer">A classic paper describing some of the approaches</a>.</li>
</ul>

CC BY-SA 4.0
2019-06-20T10:46:31.423Z
Thanks for your post and highlighting your work. Could you clarify that CNN is convolution neural network and when do you use it as opposed to LHTM?
M__
CC BY-SA 4.0
2019-06-20T11:22:04.403Z
Correct, CNN is convolutional neural network and LSTM is long short-term memory, a variant of recurrent neural networks (RNNs). LSTMs would typically be used for sequential data, where you aim to predict a property for each point in the sequence or predict the next point in the sequence.

CNNs apply the same filters to every point in the sequence and rely more on picking up local features than treating the input as a sequence. They are usually applied to images (2D) but can be 1D, 2D, or 3D (etc.) as required.
jgreener
CC BY-SA 4.0
2019-06-20T11:39:51.303Z
LSTM, even I know this acroynm. Many thanks that finally makes  sense in context to how CNNs operate in this field and more generally. We're using your (DJ's) stuff, it always nice to know how it works :) . For the OP getting deep learning to work isn't always trivial, this team is expert.
M__
CC BY-SA 4.0
2019-06-20T09:49:24.467Z
2019-06-20T11:16:45.377Z
2019-06-20T11:16:45.377Z
jgreener
<p>I think the solution is more in the DL.</p>

<p>I would look at simpler ML, using a random forest as a starting point and then maybe SVC. If you get some reasonable predictive power on this then move towards neural network/Tensorflow type calculation.</p>

CC BY-SA 4.0
2019-06-15T16:27:42.537Z
2019-06-15T16:27:42.537Z
M__
<p>Currently I'm working on a project, which combines deep learning with RNA sequences. I'll try to predict pseudotorsion angles [1] from raw rna sequence. The ideas is to train a neural network with raw rna sequences and for each nucleotide their corresponding pseudotorsion angles, and than to predict the angles of the remaining sequences in the test set.</p>

<p>How my data is structured:
example:</p>

<pre><code>seq1:   A  C  G    G   U   A   C
Eta:   169 87 110 87  45  187 78
Theta: 123 10 45  168 132 34  100 
</code></pre>

<p>[1] These are angles describing the backbone conformation of a rna molecule.</p>

<p>I'm pretty new to the field of deep learning, and so far I build a simple feedforward neural network, but it's prediction accuracy is pretty low with only one percent. </p>

<p>Has anyone some tips for me how to improve this? 
How do I preprocess this kind of data correctly for deep learning?</p>

<p>I appreciate any help.</p>

CC BY-SA 4.0
2019-06-16T11:04:03.333Z
Note that RNA has over 110 known modifications, most of which can't be detected using existing automated sequencing tools. These would probably influence the structure of the molecule, and reduce the accuracy of your prediction.
gringer
<python><sequence-analysis><rna><machine-learning>
Deep learning RNA sequences
# Deep learning RNA sequences

(Asked by: username_0 on 2019-06-15)

Currently I'm working on a project, which combines deep learning with RNA sequences. I'll try to predict pseudotorsion angles [1] from raw rna sequence. The ideas is to train a neural network with raw rna sequences and for each nucleotide their corresponding pseudotorsion angles, and than to predict the angles of the remaining sequences in the test set.
How my data is structured:
example:
seq1:   A  C  G    G   U   A   C
Eta:   169 87 110 87  45  187 78
Theta: 123 10 45  168 132 34  100 

[1] These are angles describing the backbone conformation of a rna molecule.
I'm pretty new to the field of deep learning, and so far I build a simple feedforward neural network, but it's prediction accuracy is pretty low with only one percent. 
Has anyone some tips for me how to improve this? 
How do I preprocess this kind of data correctly for deep learning?
I appreciate any help.

**Tags:** python, sequence-analysis, rna, machine-learning
> **Comments:**
> **username_1**: Note that RNA has over 110 known modifications, most of which can't be detected using existing automated sequencing tools. These would probably influence the structure of the molecule, and reduce the accuracy of your prediction.  

---

## 3 answers

### Answer by username_2 on 2019-06-15. Score: 2

The question of folding of RNA sequences looks slightly similar to protein folding - perhaps searching in this domain might bring more suggestions.

An example of (current) state of the art of deep learning approach to protein folding is [AlphaFold](https://deepmind.com/blog/alphafold/) developed by DeepMind for [CASP](http://predictioncenter.org) competition . They basically decompose the angles to an image representation and look for structures in the proximity of each atom. While it requires a **significant** processing power, RNA structures might be easier due to the size of the sequence.


---

### Answer by username_3 on 2019-06-20. Score: 2

I come from a protein background and this problem is analogous to protein torsion angle prediction, which in turn is a variant of protein secondary structure prediction.

Conventional ways to go here would be to use a sliding window of *x* bases either side to make a prediction for each point, or use a CNN/LSTM-type model to run over the whole sequence and output angles.

There are other technical concerns such as how to split the training and test sets, how to output the angles from the model (usually transformed by sin or cos), and whether to predict a single value or the probability of the value being in certain ranges.

The reference to protein tertiary prediction and CASP in another answer isn't directly relevant here unless you intend to build 3D models from your torsion angles, which you might very well do.

Some references on torsion angle prediction for proteins:

* [A recent review](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-017-1834-2).
* [A recent state of the art method](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-018-2065-x).
* [A classic paper describing some of the approaches](https://www.sciencedirect.com/science/article/pii/S0022283699930917?via%3Dihub).

> **Comments:**
> **username_4**: Thanks for your post and highlighting your work. Could you clarify that CNN is convolution neural network and when do you use it as opposed to LHTM?  
> **username_3**: Correct, CNN is convolutional neural network and LSTM is long short-term memory, a variant of recurrent neural networks (RNNs). LSTMs would typically be used for sequential data, where you aim to predict a property for each point in the sequence or predict the next point in the sequence.  CNNs apply the same filters to every point in the sequence and rely more on picking up local features than treating the input as a sequence. They are usually applied to images (2D) but can be 1D, 2D, or 3D (etc.) as required.  
> **username_4**: LSTM, even I know this acroynm. Many thanks that finally makes  sense in context to how CNNs operate in this field and more generally. We're using your (DJ's) stuff, it always nice to know how it works :) . For the OP getting deep learning to work isn't always trivial, this team is expert.  

---

### Answer by username_4 on 2019-06-15. Score: 0

I think the solution is more in the DL.

I would look at simpler ML, using a random forest as a starting point and then maybe SVC. If you get some reasonable predictive power on this then move towards neural network/Tensorflow type calculation.


---

