parameters: (self, inputs, state, scope=None)
docstring: Long short-term memory cell (LSTM).
docstring_summary: Long short-term memory cell (LSTM).
docstring_tokens: Long short - term memory cell ( LSTM ) .
function: def __call__(self, inputs, state, scope=None):
      """Long short-term memory cell (LSTM)."""
      with vs.variable_scope(scope or type(self).__name__):  # "BasicLSTMCell"
        # Parameters of gates are concatenated into one multiply for efficiency.
        if self._state_is_tuple:
          c, h = state
        else:
          c, h = array_ops.split(1, 2, state)
        concat = _linear([inputs, h], 4 * self._num_units, True)
  
        # i = input_gate, j = new_input, f = forget_gate, o = output_gate
        i, j, f, o = array_ops.split(1, 4, concat)
  
        new_c = (c * sigmoid(f + self._forget_bias) + sigmoid(i) *
                 self._activation(j))
        new_h = self._activation(new_c) * sigmoid(o)
  
        if self._state_is_tuple:
          new_state = LSTMStateTuple(new_c, new_h)
        else:
          new_state = array_ops.concat(1, [new_c, new_h])
        return new_h, new_state
function_tokens: def __call__ ( self , inputs , state , scope = None ) : with vs . variable_scope ( scope or type ( self ) . __name__ ) : # "BasicLSTMCell" # Parameters of gates are concatenated into one multiply for efficiency. if self . _state_is_tuple : c , h = state else : c , h = array_ops . split ( 1 , 2 , state ) concat = _linear ( [ inputs , h ] , 4 * self . _num_units , True ) # i = input_gate, j = new_input, f = forget_gate, o = output_gate i , j , f , o = array_ops . split ( 1 , 4 , concat ) new_c = ( c * sigmoid ( f + self . _forget_bias ) + sigmoid ( i ) * self . _activation ( j ) ) new_h = self . _activation ( new_c ) * sigmoid ( o ) if self . _state_is_tuple : new_state = LSTMStateTuple ( new_c , new_h ) else : new_state = array_ops . concat ( 1 , [ new_c , new_h ] ) return new_h , new_state