WaveNet的性能是否会受到影响,在/显然/稀疏信号上进行训练?



如您所知,WaveNet接收信号(即1D数组(作为其输入。

假设我正在一个假深度为十的"假2D"数组语料库上训练一个WaveNet模型。我的数据的性质要求 [除了少数假维度的索引] 的值等于 0 对于信号存在的绝大多数时间:

s(0) = 7.0,
s(1) = 9.0,
s(2) to s(9) = 0;
s(10) = 7.1,
s(11) = 8.9,
s(12) to s(19) = 0;
s(20) = 7.2,
s(21) = 8.8,
s(22) to s(29) = 0...

假指数依次填满。如果我要完美地保留细节,我会设置假深度,以便在整个语料库中,最大假深度索引的值仅为非零一次。(你可以想象,切掉这个假尺寸的后一端几乎就像降低音频文件的采样率——剥离更精细的细节(。

WaveNet的架构是否固有的东西使其不适合解释如此明显稀疏的信号?如果是这样,什么模型更适合我的这些数据?

这个潜在的解决方案在刚才的梦中浮现出来:

。一阵洗牌,然后是沉默。它延伸。从不 摇摆不定,你仍然开始感觉到保罗麦卡特尼的期待光束在增长 等待时僵硬。我为他感到难过,为他的真诚感到难过 然而,同样不可能的期望...

从沉默中走出来,回答我的波网架构问题 跳出:

拥有每个虚拟切片的第一个数字 - 在第 0 个虚拟切片之前 index -- 具有对应于切片中的索引数 来。

而不是:

s(0) = 7.0,
s(1) = 9.0,
s(2) to s(9) = 0;
s(10) = 7.1,
s(11) = 8.9,
s(12) to s(19) = 0;
s(20) = 7.2,
s(21) = 8.8,
s(22) to s(29) = 0...

s(0) = 2,
s(1) = 7.0,
s(2) = 9.0;
s(3) = 2,
s(4) = 7.1,
s(5) = 8.9;
s(6) = 2,
s(7) = 7.2,
s(8) = 8.8...

为了清楚起见,s(0)s(3)s(6)在这里都表示为整数。它们对应于要遵循的虚拟索引的数量。也就是说,如果在第三个切片上有十个虚拟索引,则s(6)将等于10而不是2;这十个指数将填充s(7)s(16)。然后s(17)将传达第四个切片中的索引数,依此类推。

随之而来的实践感受领域的增加是否值得随之而来的抽象增加?

编辑:

更新:我甚至不需要 s(0(、s(3( 和 s(6( 对应于即将到来的值数量——这种模式已经隐含在信号中。只要让它们等于零。也就是说,只需在每个"时间片"(每个虚拟维度(的开头加上一个零。

s(0) = 0.0,
s(1) = 7.0,
s(2) = 9.0;
s(3) = 0.0,
s(4) = 7.1,
s(5) = 8.9;
s(6) = 0.0,
s(7) = 7.2,
s(8) = 8.8...

多伊。

最新更新