как использовать NStepLSTM или BiNStepLSTM в цепочке?

как использовать NStepLSTM или BiNStepLSTM? Я вижу ссылку, она должна предоставлять аргумент в виде списка переменных, что это за список?

Как использовать его для соединения другого слоя Link ??


person machen    schedule 23.08.2017    source источник


Ответы (1)


NStepLSTM предполагает, что входные данные представляют собой мини-пакеты последовательностей, которые могут иметь разную длину. Вход представляет собой список этих последовательностей. Каждая последовательность представлена ​​переменной формы (T, D), где T — длина последовательности, а D — размерность каждого элемента в последовательности (если вы имеете дело с текстовыми данными, D может быть размерностью слоя внедрения).

Затем NStepLSTM.__call__ возвращает кортеж из трех: окончательные скрытые состояния, окончательные состояния ячеек и выходные последовательности в том же формате, что и входные последовательности (список переменных). Вы можете комбинировать его с другими функциями или ссылками. Например, вы можете передать каждую переменную в выходных последовательностях некоторой функции потерь, чтобы получить потери.

person Seiya Tokui    schedule 24.08.2017
comment
Вы имеете в виду, что ввод - это список мини-пакетов? допустим, у меня есть статья разной длины предложения. каждое предложение имеет переменную форму (T, D). D - это размер встраивания слова, поэтому ввод - это целая статья? это было бы дорого памяти! Потому что это исчерпает всю память графического процессора, если мы введем всю последовательность в графический процессор? - person machen; 24.08.2017
comment
Вы имеете в виду, что возвращаемое 3-е значение также возвращает все выходные данные временного шага, и вся последовательность на каждом временном шаге будет возвращена? - person machen; 24.08.2017
comment
Если вся последовательность слишком длинная, чтобы уместиться в памяти, вы должны разделить предложение на несколько частей и выполнить усеченный BPTT (как это делает пример моделирования официального языка (ptb) Chainer). Третий элемент возвращенного кортежа имеет ту же длину, что и входные данные для NStepLSTM. - person Seiya Tokui; 28.08.2017
comment
Должен ли вход в список NStepLSTM иметь временной порядок? Я знаю, что каждая переменная T x D должна иметь временной порядок. Означает ли это, что список T x D, этот список будет строгим к одному и тому же порядку: первый элемент - это событие, когда впервые происходит событие, второй продолжает событие первого элемента списка? - person machen; 05.11.2017
comment
вводит ли NStepLSTM этот список переменных: между каждой переменной внутри этого списка должна быть временная корреляция??? - person machen; 01.03.2018
comment
Если я хочу использовать только последний временной шаг для расчета потерь, поскольку NStepLSTM возвращает 3 переменные (конечные скрытые состояния, конечные состояния ячеек и выходные последовательности), должен ли я использовать последний или первый? - person machen; 04.03.2018