tf.contrib.rnn.LayerNormBasicLSTMCell
LSTM-блок с нормализацией по слоям и рекуррентным дропаутом.
Наследуется от: RNNCell
tf.contrib.rnn.LayerNormBasicLSTMCell(
num_units, forget_bias=1.0, input_size=None, activation=tf.math.tanh,
layer_norm=True, norm_gain=1.0, norm_shift=0.0, dropout_keep_prob=1.0,
dropout_prob_seed=None, reuse=None
)
Этот класс добавляет нормализацию по слоям и рекуррентный дропаут к базовому LSTM-блоку. Реализация нормализации по слоям основана на:
https://arxiv.org/abs/1607.06450
"Нормализация по слоям" Джимми Лей Ба, Джейми Райан Кирос, Джеффри Хинтон
и применяется до внутренних нелинейностей. Рекуррентный дропаут основан на:
https://arxiv.org/abs/1603.05118
"Рекуррентный дропаут без потери памяти" Станислау Семениута, Аляксей Северин, Эрхарт Барт.
| Аргументы | |
|---|---|
num_units | int, Количество единиц в LSTM-блоке. |
forget_bias | float, Смещение, добавляемое к воротам забывания (см. выше). |
input_size | Устарело и не используется. |
activation | Функция активации внутренних состояний. |
layer_norm | Если True, будет применена нормализация по слоям. |
norm_gain | float, Начальное значение усиления нормализации по слоям. Если layer_norm установлено в False, этот аргумент будет проигнорирован. |
norm_shift | float, Начальное значение смещения нормализации по слоям. Если layer_norm установлено в False, этот аргумент будет проигнорирован. |
dropout_keep_prob | тензор единиц или число с плавающей точкой от 0 до 1, представляющее значение вероятности рекуррентного дропаута. Если число с плавающей точкой равно 1.0, дропаут не будет применён. |
dropout_prob_seed | (необязательно) целое число, семя для генерации случайных чисел. |
reuse | (необязательно) булево значение, описывающее, следует ли повторно использовать переменные в существующем scope. Если не True, и в существующем scope уже есть заданные переменные, возникает ошибка. |
| Атрибуты | |
|---|---|
graph | УСТАРЕВШАЯ ФУНКЦИЯ |
output_size | Целое число или TensorShape: размер выходных данных, производимых этим блоком. |
scope_name | |
state_size | Размер(ы) состояния(ий), используемых этим блоком. Он может быть представлен целым числом, TensorShape или кортежем целых чисел или TensorShape. |
Методы
get_initial_state
get_initial_state(
inputs=None, batch_size=None, dtype=None
)
zero_state
zero_state(
batch_size, dtype
)
Возвращает тензор(ы) состояния, заполненные нулями.
| Аргументы | |
|---|---|
batch_size | int, float или тензор единиц, представляющий размер пакета. |
dtype | Тип данных для состояния. |
| Возвращаемое значение | |
|---|---|
Если state_size является целым числом или TensorShape, то значение возврата - тензор N-D формы [batch_size, state_size], заполненный нулями. Если |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/rnn/LayerNormBasicLSTMCell