當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python tf.keras.layers.InputLayer用法及代碼示例


用作網絡入口點的層(層圖)。

繼承自:LayerModule

用法

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
)

參數

  • input_shape 形狀元組(不包括批處理軸),或TensorShape 實例(不包括批處理軸)。
  • batch_size 可選輸入批量大小(整數或 None )。
  • dtype 輸入的可選數據類型。如果未提供,將使用 Keras 默認的 float 類型。
  • input_tensor 用作層輸入的可選張量。如果設置,圖層將使用此張量的tf.TypeSpec,而不是創建新的占位符張量。
  • sparse 布爾值,創建的占位符是否是稀疏的。默認為 False
  • ragged 布爾值,創建的占位符是否意味著不規則。在這種情況下,值None在裏麵shape參數表示參差不齊的尺寸。有關更多信息tf.RaggedTensor, 看本指南.默認為False.
  • type_spec 用於創建輸入的 tf.TypeSpec 對象。這個tf.TypeSpec 代表整個批次。提供時,除名稱之外的所有其他參數必須是 None
  • name 圖層的可選名稱(字符串)。

它可以包裝現有張量(傳遞 input_tensor 參數)或創建占位符張量(傳遞參數 input_shape 和可選的 dtype )。

通常建議通過 Input 使用 Keras 函數模型(創建 InputLayer )而不直接使用 InputLayer

InputLayer 與 Keras Sequential 模型一起使用時,可以通過將 input_shape 參數移動到 InputLayer 之後的第一層來跳過它。

此類可以通過選擇 sparse=Trueragged=Truetf.Tensors , tf.SparseTensorstf.RaggedTensors 創建占位符。注意sparseragged不能同時配置為True。用法:

# With explicit InputLayer.
model = tf.keras.Sequential([
  tf.keras.layers.InputLayer(input_shape=(4,)),
  tf.keras.layers.Dense(8)])
model.compile(tf.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.optimizers.RMSprop(0.001), loss='mse')
model.fit(np.zeros((10, 4)),
          np.ones((10, 8)))

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.layers.InputLayer。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。