classe finale pubblica BlockLSTM
Calcola la propagazione in avanti della cella LSTM per tutti i passaggi temporali.
Ciò equivale ad applicare LSTMBlockCell in un ciclo, in questo modo:
for x1 in unpack(x):
i1, cs1, f1, o1, ci1, co1, h1 = LSTMBlock(
x1, cs_prev, h_prev, w, wci, wcf, wco, b)
cs_prev = cs1
h_prev = h1
i.append(i1)
cs.append(cs1)
f.append(f1)
o.append(o1)
ci.append(ci1)
co.append(co1)
h.append(h1)
return pack(i), pack(cs), pack(f), pack(o), pack(ci), pack(ch), pack(h)
Note that unlike LSTMBlockCell (and BlockLSTM) which uses ICFO gate layout,
this op uses IFCO. So in order for the following snippet to be equivalent
all gate-related outputs should be reordered.
Classi nidificate
classe | BlockLSTM.Opzioni | Attributi facoltativi per BlockLSTM |
Costanti
Corda | OP_NAME | Il nome di questa operazione, come noto al motore principale di TensorFlow |
Metodi pubblici
BlockLSTM.Options statico | cellClip (cellClip mobile) |
Uscita <T> | ci () L'input della cella durante l'intera sequenza temporale. |
Uscita <T> | co () La cella dopo l'abbronzatura durante l'intera sequenza temporale. |
statico <T estende TNumber > BlockLSTM <T> | create ( Ambito ambito, Operando < TInt64 > seqLenMax, Operando <T> x, Operando <T> csPrev, Operando <T> hPrev, Operando <T> w, Operando <T> wci, Operando <T> wcf, Operando <T > wco, Operando <T> b, Opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione BlockLSTM. |
Uscita <T> | cs () Lo stato della cella prima del tanh durante l'intera sequenza temporale. |
Uscita <T> | F () La porta dell'oblio su tutta la sequenza temporale. |
Uscita <T> | H () Il vettore h di uscita sull'intera sequenza temporale. |
Uscita <T> | io () Il gate di ingresso sull'intera sequenza temporale. |
Uscita <T> | o () Il gate di uscita sull'intera sequenza temporale. |
BlockLSTM.Options statico | usePeephole (uso booleanoPeephole) |
Metodi ereditati
Costanti
Stringa finale statica pubblica OP_NAME
Il nome di questa operazione, come noto al motore principale di TensorFlow
Valore costante: "BlockLSTMV2"
Metodi pubblici
public static BlockLSTM.Options cellClip (Float cellClip)
Parametri
cellClip | Valore a cui ritagliare il valore "cs". |
---|
public static BlockLSTM <T> create ( Scope scope, Operando < TInt64 > seqLenMax, Operando <T> x, Operando <T> csPrev, Operando <T> hPrev, Operando <T> w, Operando <T> wci, Operando <T > wcf, Operando <T> wco, Operando <T> b, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione BlockLSTM.
Parametri
portata | ambito attuale |
---|---|
seqLenMax | Durata massima effettivamente utilizzata da questo input. Le uscite vengono riempite con zeri oltre questa lunghezza. |
X | L'input della sequenza in LSTM, forma (timelen, batch_size, num_inputs). |
csPrev | Valore dello stato iniziale della cella. |
hPrec | Output iniziale della cella (da utilizzare per lo spioncino). |
w | La matrice dei pesi. |
wci | La matrice dei pesi per la connessione dello spioncino del cancello di ingresso. |
wcf | La matrice dei pesi per la connessione dello spioncino del cancello dimenticato. |
wco | La matrice dei pesi per la connessione dello spioncino del cancello di uscita. |
B | Il vettore di polarizzazione. |
opzioni | trasporta valori di attributi opzionali |
Ritorni
- una nuova istanza di BlockLSTM
public static BlockLSTM.Options usePeephole (uso booleanoPeephole)
Parametri
utilizzare Spioncino | Se utilizzare i pesi dello spioncino. |
---|