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


Python tf.keras.experimental.PeepholeLSTMCell用法及代碼示例


等效於 LSTMCell 類,但增加了窺視孔連接。

繼承自:LSTMCellLayerModule

用法

tf.keras.experimental.PeepholeLSTMCell(
    units, activation='tanh',
    recurrent_activation='hard_sigmoid', use_bias=True,
    kernel_initializer='glorot_uniform',
    recurrent_initializer='orthogonal',
    bias_initializer='zeros', unit_forget_bias=True,
    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, **kwargs
)

參數

  • seed 可選整數,用於創建 RandomGenerator。
  • force_generator boolean,默認為False,是否強製RandomGenerator使用tf.random.Generator的代碼分支。
  • **kwargs 將傳遞給父類的其他關鍵字參數

窺孔連接允許門利用先前的內部狀態以及先前的隱藏狀態(這是 LSTMCell 的限製)。這使得 PeepholeLSTMCell 可以更好地學習 LSTMCell 上的精確計時。

來自 Gers 等人,2002 年:

“我們發現,通過'peephole connections' 增強的 LSTM 從其內部單元到其乘法門可以學習間隔 50 或 49 個時間步長的尖峰序列之間的細微差別,而無需任何簡短的訓練示例的幫助。”

窺視孔實現基於:

薩克等人,2014

例子:

# Create 2 PeepholeLSTMCells
peephole_lstm_cells = [PeepholeLSTMCell(size) for size in [128, 256]]
# Create a layer composed sequentially of the peephole LSTM cells.
layer = RNN(peephole_lstm_cells)
input = keras.Input((timesteps, input_dim))
output = layer(input)

相關用法


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