View source on GitHub |
Layer to be used as an entry point into a Network (a graph of layers).
tf.keras.layers.InputLayer(
input_shape=None,
batch_size=None,
dtype=None,
input_tensor=None,
sparse=None,
name=None,
ragged=None,
type_spec=None,
**kwargs
)
It can either wrap an existing tensor (pass an input_tensor
argument)
or create a placeholder tensor (pass arguments input_shape
, and
optionally, dtype
).
It is generally recommend to use the Keras Functional model via Input
,
(which creates an InputLayer
) without directly using InputLayer
.
When using InputLayer
with the Keras Sequential model, it can be skipped
by moving the input_shape
parameter to the first layer after the
InputLayer
.
This class can create placeholders for tf.Tensors
, tf.SparseTensors
, and
tf.RaggedTensors
by choosing sparse=True
or ragged=True
. Note that
sparse
and ragged
can't be configured to True
at the same time.
Usage:
# With explicit InputLayer.
model = tf.keras.Sequential([
tf.keras.layers.InputLayer(input_shape=(4,)),
tf.keras.layers.Dense(8)])
model.compile(tf.keras.optimizers.RMSprop(0.001), loss='mse')
model.fit(np.zeros((10, 4)),
np.ones((10, 8)))
# Without InputLayer and let the first layer to have the input_shape.
# Keras will add a input for the model behind the scene.
model = tf.keras.Sequential([
tf.keras.layers.Dense(8, input_shape=(4,))])
model.compile(tf.keras.optimizers.RMSprop(0.001), loss='mse')
model.fit(np.zeros((10, 4)),
np.ones((10, 8)))
Args | |
---|---|
input_shape
|
Shape tuple (not including the batch axis), or
TensorShape instance (not including the batch axis).
|
batch_size
|
Optional input batch size (integer or None ).
|
dtype
|
Optional datatype of the input. When not provided, the Keras
default float type will be used.
|
input_tensor
|
Optional tensor to use as layer input. If set, the layer
will use the tf.TypeSpec of this tensor rather
than creating a new placeholder tensor.
|
sparse
|
Boolean, whether the placeholder created is meant to be sparse.
Defaults to False .
|
ragged
|
Boolean, whether the placeholder created is meant to be ragged.
In this case, values of None in the shape argument represent
ragged dimensions. For more information about tf.RaggedTensor , see
this guide.
Defaults to False .
|
type_spec
|
A tf.TypeSpec object to create Input from. This
tf.TypeSpec represents the entire batch. When provided, all other
args except name must be None .
|
name
|
Optional name of the layer (string). |