-
Notifications
You must be signed in to change notification settings - Fork 8
difference reason #2
Comments
@tuan3w Minor issue to solve:
Here I got my implementation of Spleeter in C correct with a VST demo: @generalwave |
Thanks @james34602 and @generalwave. The quality of output seems better now. However, I still see some differences in waveform output. Not sure due to some bug or differences in preprocessing step. |
@tuan3w What's the MSE/MAE of output mask between your output and official Spleeter(Tensorflow)? |
Hi @james34602 , The top one is from my implementation, the bottom is from spleeter. As you can see, the audio generated by spleeter seems has litter noise at high frequencies than mine. |
Recently is busy on my projects, may be help you to find remaining bugs in the future. |
@james34602 padding 在pytorch和tensorflow的不同,影响还是挺大,如果从头训练没问题,但是模型来自模型转换的部分还需按照原来的,CNN和转置CNN中padding的方式和pytorch都不一致,都需要改动,为方便参考,刚提交了我的pytorch实现,训练部分和预测部分有和原始文件有些许不同。 |
@generalwave |
pytorch和matlab一致,应该是图大小和padding方式正好的缘故。 |
可能SRGAN那方的Padding刚好导致输入输出大小一样,所以和Matlab的'same'无别,所以结果吻合。 |
1、bn:
nn.BatchNorm2d(out_channels, eps=1e-3, momentum=0.01)
2、padding:left top first in pytorch,right bottom first in tensorflow or keras
`class Conv2dKeras(nn.Conv2d):
def init(self, in_channels, out_channels, kernel_size, stride=1,
padding='same', dilation=1, groups=1,
bias=True, padding_mode='zeros'):
super(Conv2dKeras, self).init(
in_channels, out_channels, kernel_size, stride,
0, dilation, groups,
bias, padding_mode)
self.keras_mode = padding
The text was updated successfully, but these errors were encountered: