输入层 max_pooling1d 不兼容,问题是什么?
Input layer max_pooling1d is incompatible, what is the problem?
亲爱的
如何在 Keras 中连接四个不同的一维张量?它输出以下错误:
ValueError: Input 0 is incompatible with layer max_pooling1d_72: expected ndim=3, found ndim=2
错误在最后一行,请帮帮我
示例:
input_coder = Input(shape=(256,1))
######################### MAIN ##########################
output = Convolution1D(256,9,padding='same',strides=1)(input_coder)
output =LeakyReLU(alpha=leaky_relu_alpha)(output)
output = Convolution1D(256,1,padding='same',strides=1)(output)
output = Convolution1D(256,9, padding='same',strides=1)(output)
output = BatchNormalization()(output)
output = LeakyReLU(alpha=leaky_relu_alpha)(output)
output = MaxPooling1D(pool_size=(2))(output)
############################ INCEPTION BLOCK ##########################
incept1 = Convolution1D(1,1,padding='same')(output)
incept1 =Flatten()(incept1)
incept2 = Convolution1D(1,1,padding='same')(output)
incept2= LeakyReLU(alpha=leaky_relu_alpha)(incept2)
incept2 = Convolution1D(1,3,padding='same')(incept2)
incept2= LeakyReLU(alpha=leaky_relu_alpha)(incept2)
incept2 =Flatten()(incept2)
incept3 = Convolution1D(1,1,padding='same')(output)
incept3= LeakyReLU(alpha=leaky_relu_alpha)(incept3)
incept3 = Convolution1D(1,5,padding='same')(incept3)
incept3= LeakyReLU(alpha=leaky_relu_alpha)(incept3)
incept3 =Flatten()(incept3)
incept4 = MaxPooling1D(pool_size=2, strides=1)(output) # pool size in paper=3
incept4 = Convolution1D(1,1,padding='same')(incept4)
incept4 =Flatten()(incept4)
inception1=Concatenate()([incept4,incept1, incept2, incept3])
inception1 = BatchNormalization()(inception1)
inception1 = LeakyReLU(alpha=leaky_relu_alpha)(inception1)
inception1 = MaxPooling1D(pool_size=(2))(inception1)
非常感谢
关于连接张量的问题似乎有点令人困惑,根据我对它的理解,你正面临 in-compaitable 层问题,这可以通过扩展 inception1 层最后一个轴的维度来纠正。
inception1 = LeakyReLU(alpha=leaky_relu_alpha)(inception1)
import tensorflow as tf
inception1 = tf.expand_dims(inception1, axis = -1) # expand dimension along last axis
inception1 = MaxPooling1D(pool_size=(2))(inception1)
是的,这是计算资源的问题。我的代码需要 32G 内存。
亲爱的
如何在 Keras 中连接四个不同的一维张量?它输出以下错误:
ValueError: Input 0 is incompatible with layer max_pooling1d_72: expected ndim=3, found ndim=2
错误在最后一行,请帮帮我
示例:
input_coder = Input(shape=(256,1))
######################### MAIN ##########################
output = Convolution1D(256,9,padding='same',strides=1)(input_coder)
output =LeakyReLU(alpha=leaky_relu_alpha)(output)
output = Convolution1D(256,1,padding='same',strides=1)(output)
output = Convolution1D(256,9, padding='same',strides=1)(output)
output = BatchNormalization()(output)
output = LeakyReLU(alpha=leaky_relu_alpha)(output)
output = MaxPooling1D(pool_size=(2))(output)
############################ INCEPTION BLOCK ##########################
incept1 = Convolution1D(1,1,padding='same')(output)
incept1 =Flatten()(incept1)
incept2 = Convolution1D(1,1,padding='same')(output)
incept2= LeakyReLU(alpha=leaky_relu_alpha)(incept2)
incept2 = Convolution1D(1,3,padding='same')(incept2)
incept2= LeakyReLU(alpha=leaky_relu_alpha)(incept2)
incept2 =Flatten()(incept2)
incept3 = Convolution1D(1,1,padding='same')(output)
incept3= LeakyReLU(alpha=leaky_relu_alpha)(incept3)
incept3 = Convolution1D(1,5,padding='same')(incept3)
incept3= LeakyReLU(alpha=leaky_relu_alpha)(incept3)
incept3 =Flatten()(incept3)
incept4 = MaxPooling1D(pool_size=2, strides=1)(output) # pool size in paper=3
incept4 = Convolution1D(1,1,padding='same')(incept4)
incept4 =Flatten()(incept4)
inception1=Concatenate()([incept4,incept1, incept2, incept3])
inception1 = BatchNormalization()(inception1)
inception1 = LeakyReLU(alpha=leaky_relu_alpha)(inception1)
inception1 = MaxPooling1D(pool_size=(2))(inception1)
非常感谢
关于连接张量的问题似乎有点令人困惑,根据我对它的理解,你正面临 in-compaitable 层问题,这可以通过扩展 inception1 层最后一个轴的维度来纠正。
inception1 = LeakyReLU(alpha=leaky_relu_alpha)(inception1)
import tensorflow as tf
inception1 = tf.expand_dims(inception1, axis = -1) # expand dimension along last axis
inception1 = MaxPooling1D(pool_size=(2))(inception1)
是的,这是计算资源的问题。我的代码需要 32G 内存。