sednn
sednn copied to clipboard
复现代码结果不理想
您好,在使用了您的代码后,我有一些地方不确定,期待您能在百忙之中抽空解答一下:
- 测试代码时,使用的语音和噪声数据与您所给一致且采样频率为16KHz,所有参数未做修改,train_loss与您所给一致,但test_loss却偏大,如图所示
PESQ结果如下,仅为1.83
在查看代码后冒昧地问一下是不是您的代码只是DNN的baseline,并没有NAT ,dropout和post-processed的部分,所以复现代码时的结果不良好,如有还望您指出在哪一部分。
-
在prepare_data.py中,read_audio的部分有resample的操作,想问一下如果我的原始语音和噪声都不是16KHz的,resample之后再训练和测试 和 直接用16KHz的数据训练和测试 的实验结果会有差别么?
-
在prepare_data.py中,您的操作是先生成了mixture_csvs,然后按照mixture_csvs中的noise_onset 和noise_offset 来对噪声进行截取或补齐。那如果如问题2中那样,原始数据的采样频率不是16KHz, 而是由8KHz、 16KHz、20KHz等不同采样频率的语音和噪声来组成,那在calculate_mixture_features的resample阶段,它们的长度就会变化,但这里还是用mixture_csvs中的noise_onset 和noise_offset 来确定数据长度,就有可能导致noise_offset 比resample后的数据长度要大,使得additive_mixing时,s与n的shape不同而无法相加。比如,原来噪声长度是80000,resample后 长度变为64000,但noise_offset介于[64000 80000],这就使得64000之后的数据取不到,语音和噪声的shape不同而无法相加。不知您是否遇到过这种问题,该怎样处理呢?
本人初学者,如有理解错误之处,望您指出。 谢谢!
您好!
测试代码时,使用的语音和噪声数据与您所给一致且采样频率为16KHz,所有参数未做修改,train_loss与您所给一致,但test_loss却偏大,如图所示
先检查路径是否过长,PESQ工具有个bug:
PESQ dose not support long path/folder name, so please shorten your path/folder name. Or you will get a wrong/low PESQ score
在prepare_data.py中,read_audio的部分有resample的操作,想问一下如果我的原始语音和噪声都不是16KHz的,resample之后再训练和测试 和 直接用16KHz的数据训练和测试 的实验结果会有差别么?
如果原始采样率大于16KHz,resample并不会使实验结果有很大差别。
在prepare_data.py中,您的操作是先生成了mixture_csvs,然后按照mixture_csvs中的noise_onset 和noise_offset 来对噪声进行截取或补齐。那如果如问题2中那样,原始数据的采样频率不是16KHz, 而是由8KHz、 16KHz、20KHz等不同采样频率的语音和噪声来组成,那在calculate_mixture_features的resample阶段,它们的长度就会变化,但这里还是用mixture_csvs中的noise_onset 和noise_offset 来确定数据长度,就有可能导致noise_offset 比resample后的数据长度要大,使得additive_mixing时,s与n的shape不同而无法相加。比如,原来噪声长度是80000,resample后 长度变为64000,但noise_offset介于[64000 80000],这就使得64000之后的数据取不到,语音和噪声的shape不同而无法相加。不知您是否遇到过这种问题,该怎样处理呢?
实验中,语音用的TIMIT数据,如果noise长度超过语音长度,则超出的部分则丢弃。
Best wishes,
Qiuqiang
From: XIEchoAH [email protected] Sent: 30 April 2018 14:12:20 To: yongxuUSTC/sednn Cc: Subscribed Subject: [yongxuUSTC/sednn] 复现代码结果不理想 (#9)
您好,在使用了您的代码后,我有一些地方不确定,期待您能在百忙之中抽空解答一下:
- 测试代码时,使用的语音和噪声数据与您所给一致且采样频率为16KHz,所有参数未做修改,train_loss与您所给一致,但test_loss却偏大,如图所示 [1]https://user-images.githubusercontent.com/29767168/39418213-ae5292f0-4c8b-11e8-9659-838fa41b161f.jpg
PESQ结果如下,仅为1.83 [qq 20180430150456]https://user-images.githubusercontent.com/29767168/39417683-955b8e26-4c88-11e8-870c-77fa97e95629.jpg
在查看代码后冒昧地问一下是不是您的代码只是DNN的baseline,并没有NAT ,dropout和post-processed的部分,所以复现代码时的结果不良好,如有还望您指出在哪一部分。
-
在prepare_data.py中,read_audio的部分有resample的操作,想问一下如果我的原始语音和噪声都不是16KHz的,resample之后再训练和测试 和 直接用16KHz的数据训练和测试 的实验结果会有差别么?
-
在prepare_data.py中,您的操作是先生成了mixture_csvs,然后按照mixture_csvs中的noise_onset 和noise_offset 来对噪声进行截取或补齐。那如果如问题2中那样,原始数据的采样频率不是16KHz, 而是由8KHz、 16KHz、20KHz等不同采样频率的语音和噪声来组成,那在calculate_mixture_features的resample阶段,它们的长度就会变化,但这里还是用mixture_csvs中的noise_onset 和noise_offset 来确定数据长度,就有可能导致noise_offset 比resample后的数据长度要大,使得additive_mixing时,s与n的shape不同而无法相加。比如,原来噪声长度是80000,resample后 长度变为64000,但noise_offset介于[64000 80000],这就使得64000之后的数据取不到,语音和噪声的shape不同而无法相加。不知您是否遇到过这种问题,该怎样处理呢?
本人初学者,如有理解错误之处,望您指出。 谢谢!
― You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/yongxuUSTC/sednn/issues/9, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AMt5yWI81hbCSWQUOMfT773td250kGgVks5ttw20gaJpZM4Tsj7J.
您好,运行您的代码之后,并不能得到您在文件夹enh_noisy_example中展示的那么好的结果。我的loss和PESQ结果如下,和您的结果差不多,但实际语音增强的结果却差很多。有几个问题问一下:
- 您迭代步数是多少?只有10000步吗?
- 复现您的结果,有什么需要注意的吗?
(上图的噪音没有出现在训练集中))
@Curisan 您好,想问一下您复现代码的时候除了迭代次数之外,其他参数有做改动么? 您的所有训练和测试数据都是采样频率为16KHz 的么?
@XIEchoAH 您好。按照网址下载的噪音Nonspeech是20KHz的,在训练之前,我用Audition把它们重采样为16KHz. 另外,prepare_data.py中函数create_mixture_csv中read_audio没有加采样频率,如果音频不是16KHz,确实会造成如你所说的情况(第3点)。其他的就没做什么变动了。
您好!
在enh_noisy_example文件夹中是原始C语言代码的版本,效果更好的原因是使用了更多的训练数据。比如不同语音和噪声的排列组合。实现细节上也有参数上的少许不同,比如大数据上迭代次数更多,网络宽度更宽等。
复现代码不需要其它改动。采样率统一为16kHz。
Best wishes,
Qiuqiang
From: Curisan [email protected] Sent: 02 May 2018 10:03:08 To: yongxuUSTC/sednn Cc: Kong Q Mr (PG/R - Elec Electronic Eng); Comment Subject: Re: [yongxuUSTC/sednn] 复现代码结果不理想 (#9)
@XIEchoAHhttps://github.com/XIEchoAH 您好。按照网址下载的噪音Nonspeech是20KHz的,在训练之前,我用Audition把它们重采样为16KHz. 另外,prepare_data.py中函数create_mixture_csv中read_audio没有加采样频率,如果音频不是16KHz,确实会造成如你所说的情况(第3点)。其他的就没做什么变动了。
― You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/yongxuUSTC/sednn/issues/9#issuecomment-385911791, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AMt5yTbHY2IVOA-n6NjbgcCxdOBeHkF_ks5tuXZMgaJpZM4Tsj7J.
@Curisan 您好,想问一下您复现代码的时候,您的train set大概是幾句話呢?以及test set語句是隨機挑選的嗎?又大概是幾句話?
我使用的Training set為TIMIT大約4000筆句子,噪音庫為 N1-N100中的其中94種,另外Testing set為TIMIT168筆句子,噪音庫為噪音庫為 N1-N100中的其中6種,且種類與您相同,並且將sample rate也更改成16k。迭代次数為100000次,但結果如下
不知道是哪邊出了問題?
Hi 您好,
Train是Timit 的约4000句话,noise是约100种持续几秒到几十秒的噪声。
Get Outlook for Androidhttps://aka.ms/ghei36
From: Nickkk1124 [email protected] Sent: Saturday, June 9, 2018 10:01:51 AM To: yongxuUSTC/sednn Cc: Kong Q Mr (PG/R - Elec Electronic Eng); Comment Subject: Re: [yongxuUSTC/sednn] 复现代码结果不理想 (#9)
@Curisanhttps://github.com/Curisan 您好,想问一下您复现代码的时候,您的train set大概是拙湓呢?
― You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/yongxuUSTC/sednn/issues/9#issuecomment-395952969, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AMt5yROXp8SYCWAelafrlTJxulgOnlO7ks5t647_gaJpZM4Tsj7J.
想請問一下該如何做才能提昇PESQ呢?
以下是在SNR=20的實驗結果
Hi,
Many thanks for your interest!
To improve PESQ, you may try with more models including recurrent neural networks, convolutional neural networks and so on.
Or, try working on loss function, such as L1, L2 loss.
Hope it helps!
Best wishes,
Qiuqiang
From: Nickkk1124 [email protected] Sent: 12 June 2018 05:54:40 To: yongxuUSTC/sednn Cc: Kong Q Mr (PG/R - Elec Electronic Eng); Comment Subject: Re: [yongxuUSTC/sednn] 复现代码结果不理想 (#9)
想一下如何做才能提NPESQ呢?
― You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/yongxuUSTC/sednn/issues/9#issuecomment-396465387, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AMt5ydfl5L21HHCZLaRYsULZ3wRdHrW4ks5t70mQgaJpZM4Tsj7J.
@XIEchoAH 您好。按照网址下载的噪音Nonspeech是20KHz的,在训练之前,我用Audition把它们重采样为16KHz. 另外,prepare_data.py中函数create_mixture_csv中read_audio没有加采样频率,如果音频不是16KHz,确实会造成如你所说的情况(第3点)。其他的就没做什么变动了。
您好,打扰您一下!我最近在跑该开源代码,训练数据和测试数据都是按照作者所说的那样设置的,考虑到你们说的第3种情况,我也事先将数据重采样到16kHz。当第一次迭代次数没有修改时(10000)时,增强后的语音失真非常严重,PESQ值在0.4左右,现在设置迭代次数为50000,但是训练过程中发现test loss一直降不下来,想问下你们有遇到过这种情况吗?
谢谢!
您好,在使用了您的代码后,我有一些地方不确定,期待您能在百忙之中抽空解答一下:
1. 测试代码时,使用的语音和噪声数据与您所给一致且采样频率为16KHz,所有参数未做修改,train_loss与您所给一致,但test_loss却偏大,如图所示 
PESQ结果如下,仅为1.83
在查看代码后冒昧地问一下是不是您的代码只是DNN的baseline,并没有NAT ,dropout和post-processed的部分,所以复现代码时的结果不良好,如有还望您指出在哪一部分。
1. 在prepare_data.py中,read_audio的部分有resample的操作,想问一下如果我的原始语音和噪声都不是16KHz的,resample之后再训练和测试 和 直接用16KHz的数据训练和测试 的实验结果会有差别么? 2. 在prepare_data.py中,您的操作是先生成了mixture_csvs,然后按照mixture_csvs中的noise_onset 和noise_offset 来对噪声进行截取或补齐。那如果如问题2中那样,原始数据的采样频率不是16KHz, 而是由8KHz、 16KHz、20KHz等不同采样频率的语音和噪声来组成,那在calculate_mixture_features的resample阶段,它们的长度就会变化,但这里还是用mixture_csvs中的noise_onset 和noise_offset 来确定数据长度,就有可能导致noise_offset 比resample后的数据长度要大,使得additive_mixing时,s与n的shape不同而无法相加。比如,原来噪声长度是80000,resample后 长度变为64000,但noise_offset介于[64000 80000],这就使得64000之后的数据取不到,语音和噪声的shape不同而无法相加。不知您是否遇到过这种问题,该怎样处理呢?
本人初学者,如有理解错误之处,望您指出。 谢谢!
你好!冒昧打扰,请多原谅。 我最近也在跑这个程序,语音和噪声都是按照作者的要求设置的,采样率统一为16kHz,training_loss和test_loss都差不多,但是增强出来的语音效果很差,PESQ计算值很低,我想问下你是否可以将你训练的模型传给我测试一下,便于我找原因呢? 需要您的帮助,感谢!
@yuanyuan0209 您好,训练时test loss只有刚开始下降了 最后趋于不变了,波动不大
您好,在开始的1000个iteration里test loss下降是最快的,然后趋于稳定。
Best wishes,
Qiuqiang
From: XIEchoAH [email protected] Sent: 12 November 2018 06:58:03 To: yongxuUSTC/sednn Cc: Kong, Qiuqiang (PG/R - Elec Electronic Eng); Comment Subject: Re: [yongxuUSTC/sednn] 复现代码结果不理想 (#9)
@yuanyuan0209https://github.com/yuanyuan0209 您好,训练时test loss只有刚开始下降了 最后趋于不变了,波动不大
― You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/yongxuUSTC/sednn/issues/9#issuecomment-437776398, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AMt5yXzfS32TZffoE4r-aBMb3bchn-YJks5uuRv6gaJpZM4Tsj7J.
Thanks for your interest. 这个代码目前仅仅是个baseline,如果性能不如 baseline性能2.08+-0.24,请检查下1)“PESQ dose not support long path/folder name, so please shorten your path/folder name. ” ; 2)一些配置问题 这个代码里 没有加 NAT, Post-processing,有这些功能的模型(可测试任何语音): https://github.com/yongxuUSTC/DNN-Speech-enhancement-demo-tool
Best regards yong
On Sun, 11 Nov 2018 at 19:01, yuanyuan0209 [email protected] wrote:
您好,在使用了您的代码后,我有一些地方不确定,期待您能在百忙之中抽空解答一下:
- 测试代码时,使用的语音和噪声数据与您所给一致且采样频率为16KHz,所有参数未做修改,train_loss与您所给一致,但test_loss却偏大,如图所示
![]()
PESQ结果如下,仅为1.83 [image: qq 20180430150456] https://user-images.githubusercontent.com/29767168/39417683-955b8e26-4c88-11e8-870c-77fa97e95629.jpg
在查看代码后冒昧地问一下是不是您的代码只是DNN的baseline,并没有NAT ,dropout和post-processed的部分,所以复现代码时的结果不良好,如有还望您指出在哪一部分。
在prepare_data.py中,read_audio的部分有resample的操作,想问一下如果我的原始语音和噪声都不是16KHz的,resample之后再训练和测试 和 直接用16KHz的数据训练和测试 的实验结果会有差别么?
在prepare_data.py中,您的操作是先生成了mixture_csvs,然后按照mixture_csvs中的noise_onset 和noise_offset 来对噪声进行截取或补齐。那如果如问题2中那样,原始数据的采样频率不是16KHz, 而是由8KHz、 16KHz、20KHz等不同采样频率的语音和噪声来组成,那在calculate_mixture_features的resample阶段,它们的长度就会变化,但这里还是用mixture_csvs中的noise_onset 和noise_offset 来确定数据长度,就有可能导致noise_offset 比resample后的数据长度要大,使得additive_mixing时,s与n的shape不同而无法相加。比如,原来噪声长度是80000,resample后 长度变为64000,但noise_offset介于[64000 80000],这就使得64000之后的数据取不到,语音和噪声的shape不同而无法相加。不知您是否遇到过这种问题,该怎样处理呢?
本人初学者,如有理解错误之处,望您指出。 谢谢!
你好!冒昧打扰,请多原谅。
我最近也在跑这个程序,语音和噪声都是按照作者的要求设置的,采样率统一为16kHz,training_loss和test_loss都差不多,但是增强出来的语音效果很差,PESQ计算值很低,我想问下你是否可以将你训练的模型传给我测试一下,便于我找原因呢? 需要您的帮助,感谢!
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/yongxuUSTC/sednn/issues/9#issuecomment-437737612, or mute the thread https://github.com/notifications/unsubscribe-auth/AFJj0sMz2MhNmOso1Q80fSy8djws9CUxks5uuORqgaJpZM4Tsj7J .
Thanks for your interest. 这个代码目前仅仅是个baseline,如果性能不如 baseline性能2.08+-0.24,请检查下1)“PESQ dose not support long path/folder name, so please shorten your path/folder name. ” ; 2)一些配置问题 这个代码里 没有加 NAT, Post-processing,有这些功能的模型(可测试任何语音): https://github.com/yongxuUSTC/DNN-Speech-enhancement-demo-tool Best regards yong … On Sun, 11 Nov 2018 at 19:01, yuanyuan0209 @.***> wrote: 您好,在使用了您的代码后,我有一些地方不确定,期待您能在百忙之中抽空解答一下: 1. 测试代码时,使用的语音和噪声数据与您所给一致且采样频率为16KHz,所有参数未做修改,train_loss与您所给一致,但test_loss却偏大,如图所示
PESQ结果如下,仅为1.83 [image: qq 20180430150456] https://user-images.githubusercontent.com/29767168/39417683-955b8e26-4c88-11e8-870c-77fa97e95629.jpg 在查看代码后冒昧地问一下是不是您的代码只是DNN的baseline,并没有NAT ,dropout和post-processed的部分,所以复现代码时的结果不良好,如有还望您指出在哪一部分。 1. 在prepare_data.py中,read_audio的部分有resample的操作,想问一下如果我的原始语音和噪声都不是16KHz的,resample之后再训练和测试 和 直接用16KHz的数据训练和测试 的实验结果会有差别么? 2. 在prepare_data.py中,您的操作是先生成了mixture_csvs,然后按照mixture_csvs中的noise_onset 和noise_offset 来对噪声进行截取或补齐。那如果如问题2中那样,原始数据的采样频率不是16KHz, 而是由8KHz、 16KHz、20KHz等不同采样频率的语音和噪声来组成,那在calculate_mixture_features的resample阶段,它们的长度就会变化,但这里还是用mixture_csvs中的noise_onset 和noise_offset 来确定数据长度,就有可能导致noise_offset 比resample后的数据长度要大,使得additive_mixing时,s与n的shape不同而无法相加。比如,原来噪声长度是80000,resample后 长度变为64000,但noise_offset介于[64000 80000],这就使得64000之后的数据取不到,语音和噪声的shape不同而无法相加。不知您是否遇到过这种问题,该怎样处理呢? 本人初学者,如有理解错误之处,望您指出。 谢谢! 你好!冒昧打扰,请多原谅。 我最近也在跑这个程序,语音和噪声都是按照作者的要求设置的,采样率统一为16kHz,training_loss和test_loss都差不多,但是增强出来的语音效果很差,PESQ计算值很低,我想问下你是否可以将你训练的模型传给我测试一下,便于我找原因呢? 需要您的帮助,感谢! — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#9 (comment)>, or mute the thread https://github.com/notifications/unsubscribe-auth/AFJj0sMz2MhNmOso1Q80fSy8djws9CUxks5uuORqgaJpZM4Tsj7J .
好的,我再调试一下,谢谢!