Spec-Zone.ru › TensorFlow 1.15

tf.keras.layers.LSTM

Просмотр исходного кода на GitHub

Слой долгосрочной краткосрочной памяти — Hochreiter 1997.

Наследует от: RNN

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения более подробной информации.

tf.compat.v1.keras.layers.LSTM

tf.keras.layers.LSTM(
    units, activation='tanh', recurrent_activation='hard_sigmoid', use_bias=True,
    kernel_initializer='glorot_uniform', recurrent_initializer='orthogonal',
    bias_initializer='zeros', unit_forget_bias=True, kernel_regularizer=None,
    recurrent_regularizer=None, bias_regularizer=None, activity_regularizer=None,
    kernel_constraint=None, recurrent_constraint=None, bias_constraint=None,
    dropout=0.0, recurrent_dropout=0.0, implementation=1, return_sequences=False,
    return_state=False, go_backwards=False, stateful=False, unroll=False, **kwargs
)

Обратите внимание, что этот блок не оптимизирован для производительности на GPU. Используйте tf.compat.v1.keras.layers.CuDNNLSTM для повышения производительности на GPU.

Аргументы
units Положительное целое число, размерность выходного пространства.
activation Функция активации для использования. По умолчанию: гиперболический тангенс (tanh). Если вы передадите None, активация не применяется (т.е. линейная активация: a(x) = x).
recurrent_activation Функция активации для использования на рекуррентном шаге. По умолчанию: жёсткая сигмоида (hard_sigmoid). Если вы передадите None, активация не применяется (т.е. линейная активация: a(x) = x).
use_bias Булево значение, указывает, использует ли слой вектор смещения.
kernel_initializer Инициализатор матрицы весов kernel, используемой для линейного преобразования входных данных.
recurrent_initializer Инициализатор матрицы весов recurrent_kernel, используемой для линейного преобразования рекуррентного состояния.
bias_initializer Инициализатор вектора смещения.
unit_forget_bias Булево значение. Если True, добавляет 1 к смещению забывающего (forget) шлюза при инициализации. Установка в True также принудительно устанавливает bias_initializer="zeros". Это рекомендуется в Jozefowicz et al..
kernel_regularizer Функция регуляризации, применяемая к матрице весов kernel.
recurrent_regularizer Функция регуляризации, применяемая к матрице весов recurrent_kernel.
bias_regularizer Функция регуляризации, применяемая к вектору смещения.
activity_regularizer Функция регуляризации, применяемая к выходу слоя ("активации").
kernel_constraint Функция ограничения, применяемая к матрице весов kernel.
recurrent_constraint Функция ограничения, применяемая к матрице весов recurrent_kernel.
bias_constraint Функция ограничения, применяемая к вектору смещения.
dropout Вещественное число от 0 до 1. Доля единиц для отбрасывания при линейном преобразовании входных данных.
recurrent_dropout Вещественное число от 0 до 1. Доля единиц для отбрасывания при линейном преобразовании рекуррентного состояния.
implementation Режим реализации, 1 или 2. Режим 1 структурирует свои операции как большее число меньших операций умножения матриц и сложения, тогда как режим 2 объединит их в меньшее количество больших операций. Эти режимы будут иметь разные профили производительности на различных аппаратных платформах и для различных приложений.
return_sequences Булево значение. Возвращать ли только последний выходной сигнал в последовательности вывода или полную последовательность.
return_state Булево значение. Возвращать ли последнее состояние дополнительно к выводу.
go_backwards Булево значение (по умолчанию False). Если True, обработать последовательность входных данных в обратном порядке и вернуть обратную последовательность.
stateful Булево значение (по умолчанию False). Если True, последнее состояние для каждого образца с индексом i в пакет будет использоваться в качестве начального состояния для образца с индексом i в следующем пакете.
unroll Булево значение (по умолчанию False). Если True, сеть будет развернута, иначе будет использоваться символический цикл. Развёртывание может ускорить RNN, хотя оно, как правило, более ресурсоёмкое. Развёртывание подходит только для коротких последовательностей.
time_major Формат формы тензоров inputs и outputs. Если True, входы и выходы будут в форме (timesteps, batch, ...), в противном случае — (batch, timesteps, ...). Использование time_major = True немного эффективнее, потому что оно избегает транспонирования в начале и конце вычисления RNN. Однако большинство данных TensorFlow имеет порядок батчей, поэтому по умолчанию эта функция принимает входные данные и выводит выходные данные в порядке батчей.

Аргументы вызова:

  • inputs: Тензор размерности 3.
  • mask: Двоичный тензор формы (samples, timesteps) указывающий, должен ли быть замаскирован данный шаг во времени.
  • training: Булево значение Python, указывающее, должен ли слой вести себя в режиме обучения или в режиме вывода. Этот аргумент передаётся в ячейку при её вызове. Это актуально только если используется dropout или recurrent_dropout.
  • initial_state: Список тензоров начальных состояний, которые будут переданы в первый вызов ячейки.
Атрибуты
activation
bias_constraint
bias_initializer
bias_regularizer
dropout
implementation
kernel_constraint
kernel_initializer
kernel_regularizer
recurrent_activation
recurrent_constraint
recurrent_dropout
recurrent_initializer
recurrent_regularizer
states
unit_forget_bias
units
use_bias

Методы

get_initial_state

Просмотреть исходный код

get_initial_state(
    inputs
)

reset_states

Просмотреть исходный код

reset_states(
    states=None
)

© 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/keras/layers/LSTM

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API