Keras 3 API 文档 / 层 API / 核心层 / 输入对象

输入对象

[源代码]

Input 函数

keras.Input(
    shape=None,
    batch_size=None,
    dtype=None,
    sparse=None,
    ragged=None,
    batch_shape=None,
    name=None,
    tensor=None,
    optional=False,
)

用于实例化 Keras 张量。

Keras 张量是一个符号化的张量类对象,我们为其添加了一些属性,这些属性允许我们仅通过了解模型的输入和输出来构建 Keras 模型。

例如,如果 `a`、`b` 和 `c` 是 Keras 张量,则可以进行:`model = Model(input=[a, b], output=c)`

参数

  • shape:一个形状元组(整数或 None 对象的元组),不包括批量大小。例如,shape=(32,) 表示预期的输入将是 32 维向量的批次。此元组的元素可以是 NoneNone 元素表示形状未知且可能变化的维度(例如序列长度)。
  • batch_size:可选的静态批量大小(整数)。
  • dtype:输入预期的数据类型,以字符串形式表示(例如 "float32""int32"...)
  • sparse:一个布尔值,指定预期输入是否为稀疏张量。请注意,如果 sparseFalse,稀疏张量仍然可以传递到输入中 - 它们将用默认值 0 稠密化。此功能仅支持 TensorFlow 和 JAX 后端。默认为 False
  • ragged:一个布尔值,指定预期输入是否为不规则张量。请注意,如果 raggedFalse,不规则张量仍然可以传递到输入中 - 它们将用默认值 0 稠密化。此功能仅支持 TensorFlow 后端。默认为 False
  • batch_shape:可选的形状元组(整数或 None 对象的元组),包括批量大小。
  • name:层的可选名称字符串。在模型中应是唯一的(不要两次使用相同的名称)。如果未提供,将自动生成。
  • tensor:可选的现有张量,用于封装到 Input 层中。如果设置,该层将使用此张量而不是创建新的占位符张量。
  • optional:布尔值,表示输入是否可选。可选输入可以接受 None 值。

返回

一个 Keras 张量。

示例

# This is a logistic regression in Keras
x = Input(shape=(32,))
y = Dense(16, activation='softmax')(x)
model = Model(x, y)