tf.raw_ops.CudnnRNNBackpropV3
Шаг обратного распространения ошибки для CudnnRNNV3.
tf.raw_ops.CudnnRNNBackpropV3(
input,
input_h,
input_c,
params,
sequence_lengths,
output,
output_h,
output_c,
output_backprop,
output_h_backprop,
output_c_backprop,
reserve_space,
host_reserved,
rnn_mode='lstm',
input_mode='linear_input',
direction='unidirectional',
dropout=0,
seed=0,
seed2=0,
num_proj=0,
time_major=True,
name=None
)
Вычисляет обратное распространение ошибки для данных и весов в RNN. Принимает дополнительный вход "sequence_lengths" по сравнению с CudnnRNNBackprop.
rnn_mode: Указывает тип модели RNN. input_mode: Указывает, есть ли линейная проекция между входными данными и фактическим вычислением перед первым слоем. 'skip_input' разрешен только при input_size == num_units; 'auto_select' подразумевает 'skip_input' при input_size == num_units; в противном случае подразумевается 'linear_input'. direction: Указывает, будет ли использоваться двунаправленная модель. Допустимые значения: "unidirectional" или "bidirectional". dropout: Вероятность исключения. Если задано значение 0., исключение отключено. seed: Первая часть начального значения для инициализации исключения. seed2: Вторая часть начального значения для инициализации исключения. input: Если time_major имеет значение true, это 3D-тензор формы [seq_length, batch_size, input_size]. Если time_major имеет значение false, форма — [batch_size, seq_length, input_size]. input_h: Если time_major имеет значение true, это 3D-тензор формы [num_layer * dir, batch_size, num_units]. Если time_major имеет значение false, форма — [batch_size, num_layer * dir, num_units]. input_c: Для LSTM — 3D-тензор формы [num_layer * dir, batch, num_units]. Для других моделей игнорируется. params: 1D-тензор, содержащий веса и смещения в непрозрачном формате. Размер должен быть создан с помощью CudnnRNNParamsSize, а инициализация выполняется отдельно. Обратите внимание, что параметры могут быть несовместимы между разными поколениями. Поэтому рекомендуется сохранять и восстанавливать их. sequence_lengths: вектор длин каждой входной последовательности. output: Если time_major имеет значение true, это 3D-тензор формы [seq_length, batch_size, dir * num_units]. Если time_major имеет значение false, форма — [batch_size, seq_length, dir * num_units]. output_h: Имеет ту же форму, что и input_h. output_c: Для LSTM имеет ту же форму, что и input_c. Для других моделей представляет собой пустой тензор. output_backprop: 3D-тензор той же формы, что и output при прямом проходе. output_h_backprop: 3D-тензор той же формы, что и output_h при прямом проходе. output_c_backprop: 3D-тензор той же формы, что и output_c при прямом проходе. time_major: Указывает, используется ли формат входных и выходных данных с приоритетом временного измерения или пакетного измерения. reserve_space: То же значение reserve_space, которое было получено при прямом проходе. input_backprop: Градиент по input при прямом проходе. Имеет ту же форму, что и input. input_h_backprop: Градиент по input_h при прямом проходе. Имеет ту же форму, что и input_h. input_c_backprop: Градиент по input_c при прямом проходе. Имеет ту же форму, что и input_c. params_backprop: Градиент по буферу params при прямом проходе. Имеет ту же форму, что и params.
| Аргументы | |
|---|---|
input | Tensor. Допустимые типы: bfloat16, half, float32, float64. |
input_h | Tensor. Тип должен совпадать с типом input. |
input_c | Tensor. Тип должен совпадать с типом input. |
params | Tensor. Тип должен совпадать с типом input. |
sequence_lengths | Tensor типа int32. |
output | Tensor. Тип должен совпадать с типом input. |
output_h | Tensor. Тип должен совпадать с типом input. |
output_c | Tensor. Тип должен совпадать с типом input. |
output_backprop | Tensor. Тип должен совпадать с типом input. |
output_h_backprop | Tensor. Тип должен совпадать с типом input. |
output_c_backprop | Tensor. Тип должен совпадать с типом input. |
reserve_space | Tensor. Тип должен совпадать с типом input. |
host_reserved | Tensor типа int8. |
rnn_mode | Необязательный string из списка: "rnn_relu", "rnn_tanh", "lstm", "gru". По умолчанию — "lstm". |
input_mode | Необязательный string из списка: "linear_input", "skip_input", "auto_select". По умолчанию — "linear_input". |
direction | Необязательный string из списка: "unidirectional", "bidirectional". По умолчанию — "unidirectional". |
dropout | Необязательный float. По умолчанию — 0. |
seed | Необязательный int. По умолчанию — 0. |
seed2 | Необязательный int. По умолчанию — 0. |
num_proj | Необязательный int. По умолчанию — 0. |
time_major | Необязательный bool. По умолчанию — True. |
name | Имя операции (необязательно). |
| Возвращаемые значения | |
|---|---|
Кортеж из объектов Tensor (input_backprop, input_h_backprop, input_c_backprop, params_backprop). | |
input_backprop | Tensor. Имеет тот же тип, что и input. |
input_h_backprop | Tensor. Имеет тот же тип, что и input. |
input_c_backprop | Tensor. Имеет тот же тип, что и input. |
params_backprop | Tensor. Имеет тот же тип, что и input. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/raw_ops/CudnnRNNBackpropV3