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

TensorFlow中Flatten层input_shape参数含义及文档缺失原因咨询

关于tf.keras.layers.Flatten的input_shape参数解答

问题1:仅依据官方文档,如何得知Flatten层支持input_shape参数?

tf.keras.layers.Flatten是Keras所有层的基类Layer的子类,而input_shape是所有Keras层都支持的通用参数,并非Flatten层特有。所有Keras层的共性参数都会在基类Layer的官方文档中统一说明,你只需查看基类文档就能确认这个参数是所有层的标配:

  • 当Flatten作为模型的第一层时,必须指定input_shape(不含batch维度),用来让模型确定输入张量的形状,后续层才能据此计算参数;
  • 如果Flatten不是第一层,它会自动承接前一层的输出形状,此时无需显式指定input_shape。

问题2:该参数为何未被文档收录?

官方文档的排版逻辑是:只在基类Layer的文档中统一列出所有层的通用参数(比如input_shape、name、trainable等),各个子类层的文档只会聚焦于自身特有的参数和功能。Flatten层的核心功能是将多维张量展平为一维,input_shape属于基类继承来的通用配置,因此不会在Flatten的单独文档中重复说明。

额外补充:你看到的tf.keras.layers.Flatten(input_shape=(28, 28))写法,是把Flatten作为模型的第一层使用,用来接收28x28的单通道图像输入(MNIST灰度图默认通道数为1,Keras会自动补全该维度)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 19:18:11