GRU 層的單元類。
用法
tf.keras.layers.GRUCell(
units, activation='tanh', recurrent_activation='sigmoid',
use_bias=True, kernel_initializer='glorot_uniform',
recurrent_initializer='orthogonal',
bias_initializer='zeros', kernel_regularizer=None,
recurrent_regularizer=None, bias_regularizer=None, kernel_constraint=None,
recurrent_constraint=None, bias_constraint=None, dropout=0.0,
recurrent_dropout=0.0, reset_after=True, **kwargs
)參數
-
units正整數,輸出空間的維度。 -
activation要使用的激活函數。默認值:雙曲正切(tanh)。如果您通過 None,則不應用激活(即 "linear" 激活:a(x) = x)。 -
recurrent_activation用於循環步驟的激活函數。默認值:sigmoid (sigmoid)。如果您通過None,則不會應用激活(即 "linear" 激活:a(x) = x)。 -
use_bias布爾值,(默認True),圖層是否使用偏置向量。 -
kernel_initializerkernel權重矩陣的初始化器,用於輸入的線性變換。默認值:glorot_uniform。 -
recurrent_initializerrecurrent_kernel權重矩陣的初始化器,用於循環狀態的線性變換。默認值:orthogonal。 -
bias_initializer偏置向量的初始化器。默認值:zeros。 -
kernel_regularizer應用於kernel權重矩陣的正則化函數。默認值:None。 -
recurrent_regularizer應用於recurrent_kernel權重矩陣的正則化函數。默認值:None。 -
bias_regularizer應用於偏置向量的正則化函數。默認值:None。 -
kernel_constraint應用於kernel權重矩陣的約束函數。默認值:None。 -
recurrent_constraint應用於recurrent_kernel權重矩陣的約束函數。默認值:None。 -
bias_constraint應用於偏置向量的約束函數。默認值:None。 -
dropout在 0 和 1 之間浮點數。為輸入的線性變換而下降的單位分數。默認值:0。 -
recurrent_dropout在 0 和 1 之間浮點數。用於循環狀態的線性變換的單位的分數。默認值:0。 -
reset_afterGRU 約定(是否在矩陣乘法之後或之前應用重置門)。 False = "before",True = "after"(默認和 cuDNN 兼容)。
有關 RNN API 使用的詳細信息,請參閱 Keras RNN API 指南。
此類處理整個時間序列輸入中的一個步驟,而tf.keras.layer.GRU 處理整個序列。
例如:
inputs = tf.random.normal([32, 10, 8])
rnn = tf.keras.layers.RNN(tf.keras.layers.GRUCell(4))
output = rnn(inputs)
print(output.shape)
(32, 4)
rnn = tf.keras.layers.RNN(
tf.keras.layers.GRUCell(4),
return_sequences=True,
return_state=True)
whole_sequence_output, final_state = rnn(inputs)
print(whole_sequence_output.shape)
(32, 10, 4)
print(final_state.shape)
(32, 4)
調用參數:
inputs:一個二維張量,形狀為[batch, feature].states:一個二維張量,形狀為[batch, units],這是上一個時間步的狀態。對於時間步 0,用戶提供的初始狀態將被饋送到單元格。training:Python 布爾值,指示層應該在訓練模式還是推理模式下運行。僅在以下情況下相關dropout或者recurrent_dropout被使用。
相關用法
- Python tf.keras.layers.GRU用法及代碼示例
- Python tf.keras.layers.GlobalAveragePooling1D用法及代碼示例
- Python tf.keras.layers.GlobalMaxPool1D用法及代碼示例
- Python tf.keras.layers.GlobalAveragePooling2D用法及代碼示例
- Python tf.keras.layers.GlobalMaxPool2D用法及代碼示例
- Python tf.keras.layers.InputLayer用法及代碼示例
- Python tf.keras.layers.serialize用法及代碼示例
- Python tf.keras.layers.Dropout用法及代碼示例
- Python tf.keras.layers.maximum用法及代碼示例
- Python tf.keras.layers.LayerNormalization用法及代碼示例
- Python tf.keras.layers.Conv2D用法及代碼示例
- Python tf.keras.layers.RepeatVector用法及代碼示例
- Python tf.keras.layers.Multiply用法及代碼示例
- Python tf.keras.layers.Activation用法及代碼示例
- Python tf.keras.layers.Conv1D用法及代碼示例
- Python tf.keras.layers.experimental.preprocessing.PreprocessingLayer.adapt用法及代碼示例
- Python tf.keras.layers.CategoryEncoding用法及代碼示例
- Python tf.keras.layers.subtract用法及代碼示例
- Python tf.keras.layers.experimental.preprocessing.HashedCrossing用法及代碼示例
- Python tf.keras.layers.Subtract用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.layers.GRUCell。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
