首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >输入层max_pooling1d不兼容,有什么问题?

输入层max_pooling1d不兼容,有什么问题?
EN

Stack Overflow用户
提问于 2020-11-03 23:22:14
回答 2查看 90关注 0票数 0

亲爱的

如何在Keras中连接四个不同的张量1D?它输出以下错误:

ValueError: Input 0 is incompatible with layer max_pooling1d_72: expected ndim=3, found ndim=2

错误在最后一行,请帮帮我

示例:

代码语言:javascript
复制
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)   

非常感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-08 21:42:32

关于连接张量的问题似乎有点令人困惑,根据我对它的理解,你正面临着不兼容的层问题,这可以通过在inception1层的最后一个轴上扩展维度来纠正。

代码语言:javascript
复制
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)
票数 0
EN

Stack Overflow用户

发布于 2020-11-23 18:47:59

是的,这是一个计算资源的问题。我的代码需要32G的RAM。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64665679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档