def get_params() -> AttributeDict:
    'Return a dict containing training parameters.\n\n    All training related parameters that are not passed from the commandline\n    is saved in the variable `params`.\n\n    Commandline options are merged into `params` after they are parsed, so\n    you can also access them via `params`.\n\n    Explanation of options saved in `params`:\n\n        - exp_dir: It specifies the directory where all training related\n                   files, e.g., checkpoints, log, etc, are saved\n\n        - lang_dir: It contains language related input files such as\n                    "lexicon.txt"\n\n        - lr: It specifies the initial learning rate\n\n        - feature_dim: The model input dim. It has to match the one used\n                       in computing features.\n\n        - weight_decay:  The weight_decay for the optimizer.\n\n        - subsampling_factor:  The subsampling factor for the model.\n\n        - best_train_loss: Best training loss so far. It is used to select\n                           the model that has the lowest training loss. It is\n                           updated during the training.\n\n        - best_valid_loss: Best validation loss so far. It is used to select\n                           the model that has the lowest validation loss. It is\n                           updated during the training.\n\n        - best_train_epoch: It is the epoch that has the best training loss.\n\n        - best_valid_epoch: It is the epoch that has the best validation loss.\n\n        - batch_idx_train: Used to writing statistics to tensorboard. It\n                           contains number of batches trained so far across\n                           epochs.\n\n        - log_interval:  Print training loss if batch_idx % log_interval` is 0\n\n        - reset_interval: Reset statistics if batch_idx % reset_interval is 0\n\n        - valid_interval:  Run validation if batch_idx % valid_interval` is 0\n\n        - beam_size: It is used in k2.ctc_loss\n\n        - reduction: It is used in k2.ctc_loss\n\n        - use_double_scores: It is used in k2.ctc_loss\n    '
    params = AttributeDict({'exp_dir': Path('tdnn_lstm_ctc/exp'), 'lang_dir': Path('data/lang_phone'), 'lr': 0.001, 'feature_dim': 80, 'weight_decay': 0.0005, 'subsampling_factor': 3, 'best_train_loss': float('inf'), 'best_valid_loss': float('inf'), 'best_train_epoch': (- 1), 'best_valid_epoch': (- 1), 'batch_idx_train': 0, 'log_interval': 10, 'reset_interval': 200, 'valid_interval': 1000, 'beam_size': 10, 'reduction': 'sum', 'use_double_scores': True, 'env_info': get_env_info()})
    return params
Return a dict containing training parameters.

All training related parameters that are not passed from the commandline
is saved in the variable `params`.

Commandline options are merged into `params` after they are parsed, so
you can also access them via `params`.

Explanation of options saved in `params`:

    - exp_dir: It specifies the directory where all training related
               files, e.g., checkpoints, log, etc, are saved

    - lang_dir: It contains language related input files such as
                "lexicon.txt"

    - lr: It specifies the initial learning rate

    - feature_dim: The model input dim. It has to match the one used
                   in computing features.

    - weight_decay:  The weight_decay for the optimizer.

    - subsampling_factor:  The subsampling factor for the model.

    - best_train_loss: Best training loss so far. It is used to select
                       the model that has the lowest training loss. It is
                       updated during the training.

    - best_valid_loss: Best validation loss so far. It is used to select
                       the model that has the lowest validation loss. It is
                       updated during the training.

    - best_train_epoch: It is the epoch that has the best training loss.

    - best_valid_epoch: It is the epoch that has the best validation loss.

    - batch_idx_train: Used to writing statistics to tensorboard. It
                       contains number of batches trained so far across
                       epochs.

    - log_interval:  Print training loss if batch_idx % log_interval` is 0

    - reset_interval: Reset statistics if batch_idx % reset_interval is 0

    - valid_interval:  Run validation if batch_idx % valid_interval` is 0

    - beam_size: It is used in k2.ctc_loss

    - reduction: It is used in k2.ctc_loss

    - use_double_scores: It is used in k2.ctc_loss
def get_params() -> AttributeDict:
    'Return a dict containing training parameters.\n\n    All training related parameters that are not passed from the commandline\n    is saved in the variable `params`.\n\n    Commandline options are merged into `params` after they are parsed, so\n    you can also access them via `params`.\n\n    Explanation of options saved in `params`:\n\n        - exp_dir: It specifies the directory where all training related\n                   files, e.g., checkpoints, log, etc, are saved\n\n        - lang_dir: It contains language related input files such as\n                    "lexicon.txt"\n\n        - lr: It specifies the initial learning rate\n\n        - feature_dim: The model input dim. It has to match the one used\n                       in computing features.\n\n        - weight_decay:  The weight_decay for the optimizer.\n\n        - subsampling_factor:  The subsampling factor for the model.\n\n        - best_train_loss: Best training loss so far. It is used to select\n                           the model that has the lowest training loss. It is\n                           updated during the training.\n\n        - best_valid_loss: Best validation loss so far. It is used to select\n                           the model that has the lowest validation loss. It is\n                           updated during the training.\n\n        - best_train_epoch: It is the epoch that has the best training loss.\n\n        - best_valid_epoch: It is the epoch that has the best validation loss.\n\n        - batch_idx_train: Used to writing statistics to tensorboard. It\n                           contains number of batches trained so far across\n                           epochs.\n\n        - log_interval:  Print training loss if batch_idx % log_interval` is 0\n\n        - reset_interval: Reset statistics if batch_idx % reset_interval is 0\n\n        - valid_interval:  Run validation if batch_idx % valid_interval` is 0\n\n        - beam_size: It is used in k2.ctc_loss\n\n        - reduction: It is used in k2.ctc_loss\n\n        - use_double_scores: It is used in k2.ctc_loss\n    '
    params = AttributeDict({'exp_dir': Path('tdnn_lstm_ctc/exp'), 'lang_dir': Path('data/lang_phone'), 'lr': 0.001, 'feature_dim': 80, 'weight_decay': 0.0005, 'subsampling_factor': 3, 'best_train_loss': float('inf'), 'best_valid_loss': float('inf'), 'best_train_epoch': (- 1), 'best_valid_epoch': (- 1), 'batch_idx_train': 0, 'log_interval': 10, 'reset_interval': 200, 'valid_interval': 1000, 'beam_size': 10, 'reduction': 'sum', 'use_double_scores': True, 'env_info': get_env_info()})
    return params