|
--- |
|
tags: |
|
- espnet |
|
- audio |
|
- diarization |
|
language: en |
|
datasets: |
|
- librimix |
|
license: cc-by-4.0 |
|
--- |
|
|
|
## ESPnet2 DIAR model |
|
|
|
### `soumi-maiti/libri23mix_eend_ss` |
|
|
|
This model was trained by soumimaiti using librimix recipe in [espnet](https://github.com/espnet/espnet/). |
|
|
|
### Demo: How to use in ESPnet2 |
|
|
|
Follow the [ESPnet installation instructions](https://espnet.github.io/espnet/installation.html) |
|
if you haven't done that already. |
|
|
|
```bash |
|
cd espnet |
|
git checkout d837c97c88f13ffe655a30bcff93d814f212b225 |
|
pip install -e . |
|
cd egs2/librimix/enh_diar23 |
|
./run.sh --skip_data_prep false --skip_train true --download_model soumi-maiti/libri23mix_eend_ss |
|
``` |
|
|
|
|
|
|
|
## DIAR config |
|
|
|
<details><summary>expand</summary> |
|
|
|
``` |
|
config: conf/tuning/train_diar_enh_convtasnet_concat_feats_adapt.yaml |
|
print_config: false |
|
log_level: INFO |
|
dry_run: false |
|
iterator_type: chunk |
|
output_dir: exp/diar_enh_train_diar_enh_convtasnet_concat_feats_adapt |
|
ngpu: 1 |
|
seed: 0 |
|
num_workers: 4 |
|
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: 50 |
|
patience: 4 |
|
val_scheduler_criterion: |
|
- valid |
|
- loss |
|
early_stopping_criterion: |
|
- valid |
|
- loss |
|
- min |
|
best_model_criterion: |
|
- - valid |
|
- loss_enh |
|
- min |
|
keep_nbest_models: 1 |
|
nbest_averaging_interval: 0 |
|
grad_clip: 5.0 |
|
grad_clip_type: 2.0 |
|
grad_noise: false |
|
accum_grad: 16 |
|
no_forward_run: false |
|
resume: true |
|
train_dtype: float32 |
|
use_amp: false |
|
log_interval: null |
|
use_matplotlib: true |
|
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: |
|
- ../enh_diar1/exp/diar_enh_train_diar_enh_convtasnet_concat_feats_raw/valid.loss_enh.best.pth |
|
ignore_init_mismatch: false |
|
freeze_param: [] |
|
num_iters_per_epoch: null |
|
batch_size: 1 |
|
valid_batch_size: null |
|
batch_bins: 1000000 |
|
valid_batch_bins: null |
|
train_shape_file: |
|
- exp/diar_enh_stats_8k/train/speech_shape |
|
- exp/diar_enh_stats_8k/train/text_shape |
|
- exp/diar_enh_stats_8k/train/speech_ref1_shape |
|
- exp/diar_enh_stats_8k/train/speech_ref2_shape |
|
- exp/diar_enh_stats_8k/train/speech_ref3_shape |
|
- exp/diar_enh_stats_8k/train/noise_ref1_shape |
|
valid_shape_file: |
|
- exp/diar_enh_stats_8k/valid/speech_shape |
|
- exp/diar_enh_stats_8k/valid/text_shape |
|
- exp/diar_enh_stats_8k/valid/speech_ref1_shape |
|
- exp/diar_enh_stats_8k/valid/speech_ref2_shape |
|
- exp/diar_enh_stats_8k/valid/speech_ref3_shape |
|
- exp/diar_enh_stats_8k/valid/noise_ref1_shape |
|
batch_type: folded |
|
valid_batch_type: null |
|
fold_length: |
|
- 800 |
|
- 80000 |
|
- 80000 |
|
- 80000 |
|
- 80000 |
|
- 80000 |
|
sort_in_batch: descending |
|
sort_batch: descending |
|
multiple_iterator: false |
|
chunk_length: 24000 |
|
chunk_shift_ratio: 0.5 |
|
num_cache_chunks: 1024 |
|
train_data_path_and_name_and_type: |
|
- - dump/raw/train/wav.scp |
|
- speech |
|
- sound |
|
- - dump/raw/train/espnet_rttm |
|
- text |
|
- rttm |
|
- - dump/raw/train/spk1.scp |
|
- speech_ref1 |
|
- sound |
|
- - dump/raw/train/spk2.scp |
|
- speech_ref2 |
|
- sound |
|
- - dump/raw/train/spk3.scp |
|
- speech_ref3 |
|
- sound |
|
- - dump/raw/train/noise1.scp |
|
- noise_ref1 |
|
- sound |
|
valid_data_path_and_name_and_type: |
|
- - dump/raw/dev/wav.scp |
|
- speech |
|
- sound |
|
- - dump/raw/dev/espnet_rttm |
|
- text |
|
- rttm |
|
- - dump/raw/dev/spk1.scp |
|
- speech_ref1 |
|
- sound |
|
- - dump/raw/dev/spk2.scp |
|
- speech_ref2 |
|
- sound |
|
- - dump/raw/dev/spk3.scp |
|
- speech_ref3 |
|
- sound |
|
- - dump/raw/dev/noise1.scp |
|
- noise_ref1 |
|
- sound |
|
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.001 |
|
eps: 1.0e-07 |
|
weight_decay: 0 |
|
scheduler: reducelronplateau |
|
scheduler_conf: |
|
mode: min |
|
factor: 0.5 |
|
patience: 1 |
|
token_list: null |
|
src_token_list: null |
|
init: xavier_uniform |
|
input_size: null |
|
ctc_conf: |
|
dropout_rate: 0.0 |
|
ctc_type: builtin |
|
reduce: true |
|
ignore_nan_grad: null |
|
zero_infinity: true |
|
enh_criterions: |
|
- name: si_snr |
|
conf: |
|
eps: 1.0e-07 |
|
wrapper: pit |
|
wrapper_conf: |
|
weight: 1.0 |
|
independent_perm: true |
|
flexible_numspk: true |
|
diar_num_spk: 3 |
|
diar_input_size: 128 |
|
enh_model_conf: |
|
loss_type: si_snr |
|
asr_model_conf: |
|
ctc_weight: 0.5 |
|
interctc_weight: 0.0 |
|
ignore_id: -1 |
|
lsm_weight: 0.0 |
|
length_normalized_loss: false |
|
report_cer: true |
|
report_wer: true |
|
sym_space: <space> |
|
sym_blank: <blank> |
|
extract_feats_in_collect_stats: true |
|
st_model_conf: |
|
stft_consistency: false |
|
loss_type: mask_mse |
|
mask_type: null |
|
diar_model_conf: |
|
diar_weight: 0.2 |
|
attractor_weight: 0.2 |
|
subtask_series: |
|
- enh |
|
- diar |
|
model_conf: |
|
calc_enh_loss: true |
|
bypass_enh_prob: 0 |
|
use_preprocessor: true |
|
token_type: bpe |
|
bpemodel: null |
|
src_token_type: bpe |
|
src_bpemodel: null |
|
non_linguistic_symbols: null |
|
cleaner: null |
|
g2p: null |
|
enh_encoder: conv |
|
enh_encoder_conf: |
|
channel: 512 |
|
kernel_size: 16 |
|
stride: 8 |
|
enh_separator: tcn_nomask |
|
enh_separator_conf: |
|
layer: 8 |
|
stack: 3 |
|
bottleneck_dim: 128 |
|
hidden_dim: 512 |
|
kernel: 3 |
|
causal: false |
|
norm_type: gLN |
|
enh_decoder: conv |
|
enh_decoder_conf: |
|
channel: 512 |
|
kernel_size: 16 |
|
stride: 8 |
|
enh_mask_module: multi_mask |
|
enh_mask_module_conf: |
|
max_num_spk: 3 |
|
mask_nonlinear: relu |
|
bottleneck_dim: 128 |
|
frontend: default |
|
frontend_conf: {} |
|
specaug: null |
|
specaug_conf: {} |
|
normalize: utterance_mvn |
|
normalize_conf: {} |
|
asr_preencoder: null |
|
asr_preencoder_conf: {} |
|
asr_encoder: rnn |
|
asr_encoder_conf: {} |
|
asr_postencoder: null |
|
asr_postencoder_conf: {} |
|
asr_decoder: rnn |
|
asr_decoder_conf: {} |
|
st_preencoder: null |
|
st_preencoder_conf: {} |
|
st_encoder: rnn |
|
st_encoder_conf: {} |
|
st_postencoder: null |
|
st_postencoder_conf: {} |
|
st_decoder: rnn |
|
st_decoder_conf: {} |
|
st_extra_asr_decoder: rnn |
|
st_extra_asr_decoder_conf: {} |
|
st_extra_mt_decoder: rnn |
|
st_extra_mt_decoder_conf: {} |
|
diar_frontend: default |
|
diar_frontend_conf: |
|
hop_length: 64 |
|
fs: 8000 |
|
diar_specaug: null |
|
diar_specaug_conf: {} |
|
diar_normalize: utterance_mvn |
|
diar_normalize_conf: {} |
|
diar_encoder: transformer |
|
diar_encoder_conf: |
|
input_layer: conv2d8 |
|
num_blocks: 4 |
|
linear_units: 512 |
|
dropout_rate: 0.1 |
|
output_size: 256 |
|
attention_heads: 4 |
|
attention_dropout_rate: 0.1 |
|
diar_decoder: linear |
|
diar_decoder_conf: {} |
|
label_aggregator: label_aggregator |
|
label_aggregator_conf: |
|
win_length: 256 |
|
hop_length: 64 |
|
diar_attractor: rnn |
|
diar_attractor_conf: |
|
unit: 256 |
|
layer: 1 |
|
dropout: 0.0 |
|
attractor_grad: true |
|
required: |
|
- output_dir |
|
version: '202205' |
|
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} |
|
} |
|
``` |
|
|