I'm a PhD student in genetics and molecular biology working on an algorithm to identify if a DNA sequence is either a transposable element (TE) or not a TE using convolutional neural networks, and it's already working kind of the way I'd like it to (of course I'm always trying to improve it).
The input is a FASTA file containing multiple DNA sequences. The algorithm analyses each sequence and returns if it is or not a TE, but here is the thing: not necessarily the whole sequence is a TE; in many cases, just a fragment (like a sub-string of the string) is a TE.
I'd like to know if there is a way to map the coordinates and/or return the fragment representing the TE. For me it seems kinda tricky because of all the sequence pre-processing of one hot encoding, flattening etc, and I don't know how the sequences of zeros and ones that the original became can return me what I want. Although I know some python and I'm studying machine learning and deep learning to know how it works, my area is biological sciences not computer science or something related.
Here I'll try to exemplify the described above.
Let's say I have these three sequences, the sub-string in lower case (just for the sake of the example, it'll not be like this) is the TE.
I'd like to have something like the following as the output:
ID Classification Coordinates Sequence
NAD4 TE 13:112 aggattgggattgtatgaagggttaaaattaatatttctataatattaatagaaaaaaagttgttaagatttttatttacgaagccatgttgagttctt
NAD4-V TE 20:91 aagataaggattgggattgtatgaagggttaaaattaatatttctataatattaatagaaaaaaagttgtt
STL-M NT NaN NaN
Am I asking too much from the neural network and I'll have to use some tool/custom script after the prediction to figure out the sequences and/or coordinates?