Search code examples
frameworksbidirectionallstmrecurrent-neural-network

Deep Learning Framework for RNN with bi-directional LSTM and CTC output layer


I hope you can help me. I was wondering if you could give me any hints which framework to use:

I am planning to set up a RNN with bidirectional LSTMs and a CTC output layer.

I have been working with Theano and Lasagne, but unfortunately there is no possibility of implementing a bi-directional LSTM with CTC out of the box.

Lasagne offers the possibiltiy of RNN: http://lasagne.readthedocs.io/en/latest/modules/layers/recurrent.html

And I also found an implementation of CTC: https://github.com/skaae/Lasagne-CTC

Would you try to do this with Theano and Lasagne? Or would you recommend a different framework.

Happy for all your feedback!


Solution

  • I have little experience of Lasagne. As far as I know, for the most welcomed open-sourced deep learning frameworks, such as Theano, Tensorflow, and those built upon them such as Keras, Lasagne, etc, there is no CTC layer integrated yet.

    Here I'd recommend you a fork of Keras maintained by me. It has a working CTC integrated, check here. Till now, the following train/test functions work well with CTC cost:

    • train_on_batch()
    • test_on_batch()
    • predict_on_batch()

    Besides of CTC, with this fork you can also build FCN(Fully Convolutional Network), CNN+LSTM combination. Hope this helps, and I'd be glad to hear your feedback.