Um RNN apoiado por cuDNN.
Calcula o RNN da entrada e dos estados iniciais, em relação ao buffer de parâmetros. Aceita uma entrada extra "sequence_lengths" do que CudnnRNN.
rnn_mode: indica o tipo do modelo RNN. input_mode: indica se há uma projeção linear entre a entrada e o cálculo real antes da primeira camada. 'skip_input' só é permitido quando input_size == num_units; 'auto_select' implica 'skip_input' quando input_size == num_units; caso contrário, implica em 'entrada_linear'. direção: indica se um modelo bidirecional será usado. Deve ser "unidirecional" ou "bidirecional". abandono: probabilidade de abandono. Quando definido como 0., o dropout é desabilitado. seed: A primeira parte de um seed para inicializar o dropout. seed2: A segunda parte de um seed para inicializar o dropout. entrada: Se time_major for true, este é um tensor 3-D com a forma de [comprimento_seq, tamanho_do_lote, tamanho_de_entrada]. Se time_major for false, a forma será [batch_size, seq_length, input_size]. input_h: Se time_major for true, este é um tensor 3-D com a forma de [num_layer * dir, batch_size, num_units]. Se time_major for false, a forma será [batch_size, num_layer * dir, num_units]. input_c: Para LSTM, um tensor 3-D com a forma de [num_layer * dir, batch, num_units]. Para outros modelos, ele é ignorado. params: Um tensor 1-D que contém os pesos e vieses em um layout opaco. O tamanho deve ser criado por meio de CudnnRNNParamsSize e inicializado separadamente. Observe que eles podem não ser compatíveis em diferentes gerações. Portanto, é uma boa ideia salvar e restaurar sequence_lengths: um vetor de comprimentos de cada sequência de entrada. saída: Se time_major for true, este é um tensor 3-D com a forma de [comprimento_seq, tamanho_do_ lote, dir * unidades_um]. Se time_major for false, a forma será [batch_size, seq_length, dir * num_units]. output_h: a mesma forma tem input_h. output_c: O mesmo formato que input_c para LSTM. Um tensor vazio para outros modelos. is_training: indica se esta operação é usada para inferência ou treinamento. time_major: indica se o formato de entrada / saída é principal de tempo ou principal de lote. reserve_space: Um tensor opaco que pode ser usado no cálculo de backprop. Ele só é produzido se is_training for true.
Classes aninhadas
classe | CudnnRNN.Options | Atributos opcionais para CudnnRNN |
Constantes
Fragmento | OP_NAME | O nome desta operação, conforme conhecido pelo motor principal TensorFlow |
Métodos Públicos
estática <T estende TNumber > CudnnRNN <T> | |
estáticos CudnnRNN.Options | direcção (direcção da corda) |
estáticos CudnnRNN.Options | abandono (abandono do flutuador) |
Output <?> | hostReserved () |
estáticos CudnnRNN.Options | inputMode (String inputMode) |
estáticos CudnnRNN.Options | isTraining (booleano isTraining) |
estáticos CudnnRNN.Options | numProj (Long numProj) |
Output <T> | saída () |
Output <T> | outputC () |
Output <T> | outputH () |
Output <T> | reserveSpace () |
estáticos CudnnRNN.Options | rnnMode (String rnnMode) |
estáticos CudnnRNN.Options | sementes (semente Long) |
estáticos CudnnRNN.Options | seed2 (seed2 Long) |
estáticos CudnnRNN.Options | timeMajor (booleano timeMajor) |
Métodos herdados
Constantes
nome_op final String public static
O nome desta operação, conforme conhecido pelo motor principal TensorFlow
Métodos Públicos
public static CudnnRNN <T> create ( Scope escopo, Operando <T> entrada, Operando <T> inputH, Operando <T> inputC, Operando <T> params, Operando < TInt32 > sequenceLengths, Options ... Opções)
Método de fábrica para criar uma classe envolvendo uma nova operação CudnnRNN.
Parâmetros
alcance | escopo atual |
---|---|
opções | carrega valores de atributos opcionais |
Devoluções
- uma nova instância de CudnnRNN