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

About SyncNet #90

Open
YYY7C opened this issue Nov 26, 2024 · 5 comments
Open

About SyncNet #90

YYY7C opened this issue Nov 26, 2024 · 5 comments

Comments

@YYY7C
Copy link

YYY7C commented Nov 26, 2024

为什么 SyncNet训练时不用进行optimizer.zero_grad()?

@qwert1887
Copy link

我试过加上optimizer.zero_grad(set_to_none=True)后,loss会很小,偶尔会报错。尝试改动train.py中相应的10*sync_loss,区别不太大。也想知道作者大大累加梯度的本意

@YYY7C
Copy link
Author

YYY7C commented Nov 27, 2024

我试过加上optimizer.zero_grad(set_to_none=True)后,loss会很小,偶尔会报错。尝试改动train.py中相应的10*sync_loss,区别不太大。也想知道作者大大累加梯度的本意

加上optimizer.zero_grad()后训练大约十来个epoch就可以收敛了,因为只有单个样本。
同时我注意到在整个网络的训练中也进行了梯度累积,尝试清零后也可以正常收敛。

@qwert1887
Copy link

我试过加上optimizer.zero_grad(set_to_none=True)后,loss会很小,偶尔会报错。尝试改动train.py中相应的10*sync_loss,区别不太大。也想知道作者大大累加梯度的本意

加上optimizer.zero_grad()后训练大约十来个epoch就可以收敛了,因为只有单个样本。 同时我注意到在整个网络的训练中也进行了梯度累积,尝试清零后也可以正常收敛。

请教下,意思是说整个unet的训练也梯度累积了么?清零后是不是可以保证质量的情况下缩短训练时长呢?

@YYY7C
Copy link
Author

YYY7C commented Nov 27, 2024

我试过加上optimizer.zero_grad(set_to_none=True)后,loss会很小,偶尔会报错。尝试改动train.py中相应的10*sync_loss,区别不太大。也想知道作者大大累加梯度的本意

加上optimizer.zero_grad()后训练大约十来个epoch就可以收敛了,因为只有单个样本。 同时我注意到在整个网络的训练中也进行了梯度累积,尝试清零后也可以正常收敛。

请教下,意思是说整个unet的训练也梯度累积了么?清零后是不是可以保证质量的情况下缩短训练时长呢?

是的,我感觉清零后效果是可以接受的,下面这个是简单尝试的,用的wenet,因为训练时是英文的,用英文的测试感觉更自然,那个视频太大了发不上来。

6bcbf4f8a55c07cb5f1a055cb65511b8.mp4

@qwert1887
Copy link

感谢,这么说还是可以尝试下的,口型中英文训练的互泛性本身就不太好

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants