yeyupiaoling / VoiceprintRecognition-Pytorch

This project uses a variety of advanced voiceprint recognition models such as EcapaTdnn, ResNetSE, ERes2Net, CAM++, etc. It is not excluded that more models will be supported in the future. At the same time, this project also supports MelSpectrogram, Spectrogram data preprocessing methods
Apache License 2.0
777 stars 124 forks source link

关于训练 #27

Closed EdenJin20171503024 closed 2 years ago

EdenJin20171503024 commented 2 years ago

您好打扰一下,我想用这个模型在公开数据集上面测试一下效果,但是我在voxcelb1数据集上进行训练的时候train/loss 波动比较大,并且test/acc一直是0,请问是什么原因,voxcelb1说话人好像是有1121个,因为是公开数据集我没有做删除错误音频的操作

yeyupiaoling commented 2 years ago

训练了多少个epoch,你说话人数量有么有设置了。

EdenJin20171503024 commented 2 years ago

是的,我设置了说话人的数量,训练了25轮,test一直是0我就暂停了

yeyupiaoling commented 2 years ago

这不应该啊。你数据集是怎么制作的,我看下你的数据列表

EdenJin20171503024 commented 2 years ago

目前我的电脑没有在身边,我晚一些发给你

jzz990415 commented 2 years ago

这个是我的另一个账号, image 这个是我的train_list

yeyupiaoling commented 2 years ago

voxcelb1说话人好像是有1121个

你说有1121个说话人,但是你的是怎么是1210个了?

jzz990415 commented 2 years ago

我说错了,但我的设置里面class是1121

jzz990415 commented 2 years ago

image you'y有一个问题,我这里生成test的时候就会变成这样,不知道为什么,也是用生成train_list同样的代码生成的

yeyupiaoling commented 2 years ago

列表看起来是没有问题的,具体是什么原因我也不太清楚。要不你重新训练一遍。你有没有改其他什么参数?

---原始邮件--- 发件人: @.> 发送时间: 2022年6月4日(周六) 上午10:25 收件人: @.>; 抄送: @.**@.>; 主题: Re: [yeyupiaoling/VoiceprintRecognition-Pytorch] 关于训练 (Issue #27)

you'y有一个问题,我这里生成test的时候就会变成这样,不知道为什么,也是用生成train_list同样的代码生成的

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

jzz990415 commented 2 years ago

没有改动其他的参数,但我怀疑是我的test list的格式不对

yeyupiaoling commented 2 years ago

格式不对,那就直接报错了

yeyupiaoling commented 2 years ago

https://github.com/yeyupiaoling/VoiceprintRecognition-Pytorch/blob/769fb0aee1c0cb34bf3d0c4e89ac6d01e9f2fc54/train.py#L31

hzfei commented 2 years ago

你好,我把你的ECAPA-TDNN模型改成了keras版本,经验证参数数量是一样多的。 用的数据集跟你的一样:3424 spks 我用了3种softmax: 1.softmax 2.am-softmax 3.aam-softmax 其中1,2两种softmax,acc还算可以,都能到93+ 可唯独AAM这个,acc始终不能突破75,用小规模数据集,例如50spks,可轻松突破90+ 研究了几天,没找到问题。 请问,你训练到多少个epochs,acc达到96的?

hzfei commented 2 years ago

真的有点奇怪

yeyupiaoling commented 2 years ago

你用我的PaddlePaddle版本试试

yeyupiaoling commented 2 years ago

我主要开发的是PaddlePaddle,Pytorch版本是额外支持的。

hzfei commented 2 years ago

哎,装环境太麻烦了,我是在docker里跑的。还用了多GPU

yeyupiaoling commented 2 years ago

conda就一条命令的事情

hzfei commented 2 years ago

还有一个,你用的CosineAnnealingLR,我用的CyclicLR。这个应该影响不大。

yeyupiaoling commented 2 years ago

学习率衰减问题不大

hzfei commented 2 years ago

okok,我试试。还有一个奇葩的事,我起初跑你的keras版本那个。一旦用4张GPU,机器就会关机。我们搞了半个月,重装了系统,目前也不敢用4张卡了、。

yeyupiaoling commented 2 years ago

这就不清楚了,keras我只跑单卡的。

yeyupiaoling commented 2 years ago

如果格式不对的话,读取的时候就会失败了。