Spec-Zone.ru › TensorFlow 2.9

tf.compat.v1.keras.layers.LSTM

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

Наследуется от: RNN, Layer, Module

tf.compat.v1.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,
    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 к смещению забывающего блока при инициализации. Установка в true также принудительно устанавливает bias_initializer="zeros". Рекомендуется в Jozefowicz et al., 2015.
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. Доля единиц, которые необходимо отбросить для линейного преобразования рекуррентного состояния.
return_sequences Булево значение. Возвращать ли последний вывод в последовательности вывода или полную последовательность.
return_state Булево значение. Возвращать ли последнее состояние в дополнение к выводу.
go_backwards Булево значение (по умолчанию False). Если True, обрабатывать последовательность входных данных в обратном порядке и возвращать обращенную последовательность.
stateful Булево значение (по умолчанию False). Если True, последнее состояние для каждого образца с индексом i в наборе будет использоваться в качестве начального состояния для образца с индексом i в следующем наборе.
unroll Булево значение (по умолчанию False). Если True, сеть будет развернута, в противном случае будет использоваться символический цикл. Развертывание может ускорить RNN, хотя оно, как правило, более ресурсоёмкое. Развертывание подходит только для коротких последовательностей.
time_major Формат формы тензоров inputs и outputs. Если True, входные и выходные данные будут в форме (timesteps, batch, ...), а в случае False — в форме (batch, timesteps, ...). Использование time_major = True немного эффективнее, потому что оно избегает транспонирования в начале и в конце вычисления RNN. Однако большинство данных TensorFlow являются пословно-главными, поэтому по умолчанию эта функция принимает вход и выводит вывод в форме пословно-главной.

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

  • inputs: Тензор 3D.
  • mask: Бинарный тензор формы (samples, timesteps) , указывающий, следует ли маскировать определённый временной шаг. Отдельная запись True указывает, что соответствующий временной шаг должен использоваться, а запись False указывает, что соответствующий временной шаг следует игнорировать.
  • 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

Методы

reset_states

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

reset_states(
    states=None
)

Сбросить записанные состояния для состоятельного слоя RNN.

Можно использовать только тогда, когда слой RNN создан с stateful = True. Аргументы: states: Массивы NumPy, содержащие значение для начального состояния, которое будет передано ячейке на первом временном шаге. Если значение None, будет создан массив NumPy с нулевыми значениями, основанный на размере состояния ячейки.

Исключения
AttributeError Когда слой RNN не является состоятельным.
ValueError Когда размер набора для слоя RNN неизвестен.
ValueError Когда входной массив NumPy несовместим с состоянием слоя RNN, либо по размеру, либо по типу данных.

© 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/versions/r2.9/api_docs/python/tf/compat/v1/keras/layers/LSTM

Spec-Zone.ru

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