Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Train First Speaker Verification Model #19

Closed
juanmc2005 opened this issue May 23, 2019 · 10 comments
Closed

Train First Speaker Verification Model #19

juanmc2005 opened this issue May 23, 2019 · 10 comments
Assignees
Labels
enhancement New feature or request
Projects

Comments

@juanmc2005
Copy link
Owner

juanmc2005 commented May 23, 2019

Use SpeakerModel and VoxCeleb1 to train a first speaker verification model.
Cross entropy takes priority over the rest of the losses as discussed in previous meetings.
Make sure to use EER as the validation metric.

@juanmc2005 juanmc2005 created this issue from a note in SV - STS (To do) May 23, 2019
@juanmc2005 juanmc2005 added the enhancement New feature or request label May 23, 2019
@juanmc2005 juanmc2005 moved this from To do to In progress in SV - STS May 23, 2019
@juanmc2005 juanmc2005 self-assigned this May 23, 2019
@juanmc2005
Copy link
Owner Author

Cannot directly use VoxCeleb1 data with SincNet. We need to split the samples in chunks, like they explain in the paper (at least at the beginning).
This missing chunks are most likely causing an out of memory issue.

@hbredin any way of chunking audio segments already implemented in pyannote?

@hbredin
Copy link
Collaborator

hbredin commented May 25, 2019

Not sure what you need.

SpeechSegmentGenerator already yields audio chunks, whose duration is controlled by the duration parameter.

Can you clarify your needs?

@juanmc2005
Copy link
Owner Author

Nevermind, I misunderstood the
duration parameter. I will try changing that on Monday.
Thanks!

@juanmc2005 juanmc2005 moved this from In progress to Blocked in SV - STS May 28, 2019
@juanmc2005 juanmc2005 added the blocked Development has stopped because of a problem label May 28, 2019
@juanmc2005
Copy link
Owner Author

@hbredin Please tell me if I can do something to help solve the 3199 issue.
If you want to force it to see what it looks like, you can use the sv-train2 branch and run:
python -W ignore main.py --task speaker --loss softmax --epochs 1500 --no-plot --no-save --batch-size 100 --log-interval 5
The problem occurs around 25% of the first epoch

@hbredin
Copy link
Collaborator

hbredin commented May 28, 2019

I am not sure why this happens.

One way of understanding this behavior is to create a simple script that simply iterates forever on SpeechSegmentGenerator and stops as soon as the number of samples is not 3200.

You can edit SpeechSegmentGenerator temporarily so that it also returns the value of sub_segment and files[i].

@hbredin
Copy link
Collaborator

hbredin commented May 28, 2019

Starting from here, we will be able to investigate what is happening

@juanmc2005
Copy link
Owner Author

Got it. I'm switching to STS for the time being, to integrate the model and dataset.
After that I'll start working this out.
Thanks!

@juanmc2005
Copy link
Owner Author

Will unblock and use 0-padding for samples with wrong dimensions while we still look for what's causing this problem.

@juanmc2005 juanmc2005 removed the blocked Development has stopped because of a problem label Jun 4, 2019
@juanmc2005 juanmc2005 moved this from Blocked to In progress in SV - STS Jun 4, 2019
@juanmc2005
Copy link
Owner Author

The validation code is too expensive to run after each epoch, will use a separate script to run validations in parallel when a model is saved. This will be done as part of another issue: #25
The remaining task for this issue is being able to train a model without validation.

@juanmc2005
Copy link
Owner Author

Update: Validation can be done in-training for VoxCeleb1, but it would be useful to parallelize anyway to tackle VoxCeleb2.
Models can be trained using cross entropy, although the results are not very good. Will close this issue and open another one to address that problem.

@juanmc2005 juanmc2005 moved this from In progress to Done in SV - STS Jun 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
SV - STS
  
Done
Development

No branches or pull requests

2 participants