Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 张量流中的Conv1D混淆_Python_Tensorflow_Audio_Deep Learning_Signal Processing - Fatal编程技术网

Python 张量流中的Conv1D混淆

Python 张量流中的Conv1D混淆,python,tensorflow,audio,deep-learning,signal-processing,Python,Tensorflow,Audio,Deep Learning,Signal Processing,由于一些维度问题,试图实现一个文件并遇到一些砖墙。我的输入是单声道音频数据,其中128帧50ms的16kHz采样音频被送入网络。所以我的输入形状是: [128,0.005*16000, 1] 下面是图层的详细信息- 1.)conv银行区块:Conv1d-bank-8,勒鲁,IN(实例规范化) 我通过以下方式实现这一目标: bank_width = 8 conv_bank_outputs = tf.concat([ tf.layers.conv1d(input,1,k,activation=tf.

由于一些维度问题,试图实现一个文件并遇到一些砖墙。我的输入是单声道音频数据,其中128帧50ms的16kHz采样音频被送入网络。所以我的输入形状是: [128,0.005*16000, 1] 下面是图层的详细信息-

1.)conv银行区块:Conv1d-bank-8,勒鲁,IN(实例规范化) 我通过以下方式实现这一目标:

bank_width = 8
conv_bank_outputs = tf.concat([ tf.layers.conv1d(input,1,k,activation=tf.nn.leaky_relu,padding="same") for k in range(1, bank_width + 1)], axes = -1)
2.)转换块:C-512-5,LReLu-->C-512-5,步长=2,LReLu,IN,RES(剩余)

这就是我被卡住的地方,第二次卷积的输出和(2)层的输入的形状不匹配。我的头脑绕不过去

我通过以下方式实现这一目标:

block_1 = tf.layers.conv1d(input,filters=512,kernel_size=5,activation=tf.nn.leaky_relu,padding="same")
block_2 = tf.layers.conv1d(block_1,filters=512,kernel_size=5,strides=2,activation=tf.nn.leaky_relu,padding="same")
IN = tf.contrib.layers.instance_norm(block_2)
RES = IN + input

错误:
ValueError:对于输入形状为[128400512]、[1288001024]的“添加”(op:“添加”)而言,维度必须相等,但为400和800。
当您在stride=2的block1上运行conv1d时,输入数据将减半,因为conv1d只对备用数字进行有效采样,而且您还更改了通道数。这通常是通过1x1 conv使用步长2和过滤器512对输入进行下采样来解决的,不过如果你能分享这篇论文,我可以更具体一些。

你能提供这篇论文吗?