/// <summary>
 /// Creates a network with cellsParameters.Length (if only cellsParameters is given else 1) lstm cell in each layer
 /// and the number of layers equal to the size of the input sequence of vectors.
 /// All sequence is returned
 /// </summary>
 /// <param name="lengthOfInput">Length of input vector</param>
 /// <param name="lengthOfOutput">Length of output vector</param>
 /// <param name="cellsParameters"></param>
 public Lstm(int lengthOfInput, int lengthOfOutput, RecurentParameters parameters, params RecurentCellParameters[] cellsParameters)
 {
     CheckDataOnError(lengthOfInput, lengthOfOutput, cellsParameters);
     LengthOfInput       = lengthOfInput;
     LengthOfOutput      = lengthOfOutput;
     ReturnFullSequences = true;
     LayerCountEqualsLengthOfInputSequence = true;
     Parameters      = parameters;
     CellsParameters = cellsParameters;
     InitCellsParametersIfNotExist();
     InitializeElementOfLstmAndGates();
 }
 public Lstm(RecurentParameters parameters)
 {
 }