DMelt:AI/4 Recurrent NN and LSTM

From HandWiki
Limitted access. First login to DataMelt if you are a full DataMelt member. Then login to HandWiki as a user.


Recurrent Neural Networks (RNN) and LSTM

A recurrent neural network (RNN) is an artificial neural network where connections between nodes form a directed graph along a sequence., which allows for dynamic temporal behavior for a time sequence. See Recurrent neural network article. Long_short-term memory networks (LSTM) are a building unit for layers of a recurrent neural network (RNN).

Recurrent Neural Networks and Long Short-Term Memory Networks (LSTM) are included using recunn/ recunn/ Java library under the MIT license. Recurrent networks and their popular type, LSTM, are artificial neural network designed to recognize patterns in sequences of data, such as text, sequences, handwriting, the spoken words, or numerical times series.

Here is a demo that reads sentences from Paul Graham's essays, encoding Paul Graham's knowledge into the weights of the Recurrent Networks. The long-term goal of the project then is to generate startup wisdom at will. Feel free to train on whatever data you wish, and to experiment with the parameters. If you want more impressive models you have to increase the sizes of hidden layers, and maybe slightly the letter vectors.

The above example is based on JavaScript library http://cs.stanford.edu/people/karpathy/recurrentjs/