关于 Stacked BiLSTM多层 BiLSTM的问题

问题描述

我注意到单层 BiLSTM 由两个独立(单向)LSTM 层组成,一个用于正向,另一个用于反向。然后将两个 LSTM 层的输出连接在一起,连同 hidden dim(始终为 dim = -1),以形成这个 BiLSTM 层的输出

而对于多层模型,每个内层都接受上一层的输出,然后将计算结果输出到下一层。

到目前为止,没有歧义。

但是对于多层 BiLSTM,我发现了一些歧义。由于每个 BiLSTM 层有两个独立的 LSTM,我不知道内层接受的正确输入。

上一层的连接输出? (如果这是真的,这意味着内部 LSTM 层的 input_size,无论是从左到右还是从右到左,都是 2 * (hidden_size of the prevIoUs layer))(see this implementation)({{ 3}})

或者将多层 BiLSTM 视为两个单向多层 LSTM(一个用于 left_to_right,另一个用于 right_to_left),每个单向 LSTM 只接受来自前一层的输出。那么,在两个多层单向 LSTM 计算完成后,我们将每层的从左到右和从右到左的输出连接起来,形成每个 BiLSTM 层的输出? (and see this picture from: Illustrating the use of two BiLSTMs for Semantic Role Labelling. Source: He et al. 2017,fig. 1.)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)