classe final pública BlockLSTM
Calcula a propagação direta da célula LSTM para todos os intervalos de tempo.
Isso é equivalente a aplicar LSTMBlockCell em um loop, assim:
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.
Classes aninhadas
aula | BlockLSTM.Opções | Atributos opcionais para BlockLSTM |
Constantes
Corda | OP_NAME | O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow |
Métodos Públicos
BlockLSTM.Options estático | cellClip (cellClip flutuante) |
Saída <T> | ci () A entrada da célula durante toda a sequência de tempo. |
Saída <T> | co () A célula após o tanh durante toda a sequência temporal. |
estático <T estende TNumber > BlockLSTM <T> | create ( Escopo do escopo, 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, Opções... opções) Método de fábrica para criar uma classe que envolve uma nova operação BlockLSTM. |
Saída <T> | cs () O estado da célula antes do tanh durante toda a sequência de tempo. |
Saída <T> | f () O portão do esquecimento ao longo de toda a sequência temporal. |
Saída <T> | h () O vetor h de saída ao longo de toda a sequência de tempo. |
Saída <T> | eu () A porta de entrada ao longo de toda a sequência de tempo. |
Saída <T> | ó () A porta de saída durante toda a sequência de tempo. |
BlockLSTM.Options estático | usePeephole (booleano usePeephole) |
Métodos herdados
Constantes
String final estática pública OP_NAME
O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow
Valor constante: "BlockLSTMV2"
Métodos Públicos
public static BlockLSTM.Options cellClip (Float cellClip)
Parâmetros
cellClip | Valor para o qual recortar o valor 'cs'. |
---|
public static BlockLSTM <T> create ( Escopo do escopo, 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, Opções... opções)
Método de fábrica para criar uma classe que envolve uma nova operação BlockLSTM.
Parâmetros
escopo | escopo atual |
---|---|
seqLenMax | Duração máxima realmente usada por esta entrada. As saídas são preenchidas com zeros além desse comprimento. |
x | A entrada de sequência para o LSTM, forma (timelen, batch_size, num_inputs). |
csAnterior | Valor do estado inicial da célula. |
hAnterior | Saída inicial da célula (a ser usada para olho mágico). |
c | A matriz de peso. |
wci | A matriz de peso para conexão do olho mágico da porta de entrada. |
banheiro | A matriz de peso para a conexão do olho mágico do portão esquecido. |
wco | A matriz de peso para conexão do olho mágico da porta de saída. |
b | O vetor de polarização. |
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância do BlockLSTM
public static BlockLSTM.Options usePeephole (booleano usePeephole)
Parâmetros
usarOlho mágico | Se deve usar pesos de olho mágico. |
---|