Closed chaoxiefs closed 3 years ago
Ok...I've solved this problem. It runs finally.
I didn't use drop_last
in my Dataloader
. But I still don't understand the reason...
The reason is that batch sizes may be unequal unless you use drop_last
. So if you use a batch size of 3 and have n * 3 + 2
items in the dataset, the last batch will have size 2 and then the val losses will have different sizes, and thus you can't stack them.
We could deal with this better but I'm not sure if it's worth it.
Hi, I come here again and very sorry to bother you. I'm trying to train DCCRN on own dataset but got stuck here:
I'm using my own dataset, wanting to train DCCRN to do denoising. The dataset structure is like
[noisy speech, clean speech]
.I followed instructions in #278, but with 2 things different:
First I used SI-SNR loss function:
loss_func = PITLossWrapper(SingleSrcNegSDR("sisdr"),pit_from='pw_pt')
And due to the denoising task, I deleted
mixture
inSimpleSystem
, so the code would be like:Would you please tell me how to fix this? Very appreciate!