如何解决关于 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 举报,一经查实,本站将立刻删除。