TensorFlow BasicLSTMCell против LSTMFusedBlockCell

Я новичок в TensorFlow. Мне удалось построить график, который использует LSTM для обучения базовой модели с использованием BaiscLSTMCellна основе учебника TensorFlow.

Но мне нужно сделать это быстрее. Я видел сравнение здесь, и, поскольку у меня нет графического процессора Nvidia, LSTMBlockFusedCell кажется лучшим вариантом. Я взглянул на документацию и заметил, что подписи __init__() а также __call__() функции разные. В частности, я беспокоюсь о cell_clip параметр в __init()__ и sequence_length в вызове. Более того, inputs тензор имеет форму [time_len, batch_size, input_size]; не отличается ли это от базовой ячейки ([batch_size, time_len, input_size])? Я не хочу использовать глазки, поэтому я оставлю это False (дефолт).

Может ли кто-нибудь объяснить, есть ли какие-либо другие различия (помимо улучшения производительности) между BasicLSTMCell и LSTMBlockFusedCell и как правильно установить параметры, упомянутые выше, чтобы достичь того же результата, что и оригинал?

1 ответ

Документация для LSTMBlockCell говорит, что он должен быть совместим с LSTMCellпоэтому одни и те же аргументы должны иметь одинаковое значение.

Независимо от того, является ли входной тензор первым или по времени, ячейка не связана с ячейкой и связана с используемой вами динамической_статей / статической_рнн.

Другие вопросы по тегам