首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Keras输出形状具有额外的维度

Keras输出形状具有额外的维度
EN

Stack Overflow用户
提问于 2019-05-02 22:51:17
回答 1查看 472关注 0票数 1

我有一个神经网络,它可以接收500px x 500px的RGB彩色图像,也可以输出另一幅相同尺寸的图像。

下面是我的网络结构:

代码语言:javascript
复制
Generative_Model = Sequential([ 

   Conv2D(32, (6, 6), padding="same", name="generative", input_shape=(500,500, 3), data_format="channels_last")  

   PReLU(alpha_initializer='zeros'), 

   Conv2D(3, (3, 3), padding="same"), 
   PReLU(alpha_initializer='zeros', name="outp1"), 

])

我遇到的问题是,出来的维度是None,500,500,3,虽然我期望它们是500,500,3,但我不确定额外的维度是从哪里来的。

重要的是,在离开网络之前删除维度,因为这将馈送到第二个敌对网络。

下面是我打印model.summary()时得到的结果

我已经尝试在最后添加一个重塑,以迫使网络删除最后一个维度,但它似乎不起作用,因为输出形状似乎保持不变。

EN

回答 1

Stack Overflow用户

发布于 2019-05-02 23:08:24

在与@Dodge聊天时,他向我指出了以下文档:

https://www.tensorflow.org/api_docs/python/tf/keras/layers/Reshape

这说明附加的无来自于批次长度。我需要将第一个网络的输出输入到第二个网络的输出中,第二个网络预计不会有批处理维度,所以我使用第一个网络之外的重塑将其删除,如下所示:

代码语言:javascript
复制
#Adversierial network which is comprised of a generator network and a discriminator network.
self.model = Sequential([
   Gen_Input, # Generator Network
   Reshape((500, 500, 3), input_shape=(500, 500, 3)),
   discriminative_model.Input # Discriminator Network
        ])

这允许我从图形内部重塑输出。

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

https://stackoverflow.com/questions/55955044

复制
相关文章

相似问题

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