【问题标题】:Why does my LSTM stablize to fix point?为什么我的 LSTM 会稳定到固定点?
【发布时间】:2015-07-22 02:53:21
【问题描述】:

我已经通过一个序列训练了一个 LSTM,并尝试测试它是否可以合成一些输出序列,但有趣且不幸的是,它非常快,即在 2 个时间步之后,稳定到一个固定的输出,这意味着一个序列完全相同的值。

现在我已经更改了初始化,但经过 2 步后输出始终相同。训练或抽样中可能有什么问题?

抱歉,我无法提供更多上下文,因为整个程序太大,无法在此处发布。

【问题讨论】:

    标签: neural-network deep-learning lstm


    【解决方案1】:

    您的训练或采样没有任何问题 - 这是“纯”LSTM 网络的预期行为。要对数据中的方差进行建模,请不要让网络直接预测下一个时间步的值。相反,您的网络应该为您提供下一个时间步的可能值的概率分布,然后您可以从中进行采样。

    如何做到这一点的两个例子:

    • 离散数据,例如文本:在 LSTM 之上堆叠一个 softmax 层,它为您提供每个字母的概率,然后从这些概率中采样 - 这也在 Karparthy 的臭名昭著的char-rnn 中实现,请参阅“温度”段落
    • 连续数据,例如timeseries:让网络预测混合分布的参数(即高斯的线性组合),然后从中采样 - 我非常推荐Graves 2013中的笔迹预测部分,或者你可以看看第5章this report我最近写了一个研究项目

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-04
      • 2016-08-30
      • 1970-01-01
      相关资源
      最近更新 更多