|
--- |
|
tags: |
|
- espnet |
|
- audio |
|
- automatic-speech-recognition |
|
language: noinfo |
|
datasets: |
|
- speechcommands |
|
license: cc-by-4.0 |
|
--- |
|
|
|
## ESPnet2 ASR model |
|
|
|
### `pyf98/speechcommands_12commands_conformer` |
|
|
|
This model was trained by Yifan Peng using speechcommands recipe in [espnet](https://github.com/espnet/espnet/). |
|
|
|
### Demo: How to use in ESPnet2 |
|
|
|
```bash |
|
cd espnet |
|
git checkout bf523b70cae8300da004b41ec6a0d1b57c7ae8bb |
|
pip install -e . |
|
cd egs2/speechcommands/asr1 |
|
./run.sh --skip_data_prep false --skip_train true --download_model pyf98/speechcommands_12commands_conformer |
|
``` |
|
|
|
<!-- Generated by scripts/utils/show_asr_result.sh --> |
|
# RESULTS |
|
## Environments |
|
- date: `Fri Dec 24 21:53:37 EST 2021` |
|
- python version: `3.9.7 (default, Sep 16 2021, 13:09:58) [GCC 7.5.0]` |
|
- espnet version: `espnet 0.10.5a1` |
|
- pytorch version: `pytorch 1.9.0` |
|
- Git hash: `3fd3dae71427d2ba5ecbc3fe0f2ae05db79acc29` |
|
- Commit date: `Fri Dec 24 21:32:26 2021 -0500` |
|
|
|
## asr_conformer_noBatchNorm_warmup5k_lr2e-4_accum3_conv15_5speeds |
|
### WER |
|
|
|
|dataset|Snt|Wrd|Corr|Sub|Del|Ins|Err|S.Err| |
|
|---|---|---|---|---|---|---|---|---| |
|
|infer/dev|4605|4605|97.7|2.3|0.0|0.0|2.3|2.3| |
|
|infer/test|4890|4890|97.9|2.1|0.0|0.0|2.1|2.1| |
|
|infer/test_speechbrain|4886|4886|98.4|1.6|0.0|0.0|1.6|1.6| |
|
|
|
### CER |
|
|
|
|dataset|Snt|Wrd|Corr|Sub|Del|Ins|Err|S.Err| |
|
|---|---|---|---|---|---|---|---|---| |
|
|infer/dev|4605|19541|98.6|0.9|0.5|1.0|2.5|2.3| |
|
|infer/test|4890|19959|97.8|1.1|1.1|0.7|3.0|2.1| |
|
|infer/test_speechbrain|4886|19923|98.7|0.7|0.6|0.6|1.9|1.6| |
|
|
|
### TER |
|
|
|
|dataset|Snt|Wrd|Corr|Sub|Del|Ins|Err|S.Err| |
|
|---|---|---|---|---|---|---|---|---| |
|
|
|
## ASR config |
|
|
|
<details><summary>expand</summary> |
|
|
|
``` |
|
config: conf/train_asr_conformer_noBatchNorm.yaml |
|
print_config: false |
|
log_level: INFO |
|
dry_run: false |
|
iterator_type: sequence |
|
output_dir: exp/asr_conformer_noBatchNorm_warmup5k_lr2e-4_accum3_conv15_5speeds |
|
ngpu: 1 |
|
seed: 0 |
|
num_workers: 1 |
|
num_att_plot: 3 |
|
dist_backend: nccl |
|
dist_init_method: env:// |
|
dist_world_size: null |
|
dist_rank: null |
|
local_rank: 0 |
|
dist_master_addr: null |
|
dist_master_port: null |
|
dist_launcher: null |
|
multiprocessing_distributed: false |
|
unused_parameters: false |
|
sharded_ddp: false |
|
cudnn_enabled: true |
|
cudnn_benchmark: false |
|
cudnn_deterministic: true |
|
collect_stats: false |
|
write_collected_feats: false |
|
max_epoch: 150 |
|
patience: null |
|
val_scheduler_criterion: |
|
- valid |
|
- loss |
|
early_stopping_criterion: |
|
- valid |
|
- loss |
|
- min |
|
best_model_criterion: |
|
- - valid |
|
- loss |
|
- min |
|
- - valid |
|
- acc |
|
- max |
|
keep_nbest_models: 10 |
|
grad_clip: 5.0 |
|
grad_clip_type: 2.0 |
|
grad_noise: false |
|
accum_grad: 3 |
|
no_forward_run: false |
|
resume: true |
|
train_dtype: float32 |
|
use_amp: false |
|
log_interval: null |
|
use_tensorboard: true |
|
use_wandb: false |
|
wandb_project: null |
|
wandb_id: null |
|
wandb_entity: null |
|
wandb_name: null |
|
wandb_model_log_interval: -1 |
|
detect_anomaly: false |
|
pretrain_path: null |
|
init_param: [] |
|
ignore_init_mismatch: false |
|
freeze_param: [] |
|
num_iters_per_epoch: null |
|
batch_size: 20 |
|
valid_batch_size: null |
|
batch_bins: 4000000 |
|
valid_batch_bins: null |
|
train_shape_file: |
|
- exp/asr_stats_fbank_pitch_word_sp/train/speech_shape |
|
- exp/asr_stats_fbank_pitch_word_sp/train/text_shape.word |
|
valid_shape_file: |
|
- exp/asr_stats_fbank_pitch_word_sp/valid/speech_shape |
|
- exp/asr_stats_fbank_pitch_word_sp/valid/text_shape.word |
|
batch_type: numel |
|
valid_batch_type: null |
|
fold_length: |
|
- 800 |
|
- 150 |
|
sort_in_batch: descending |
|
sort_batch: descending |
|
multiple_iterator: false |
|
chunk_length: 500 |
|
chunk_shift_ratio: 0.5 |
|
num_cache_chunks: 1024 |
|
train_data_path_and_name_and_type: |
|
- - dump/fbank_pitch/train_sp/feats.scp |
|
- speech |
|
- kaldi_ark |
|
- - dump/fbank_pitch/train_sp/text |
|
- text |
|
- text |
|
valid_data_path_and_name_and_type: |
|
- - dump/fbank_pitch/dev/feats.scp |
|
- speech |
|
- kaldi_ark |
|
- - dump/fbank_pitch/dev/text |
|
- text |
|
- text |
|
allow_variable_data_keys: false |
|
max_cache_size: 0.0 |
|
max_cache_fd: 32 |
|
valid_max_cache_size: null |
|
optim: adam |
|
optim_conf: |
|
lr: 0.0002 |
|
scheduler: warmuplr |
|
scheduler_conf: |
|
warmup_steps: 5000 |
|
token_list: |
|
- <blank> |
|
- <unk> |
|
- 'yes' |
|
- down |
|
- 'no' |
|
- stop |
|
- go |
|
- 'on' |
|
- left |
|
- right |
|
- _unknown_ |
|
- _silence_ |
|
- 'off' |
|
- up |
|
- <sos/eos> |
|
init: null |
|
input_size: 83 |
|
ctc_conf: |
|
dropout_rate: 0.0 |
|
ctc_type: builtin |
|
reduce: true |
|
ignore_nan_grad: true |
|
model_conf: |
|
ctc_weight: 0.0 |
|
lsm_weight: 0.1 |
|
length_normalized_loss: false |
|
use_preprocessor: true |
|
token_type: word |
|
bpemodel: null |
|
non_linguistic_symbols: null |
|
cleaner: null |
|
g2p: null |
|
speech_volume_normalize: null |
|
rir_scp: null |
|
rir_apply_prob: 1.0 |
|
noise_scp: null |
|
noise_apply_prob: 1.0 |
|
noise_db_range: '13_15' |
|
frontend: null |
|
frontend_conf: {} |
|
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 |
|
- 30 |
|
num_freq_mask: 2 |
|
apply_time_mask: true |
|
time_mask_width_range: |
|
- 0 |
|
- 40 |
|
num_time_mask: 2 |
|
normalize: global_mvn |
|
normalize_conf: |
|
stats_file: exp/asr_stats_fbank_pitch_word_sp/train/feats_stats.npz |
|
preencoder: null |
|
preencoder_conf: {} |
|
encoder: conformer |
|
encoder_conf: |
|
output_size: 256 |
|
attention_heads: 4 |
|
linear_units: 2048 |
|
num_blocks: 12 |
|
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: legacy |
|
pos_enc_layer_type: rel_pos |
|
selfattention_layer_type: rel_selfattn |
|
activation_type: swish |
|
use_cnn_module: true |
|
cnn_module_kernel: 15 |
|
postencoder: null |
|
postencoder_conf: {} |
|
decoder: transformer |
|
decoder_conf: |
|
attention_heads: 4 |
|
linear_units: 2048 |
|
num_blocks: 6 |
|
dropout_rate: 0.1 |
|
positional_dropout_rate: 0.1 |
|
self_attention_dropout_rate: 0.1 |
|
src_attention_dropout_rate: 0.1 |
|
required: |
|
- output_dir |
|
- token_list |
|
version: 0.10.3a3 |
|
distributed: false |
|
``` |
|
|
|
</details> |
|
|
|
|
|
|
|
### Citing ESPnet |
|
|
|
```BibTex |
|
@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}, |
|
url={http://dx.doi.org/10.21437/Interspeech.2018-1456} |
|
} |
|
|
|
|
|
|
|
|
|
``` |
|
|
|
or arXiv: |
|
|
|
```bibtex |
|
@misc{watanabe2018espnet, |
|
title={ESPnet: End-to-End Speech Processing Toolkit}, |
|
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}, |
|
year={2018}, |
|
eprint={1804.00015}, |
|
archivePrefix={arXiv}, |
|
primaryClass={cs.CL} |
|
} |
|
``` |
|
|