RNN wspierany przez cuDNN.
Oblicza RNN na podstawie stanów wejściowych i początkowych w odniesieniu do bufora parametrów. Akceptuje jedno dodatkowe wejście „długości_sekwencji” niż CudnnRNN.
rnn_mode: Wskazuje typ modelu RNN. input_mode: Wskazuje, czy istnieje projekcja liniowa pomiędzy danymi wejściowymi a rzeczywistym obliczeniem przed pierwszą warstwą. „skip_input” jest dozwolone tylko wtedy, gdy input_size == num_units; „auto_select” oznacza „skip_input”, gdy input_size == liczba_jednostek; w przeciwnym razie oznacza to „wejście liniowe”. kierunek: wskazuje, czy będzie używany model dwukierunkowy. Powinien być „jednokierunkowy” lub „dwukierunkowy”. rezygnacja: prawdopodobieństwo rezygnacji. Po ustawieniu na 0, odrzucanie jest wyłączone. nasiono: Pierwsza część materiału siewnego inicjująca porzucenie. nasiono2: Druga część materiału siewnego inicjująca porzucenie. dane wejściowe: Jeśli wartość time_major ma wartość true, jest to tensor 3-D o kształcie [długość_sekwencji, rozmiar_wsadu, rozmiar_wejściowy]. Jeśli time_major ma wartość false, kształt to [batch_size, seq_length, input_size]. input_h: Jeśli time_major ma wartość true, jest to tensor 3-D o kształcie [num_layer * dir,bat_size, num_units]. Jeśli time_major ma wartość false, kształt to [batch_size, num_layer * dir, num_units]. input_c: W przypadku LSTM: tensor 3-D o kształcie [num_layer * dir, wsad, liczba_jednostek]. W przypadku innych modeli jest on ignorowany. params: Tensor 1-D zawierający wagi i odchylenia w nieprzezroczystym układzie. Rozmiar należy utworzyć za pomocą CudnnRNNParamsSize i zainicjować osobno. Należy pamiętać, że mogą one nie być kompatybilne w przypadku różnych generacji. Dlatego dobrym pomysłem jest zapisanie i przywrócenie długości_sekwencji: wektora długości każdej sekwencji wejściowej. wynik: Jeśli wartość time_major ma wartość true, jest to tensor 3-D o kształcie [długość_sekwencji, rozmiar_partia, katalog * liczba_jednostek]. Jeśli time_major ma wartość false, kształt to [batch_size, seq_length, dir * liczba_jednostek]. wyjście_h: Ten sam kształt ma wejście_h. wyjście_c: Taki sam kształt jak wejście_c dla LSTM. Pusty tensor dla innych modeli. is_training: wskazuje, czy ta operacja jest używana do wnioskowania, czy do szkolenia. time_major: Wskazuje, czy format wejścia/wyjścia jest formatem głównym czasowym, czy głównym formatem wsadowym. rezerwa_space: Nieprzezroczysty tensor, którego można użyć w obliczeniach podpór. Jest generowany tylko wtedy, gdy is_training ma wartość true.
Klasy zagnieżdżone
klasa | CudnnRNN.Opcje | Opcjonalne atrybuty dla CudnnRNN |
Stałe
Strunowy | OP_NAME | Nazwa tej operacji znana silnikowi rdzenia TensorFlow |
Metody publiczne
statyczny <T rozszerza numer T > CudnnRNN <T> | |
statyczne CudnnRNN.Options | kierunek (kierunek struny) |
statyczne CudnnRNN.Options | porzucenie (odrzucenie pływające) |
Wyjście <?> | |
statyczne CudnnRNN.Options | inputMode (ciąg wejściowyMode) |
statyczne CudnnRNN.Options | isTraining (wartość logiczna isTraining) |
statyczne CudnnRNN.Options | numProj (długie numProj) |
Wyjście <T> | wyjście () |
Wyjście <T> | wyjścieC () |
Wyjście <T> | wyjścieH () |
Wyjście <T> | |
statyczne CudnnRNN.Options | rnnMode (Ciąg rnnMode) |
statyczne CudnnRNN.Options | nasiona (długie nasiona) |
statyczne CudnnRNN.Options | nasiona 2 (Długie nasiona 2) |
statyczne CudnnRNN.Options | timeMajor (wartość logiczna timeMajor) |
Metody dziedziczone
Stałe
publiczny statyczny końcowy ciąg znaków OP_NAME
Nazwa tej operacji znana silnikowi rdzenia TensorFlow
Metody publiczne
public static CudnnRNN <T> create (zakres zakresu , argument <T> wejście, argument <T> wejścieH, argument <T> wejścieC, parametry argumentu <T>, argument <TInt32> długość sekwencji, opcje... opcje)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację CudnnRNN.
Parametry
zakres | aktualny zakres |
---|---|
opcje | przenosi opcjonalne wartości atrybutów |
Zwroty
- nowa instancja CudnnRNN