Spec-Zone.ru › TensorFlow

tf.keras.layers.LSTMCell

Класс ячейки для слоя LSTM.

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

tf.keras.layers.LSTMCell(
    units,
    activation='tanh',
    recurrent_activation='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,
    kernel_constraint=None,
    recurrent_constraint=None,
    bias_constraint=None,
    dropout=0.0,
    recurrent_dropout=0.0,
    seed=None,
    **kwargs
)

Используется в блокнотах

Используется в руководстве Используется в учебных материалах
  • Эффективный TensorFlow 2
  • Прогнозирование временных рядов

Этот класс обрабатывает один шаг входной последовательности, тогда как keras.layer.LSTM обрабатывает всю последовательность.

Аргументы
units Положительное целое число, размерность пространства выходных данных.
activation Используемая функция активации. По умолчанию: гиперболический тангенс (tanh). Если передать None, активация не применяется (то есть используется линейная активация: a(x) = x).
recurrent_activation Функция активации для рекуррентного шага. По умолчанию: сигмоида (sigmoid). Если передать None, активация не применяется (то есть используется линейная активация: a(x) = x).
use_bias Логическое значение (по умолчанию True), указывающее, должен ли слой использовать вектор смещения.
kernel_initializer Инициализатор матрицы весов kernel, используемой для линейного преобразования входных данных. По умолчанию: "glorot_uniform".
recurrent_initializer Инициализатор матрицы весов recurrent_kernel, используемой для линейного преобразования рекуррентного состояния. По умолчанию: "orthogonal".
bias_initializer Инициализатор вектора смещения. По умолчанию: "zeros".
unit_forget_bias Логическое значение (по умолчанию True). Если значение равно True, при инициализации к смещению вектора забывания добавляется 1. Установка значения True также принудительно включает bias_initializer="zeros". Это рекомендовано в работе Jozefowicz и др.
kernel_regularizer Функция регуляризации, применяемая к матрице весов kernel. По умолчанию: None.
recurrent_regularizer Функция регуляризации, применяемая к матрице весов recurrent_kernel. По умолчанию: None.
bias_regularizer Функция регуляризации, применяемая к вектору смещения. По умолчанию: None.
kernel_constraint Функция ограничения, применяемая к матрице весов kernel. По умолчанию: None.
recurrent_constraint Функция ограничения, применяемая к матрице весов recurrent_kernel. По умолчанию: None.
bias_constraint Функция ограничения, применяемая к вектору смещения. По умолчанию: None.
dropout Число с плавающей запятой от 0 до 1. Доля блоков, исключаемых при линейном преобразовании входных данных. По умолчанию: 0.
recurrent_dropout Число с плавающей запятой от 0 до 1. Доля блоков, исключаемых при линейном преобразовании рекуррентного состояния. По умолчанию: 0.
seed Начальное значение генератора случайных чисел для dropout.
Аргументы вызова
inputs Двумерный тензор формы (batch, features).
states Двумерный тензор формы (batch, units), представляющий состояние на предыдущем временном шаге.
training Логическое значение Python, указывающее, должен ли слой работать в режиме обучения или в режиме вывода. Имеет значение только при использовании dropout или recurrent_dropout.

Пример:

inputs = np.random.random((32, 10, 8))
rnn = keras.layers.RNN(keras.layers.LSTMCell(4))
output = rnn(inputs)
output.shape
(32, 4)
rnn = keras.layers.RNN(
   keras.layers.LSTMCell(4),
   return_sequences=True,
   return_state=True)
whole_sequence_output, final_state = rnn(inputs)
whole_sequence_output.shape
(32, 10, 4)
final_state.shape
(32, 4)
Атрибуты
input Возвращает входные тензоры символьной операции.

Возвращает только тензоры, соответствующие первому вызову операции.

output Возвращает выходные тензоры слоя.

Возвращает только тензоры, соответствующие первому вызову операции.

Методы

from_config

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

@classmethod
from_config(
    config
)

Создает слой на основе его конфигурации.

Этот метод является обратным по отношению к get_config и позволяет создать экземпляр того же слоя на основе словаря конфигурации. Он не обрабатывает связи между слоями (это делает Network) и веса (это делает set_weights).

Аргументы
config Словарь Python, обычно являющийся результатом вызова get_config.
Возвращает
Экземпляр слоя.

get_dropout_mask

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

get_dropout_mask(
    step_input
)

get_initial_state

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

get_initial_state(
    batch_size=None
)

get_recurrent_dropout_mask

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

get_recurrent_dropout_mask(
    step_input
)

reset_dropout_mask

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

reset_dropout_mask()

Сбрасывает сохраненную маску dropout, если она есть.

Слой RNN вызывает этот метод в методе call(), чтобы очистить сохраненную маску после вызова cell.call(). Маска должна сохраняться на всех временных шагах в рамках одного пакета, но не должна сохраняться между пакетами.

reset_recurrent_dropout_mask

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

reset_recurrent_dropout_mask()

symbolic_call

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

symbolic_call(
    *args, **kwargs
)

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

Spec-Zone.ru

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