You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Keras Functional API:如何去除输入层输出形状的方括号

在Keras Functional API中去除输入层输出形状的方括号

问题根源

你提供的代码中Model类的实例化参数存在错误,正确写法需要明确指定inputs和outputs参数,而非直接传入未定义的y与张量x。错误传参会导致Keras将输入解析为列表形式,进而让输入层输出形状显示为[(None, 32)]。

修正后的代码

from keras.layers import Input, Dense
from keras.models import Model

# 定义输入层
i = Input(shape=(32,))
# 添加全连接层
x = Dense(16, activation='softmax')(i)
# 正确实例化Model,指定inputs和outputs参数
model = Model(inputs=i, outputs=x)
# 查看模型摘要
model.summary()

修正后的模型摘要效果

Layer (type)                Output Shape              Param #   
=================================================================
 input_1 (InputLayer)        (None, 32)                0         
                                                                 
 dense_1 (Dense)             (None, 16)                528       
                                                                 
=================================================================
Total params: 528
Trainable params: 528
Non-trainable params: 0

关键说明

当Model的inputs参数接收单个输入张量时,输入层的输出形状会以单个元组(None, 32)的形式展示;只有传入多个输入组成的列表(如inputs=[i1, i2])时,输出形状才会被方括号包裹。

内容的提问来源于stack exchange,提问作者kaispace30098

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 12:45:37