TzuchengChang / NASS

Noise-Aware Speech Separation with Contrastive Learning
14 stars 6 forks source link

Meaning of noise_ground argument #2

Closed MordehayM closed 6 months ago

MordehayM commented 6 months ago

I do not understand the meaning of the 'noise_ground' argument. I assume that for a value of 'True', noise should be added. However, I see that it is the opposite in the code: https://github.com/TzuchengChang/NASS/blob/ab98c434a5b51ff0ebfd7d3a97a9876135fa52dd/speechbrain/recipes/LibriMix/separation/train.py#L69

Thanks

TzuchengChang commented 6 months ago

I do not understand the meaning of the 'noise_ground' argument. I assume that for a value of 'True', noise should be added. However, I see that it is the opposite in the code:

https://github.com/TzuchengChang/NASS/blob/ab98c434a5b51ff0ebfd7d3a97a9876135fa52dd/speechbrain/recipes/LibriMix/separation/train.py#L69

Thanks

noise_ground means not only adding input noise, but also adding noise to the ground-truth. This is fine here because when set to True, the noise is already treated as a speaker and the ground-truth for the noise is added to the mix in add_speed_perturb. There is no need to add it again. When False, since there is no noise in the ground-truth, there is also no noise in the mix, so it needs to be added. You can check the source code of add_speed_perturb