def __init__(self, num_layers=2, num_hidden=200, vocab_size=10000,
                 batch_size=20, num_steps=35, num_epochs=10, learning_rate=1.0,
                 dropout=0.5, init_scale=0.05, max_grad_norm=5,
                 lr_decay=0.8):
        """Constructor.

        :param num_layers: number of LSTM layers
        :param num_hidden: number of LSTM units
        :param vocab_size: size of the vocabulary
        :param batch_size: size of each mini batch
        :param num_steps: number of unrolled steps of LSTM
        :param num_epochs: number of training epochs
        :param learning_rate: learning rate parameter
        :param dropout: probability of the dropout layer
        :param init_scale: initial scale of the weights
        :param max_grad_norm: maximum permissible norm of the gradient
        :param lr_decay: learning rate decay for each epoch after num_epochs/3
        """
        self.num_layers = num_layers
        self.num_hidden = num_hidden
        self.vocab_size = vocab_size
        self.batch_size = batch_size
        self.num_steps = num_steps
        self.num_epochs = num_epochs
        self.learning_rate = learning_rate
        self.dropout = dropout
        self.init_scale = init_scale
        self.max_grad_norm = max_grad_norm
        self.lr_decay = lr_decay

        self.initializer = tf.random_uniform_initializer(
            -self.init_scale, self.init_scale)
Constructor.

        :param num_layers: number of LSTM layers
        :param num_hidden: number of LSTM units
        :param vocab_size: size of the vocabulary
        :param batch_size: size of each mini batch
        :param num_steps: number of unrolled steps of LSTM
        :param num_epochs: number of training epochs
        :param learning_rate: learning rate parameter
        :param dropout: probability of the dropout layer
        :param init_scale: initial scale of the weights
        :param max_grad_norm: maximum permissible norm of the gradient
        :param lr_decay: learning rate decay for each epoch after num_epochs/3
        
yadlt/models/recurrent/lstm.py