pyannote / pyannote-audio

Neural building blocks for speaker diarization: speech activity detection, speaker change detection, overlapped speech detection, speaker embedding
http://pyannote.github.io
MIT License
6.29k stars 777 forks source link

Error while running speaker diarization optimization #455

Closed fanelli closed 4 years ago

fanelli commented 4 years ago

Describe the bug Thank you for building this amazing repository. The tutorials in general are very well described and easy to replicate.

I am trying to run the tutorial at this page. I have been able to successfully download the AMI and the MUSAN datasets. I have also been able to successfully extract the raw scores/embeddings using the pretrained models to get the sad, scd and emb.

When I run the training command

pyannote-pipeline train --subset=development --forever ${EXP_DIR} AMI.SpeakerDiarization.MixHeadset

I get the error:

/home/afane/miniconda3/envs/pyannote/lib/python3.8/site-packages/pyannote/audio/embedding/approaches/arcface_loss.py:170: FutureWarning: The 's' parameter is deprecated in favor of 'scale', and will be removed in a future release
  warnings.warn(msg, FutureWarning)
Using cache found in /home/afane/.cache/torch/hub/pyannote_pyannote-audio_master
Traceback (most recent call last):
  File "/home/afane/miniconda3/envs/pyannote/bin/pyannote-pipeline", line 8, in <module>
    sys.exit(main())
  File "/home/afane/miniconda3/envs/pyannote/lib/python3.8/site-packages/pyannote/pipeline/experiment.py", line 426, in main
    experiment.train(protocol_name, subset=subset, n_iterations=iterations,
  File "/home/afane/miniconda3/envs/pyannote/lib/python3.8/site-packages/pyannote/pipeline/experiment.py", line 247, in train
    protocol = get_protocol(protocol_name, progress=False,
TypeError: get_protocol() got an unexpected keyword argument 'progress'

To Reproduce Steps to reproduce the behavior:

$ pyannote-pipeline train --subset=development --forever ${EXP_DIR} AMI.SpeakerDiarization.MixHeadset

Content of config.yml

ipeline:
   name: pyannote.audio.pipeline.speaker_diarization.SpeakerDiarization
   params:
      sad_scores: sad_ami
      scd_scores: scd_ami
      embedding: emb_ami
      evaluation_only: True
      method: affinity_propagation

freeze:
   speech_turn_segmentation:
      speech_activity_detection:
         min_duration_off: 0.6315121069334447
         min_duration_on: 0.0007366523493967721
         offset: 0.5727193137037349
         onset: 0.5842225805454029
         pad_offset: 0.0
         pad_onset: 0.0

pyannote environment

$ pip freeze | grep pyannote
pyannote.audio==2.0a1+64.ga1d2f45
pyannote.core==4.1
pyannote.database==4.0.1
pyannote.metrics==3.0.1
pyannote.pipeline==1.5

Additional context

hbredin commented 4 years ago

Thanks for playing with pyannote.audio.

Please update pyannote.pipeline to the latest version and this should solve this issue:

pip install pyannote.pipeline==1.5.2