How can a data stream for a RNN (LSTM) be handled, when the stream contains data sets belonging to different prediction classes?

Training phase: I have trained a LSTM to predict a class out of a sequence of Letters. For the training phase I used a fixed data array where the beginning an the ending of a sequence belonged to a class. Of course there is a little noise but the whole data set was labled with a class. E.g:

Seq.    is  Class
ABC     is  One
CBA     is  Two
ABD     is  Three

The network predicts well when it sees a static data array.

Problem in Prediction Phase: During prediction the LSTM will receive a data stream where there is a sequence off arrays but there is no delimiter. The data set can not be distinguished or separated. I am not sure how it would perform when I have a data stream for different classes like ABCABCCBAABD.

I guess in speech recognition one must face similiar problems.

  • $\begingroup$ u need to do some feature engineering possibly $\endgroup$
    – Dan D.
    Commented Feb 18, 2021 at 10:48

1 Answer 1


One thing I might add is not to expect the ML model to take care of everything, that is where ML engineering comes into play. One suggestion I have, without knowing much about your data stream, is that you need to implement a real-time data ingestion/pipeline, like Apache Kafka Stream (so similar implementation), where you can decompose your stream into output that your model was trained for. You could split by dictionary, pattern or whatever you need, then push the split output into another real-time stream that can be ingested by your model. Not a lot to go for, but hopefully it helps a little.

  • $\begingroup$ Hi, thanks. The quetion is still what method to use to decompose the signal. I was thinkig of some sort of convolution, but I have no idea yet how exactly it would help me. $\endgroup$
    – MScott
    Commented Jan 24, 2020 at 16:34

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .