0

我正在尝试实现 RNN 自动编码,我想知道注意力是否会改善我的结果。

我的最终目标是建立一个文档相似性搜索引擎,我正在寻找对文档进行编码的方法。

由于我对训练解码器而不是编码器感兴趣,因此注意力是否会为该过程增加价值?

4

1 回答 1

0

随着序列的长度增加到超过 RNN 的容量限制,性能将不断下降。

注意力机制允许 RNN 逐渐关注最优子序列,因此在最优场景中,性能不会受到序列最大长度的限制。注意力模型在语言翻译等 NLP 应用中的有效性得到了很好的证实。

在这种情况下,必须考虑一个权衡:整个注意力模型是用梯度下降端到端训练的。注意力权重形成一个形状矩阵,(len(input_seq), len(output_seq))训练它们有一个二次运行时间。因此,在以下情况下,注意力将是最有用的:

  1. 序列太长,无法通过常规 RNN 设置的容量来处理
  2. 序列不是那么长,以至于二次运行时间使它不值得。

无论如何,都有积极的研究来减少运行时间。有关论文参考和更多信息,我建议您查看Andrew Ng 的 Coursera 在深度序列建模中的第 3 周视频(免费访问)。该课程还涵盖了注意力模型的 Keras 实现以及一些漂亮的图。

希望这可以帮助!干杯,
安德烈斯

于 2018-11-11T13:12:37.227 回答