ESPnet3 esp2_asr model

Packed model bundle generated from egs3/librispeech_100/esp2_asr.

Model

  • Repository: YuCeong-May/Conformer-CTC
  • Recipe: egs3/librispeech_100/esp2_asr
  • Corpus: librispeech_100
  • System: esp2_asr
  • Created: 2026-10-22T11:26:32

Model summary

  • Class: ESPnetASRModel
  • Total parameters: 31,725,448
  • Learnable parameters: 31,725,448 (100.0%)
  • Non-trainable parameters: 0
  • Parameter size: 126.9 MB
  • Buffers: 29,954 (120.53 KB)
  • Modules: 550 total, 450 leaf
  • DType composition: torch.float32(100.1%), torch.float64(0.0%), torch.int64(0.0%)

Inference

Use the original recipe's inference configuration to build its backend and run the infer stage. This archive contains the checkpoint and configuration artifacts; model construction and result formatting are defined by the recipe.

Packaging

  • Bundle: model_pack
  • Exp dir: ./exp/training_conformer_ctc
  • Strategy: copy experiment outputs; include extra recipe assets; register named artifact files; apply exclude filters

Results

dataset CER WER
dev-clean 4.43 10.45
dev-other 12.49 23.95
test-clean 4.53 10.72
test-other 12.94 25.18

Training config

expand
num_device: 1
num_nodes: 1
task: espnet3.systems.esp2_asr.task.ASRTask
recipe_dir: .
data_dir: ./data
exp_tag: training_conformer_ctc
exp_dir: ./exp/training_conformer_ctc
stats_dir: ./exp/stats
dataset_dir: /path/to/your/dataset
create_dataset:
  func: src.creating_dataset.create_dataset
  dataset_dir: /path/to/your/dataset
  recipe_dir: .
dataset:
  _target_: espnet3.components.data.data_organizer.DataOrganizer
  _recursive_: false
  recipe_dir: .
  train:
  - data_src_args:
      split: train-clean-100
  valid:
  - data_src_args:
      split: dev-clean
  - data_src_args:
      split: dev-other
  test: null
  preprocessor:
    _target_: espnet2.train.preprocessor.CommonPreprocessor
    train: true
    token_type: bpe
    token_list: ./data/bpe_5000/tokens.txt
    bpemodel: ./data/bpe_5000/bpe.model
    text_cleaner: null
    fs: 16000
    data_aug_prob: 0.667
    data_aug_effects:
    - - 0.5
      - speed_perturb
      - factor: 0.9
    - - 0.5
      - speed_perturb
      - factor: 1.1
    _convert_: all
  _convert_: all
tokenizer:
  vocab_size: 5000
  character_coverage: 1.0
  model_type: bpe
  save_path: ./data/bpe_5000
  text_builder:
    func: src.tokenizer.gather_training_text
    recipe_dir: .
    split: train-clean-100
model:
  vocab_size: 5000
  token_list: ./data/bpe_5000/tokens.txt
  encoder: conformer
  encoder_conf:
    output_size: 256
    attention_heads: 4
    linear_units: 1024
    num_blocks: 18
    dropout_rate: 0.1
    positional_dropout_rate: 0.1
    attention_dropout_rate: 0.1
    input_layer: conv2d
    normalize_before: true
    macaron_style: true
    rel_pos_type: latest
    pos_enc_layer_type: rel_pos
    selfattention_layer_type: rel_selfattn
    activation_type: swish
    use_cnn_module: true
    cnn_module_kernel: 31
  model_conf:
    ctc_weight: 1.0
    lsm_weight: 0.1
    length_normalized_loss: false
  normalize: global_mvn
  normalize_conf:
    stats_file: ./exp/stats/train/feats_stats.npz
  frontend: default
  frontend_conf:
    n_fft: 512
    win_length: 400
    hop_length: 160
  specaug: specaug
  specaug_conf:
    apply_time_warp: true
    time_warp_window: 5
    time_warp_mode: bicubic
    apply_freq_mask: true
    freq_mask_width_range:
    - 0
    - 27
    num_freq_mask: 2
    apply_time_mask: true
    time_mask_width_ratio_range:
    - 0.0
    - 0.05
    num_time_mask: 5
optimizer:
  _target_: torch.optim.Adam
  lr: 0.002
  weight_decay: 1.0e-06
  _convert_: all
scheduler:
  _target_: espnet2.schedulers.warmup_lr.WarmupLR
  warmup_steps: 15000
  _convert_: all
scheduler_interval: step
scheduler_monitor: null
best_model_criterion:
- - valid/cer_ctc
  - 10
  - min
seed: null
init: null
parallel:
  env: local
  n_workers: 1
  allow_overwrite_lock: false
collect_stats_batch_size: 4
collect_stats_train_mode: false
dataloader:
  collate_fn:
    _target_: espnet2.train.collate_fn.CommonCollateFn
    int_pad_value: -1
    _convert_: all
  train:
    batch_distribution: per_gpu
    total_shards: 1
    dist_world_size: 1
    iter_factory:
      _target_: espnet2.iterators.sequence_iter_factory.SequenceIterFactory
      shuffle: true
      collate_fn:
        _target_: espnet2.train.collate_fn.CommonCollateFn
        int_pad_value: -1
        _convert_: all
      batches:
        type: numel
        shape_files:
        - ./exp/stats/train/feats_shape
        batch_size: 16
        batch_bins: 4000000
      num_workers: 4
      _convert_: all
  valid:
    batch_distribution: per_gpu
    total_shards: 1
    dist_world_size: 1
    iter_factory:
      _target_: espnet2.iterators.sequence_iter_factory.SequenceIterFactory
      shuffle: false
      collate_fn:
        _target_: espnet2.train.collate_fn.CommonCollateFn
        int_pad_value: -1
        _convert_: all
      batches:
        type: numel
        shape_files:
        - ./exp/stats/valid/feats_shape
        batch_size: 16
        batch_bins: 4000000
      _convert_: all
trainer:
  accelerator: auto
  devices: 1
  num_nodes: 1
  accumulate_grad_batches: 4
  check_val_every_n_epoch: 1
  gradient_clip_val: 5.0
  log_every_n_steps: 100
  max_epochs: 180
  logger:
  - _target_: lightning.pytorch.loggers.TensorBoardLogger
    save_dir: ./exp/training_conformer_ctc/tensorboard
    name: tb_logger
    _convert_: all
  strategy: auto
  precision: bf16-mixed
fit: {}

Citing ESPnet

@inproceedings{watanabe2018espnet,
  author={Shinji Watanabe and Takaaki Hori and Shigeki Karita and Tomoki Hayashi and
    Jiro Nishitoba and Yuya Unno and Nelson Yalta and Jahn Heymann and Matthew Wiesner
    and Nanxin Chen and Adithya Renduchintala and Tsubasa Ochiai},
  title={{ESPnet}: End-to-End Speech Processing Toolkit},
  year={2018},
  booktitle={Proceedings of Interspeech},
  pages={2207--2211},
  doi={10.21437/Interspeech.2018-1456}
}
Downloads last month
1
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support