我正在关注这个 pytorch 教程,并尝试将此原则应用于摘要,其中编码序列约为 1000 个单词,解码器目标为 200 个单词。
我该如何申请seq2seq
?我知道一次完成 1000 个单词的整个序列会非常昂贵并且几乎不可行。因此,将 seq 分成 20 个 seq 并并行运行可能是一个答案。但我不确定如何实现它;我也想把注意力融入其中。
我正在关注这个 pytorch 教程,并尝试将此原则应用于摘要,其中编码序列约为 1000 个单词,解码器目标为 200 个单词。
我该如何申请seq2seq
?我知道一次完成 1000 个单词的整个序列会非常昂贵并且几乎不可行。因此,将 seq 分成 20 个 seq 并并行运行可能是一个答案。但我不确定如何实现它;我也想把注意力融入其中。
您无法及时并行化 RNN(此处为 1000),因为它们本质上是顺序的。
您可以使用轻量级 RNN,例如QRNN或SRU作为更快的替代方案(仍然是顺序的)。
另一个常见的序列处理模块是TCN和Transformers,它们都可以在时间上并行化。
另外,请注意,所有这些都可以在使用时注意并与文本完美配合。