tf.compat.v1.nn.static_bidirectional_rnn
Создает двунаправленную рекуррентную нейронную сеть. (устарела)
tf.compat.v1.nn.static_bidirectional_rnn(
cell_fw,
cell_bw,
inputs,
initial_state_fw=None,
initial_state_bw=None,
dtype=None,
sequence_length=None,
scope=None
)
Подобно рассмотренному выше однонаправленному случаю (rnn), эта функция принимает входные данные и создает независимые прямую и обратную RNN, объединяя итоговые выходные данные прямого и обратного направлений по глубине, так что выходные данные будут иметь формат [time][batch][cell_fw.output_size + cell_bw.output_size]. Размер входных данных ячеек прямого и обратного направлений должен совпадать. Начальное состояние для обоих направлений по умолчанию равно нулю (но его можно задать явно), а промежуточные состояния не возвращаются — сеть полностью разворачивается для заданной (переданной) длины или длин последовательности либо разворачивается целиком, если длина или длины не указаны.
| Аргументы | |
|---|---|
cell_fw | Экземпляр RNNCell, используемый для прямого направления. |
cell_bw | Экземпляр RNNCell, используемый для обратного направления. |
inputs | Список входных данных длины T, каждый элемент которого — тензор формы [batch_size, input_size], или вложенный кортеж таких элементов. |
initial_state_fw | (необязательно) Начальное состояние для прямой RNN. Это должен быть тензор подходящего типа и формы [batch_size, cell_fw.state_size]. Если cell_fw.state_size является кортежем, здесь должен быть кортеж тензоров форм [batch_size, s] for s in cell_fw.state_size. |
initial_state_bw | (необязательно) Аналогично initial_state_fw, но с использованием соответствующих свойств cell_bw. |
dtype | (необязательно) Тип данных начального состояния. Обязателен, если не указано хотя бы одно из начальных состояний. |
sequence_length | (необязательно) Вектор int32/int64 размера [batch_size], содержащий фактические длины каждой последовательности. |
scope | VariableScope для создаваемого подграфа; по умолчанию — "bidirectional_rnn" |
| Возвращает | |
|---|---|
Кортеж (outputs, output_state_fw, output_state_bw), где: outputs — список выходных данных длины T (по одному для каждого входного элемента), представляющих собой объединенные по глубине выходные данные прямого и обратного направлений. output_state_fw — итоговое состояние прямой RNN. output_state_bw — итоговое состояние обратной RNN. |
| Исключения | |
|---|---|
TypeError | Если cell_fw или cell_bw не является экземпляром RNNCell. |
ValueError | Если inputs равно None или является пустым списком. |
© 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/compat/v1/nn/static_bidirectional_rnn