【问题标题】:Should my seq2seq RNN idea work?我的 seq2seq RNN 想法应该可行吗?
【发布时间】:2017-08-10 18:58:57
【问题描述】:

我想预测股价。

通常,人们会将输入作为一系列股票价格提供。 然后他们会将输出作为相同的序列提供,但向左移动。

在测试时,他们会将预测的输出输入到下一个输入时间步,如下所示:

我还有一个想法,就是固定序列长度,比如50个时间步。 输入和输出的顺序完全相同。

在训练时,我将输入的最后 3 个元素替换为零,让模型知道我没有这些时间步长的输入。

在测试时,我会为模型提供 50 个元素的序列。最后 3 个为零。我关心的预测是输出的最后 3 个元素。

这个想法可行还是有缺陷?

【问题讨论】:

  • 请访问datascience.stackexchange.com 以获取该问题。即便如此,我还是建议您尝试一下您刚刚提出的建议,并亲自查看结果。

标签: tensorflow deep-learning keras rnn


【解决方案1】:

这个想法的主要缺陷是它不会为模型的学习增加任何东西,并且会降低其容量,因为您强制模型学习前 47 步 (50-3) 的恒等映射。请注意,提供 0 作为输入相当于不为 RNN 提供输入,作为零输入,在乘以权重矩阵后仍然为零,因此唯一的信息来源是偏差和前一个时间步的输出 - 两者都已经存在原来的配方。现在是第二个插件,我们有前 47 步的输出——学习恒等映射没有任何收获,但网络必须为此“付出代价”——它需要使用权重来按顺序编码这个映射不被处罚。

简而言之 - 是的,您的想法会奏效,但与原始方法相比,这种方式几乎不可能获得更好的结果(因为您没有提供任何新信息,也没有真正修改学习动态,但您通过请求每一步学习恒等映射来限制容量;尤其是它是一件非常容易学习的事情,因此梯度下降将首先发现这种关系,甚至在尝试“建模未来”之前。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-11
    • 2016-09-06
    • 2016-09-16
    • 2017-09-14
    • 2011-04-11
    • 2019-05-02
    相关资源
    最近更新 更多