如您所知,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...
多伊。