A Long Short Term Memory (LSTM) is a neural network architecture that contains recurrent NN blocks that can remember a value for an arbitrary length of time.

An LSTM has the following core components (not present in RNNs):

  1. Forget gate-which allows the LSTM to forget its past state or remember some elements of it
  2. Input gate- this gate decides what part of the new input arriving at the current step should be allowed to influence the cell's state
  3. Output gate-this gate determines what part of the cell's output should be allowed to flow out-typically to be consumed as a prediction A "cell" is a word used interchangeably for an individual LSTM.