问题标签 [lstm-stateful]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
108 浏览

python - 如何在纯 Tensorflow 中重写 Keras Stateful LSTM?

任何人都可以分享关于如何将 Keras 有状态 LSTM 转换为纯 Tensorflow 模型的想法/博客/代码片段?然后批量训练它..

Tensorflow 不支持TPU 上的 Keras Stateful LSTM。他们的开发人员拒绝修复它。

我保留了大量的 TPU 时间,暂时无法使用它。任何帮助表示赞赏。

模型示例和训练代码:

GitHub问题:https ://github.com/tensorflow/tensorflow/issues/28837

0 投票
1 回答
180 浏览

python - 为什么在这个简单的代码中我的准确率总是 0.2

我是这个领域的新手,并试图重新运行从互联网复制的示例 LSTM 代码。LSTM 模型的准确度始终为 0.2,但预测输出完全正确,这意味着准确度应为 1。谁能告诉我为什么?

0 投票
0 回答
635 浏览

tensorflow - 在 LSTM 上添加 return_state=True 时,这两个结构没有相同的嵌套结构

我不知道这是一种错误还是错误。我也在这里报告了这个问题。

我想做的事情是我想让我的自定义 LSTM 有状态。所以这段代码运行without良好return_state=True。一旦我将它添加到代码中,它就会引发这个错误:The two structures don't have the same nested structure

这是一个可重现的代码:

更新1

在应用了评论的想法后tf.map_fn(row_entropy, encoded,dtype=tf.float32),我收到了一个新的错误:

另外,考虑到即使没有那个 lambda 层也会引发这个错误,所以似乎还有其他问题。如果我尝试encoded.shape,它会说encoded是一个列表,length 5但是它必须是一个张量(batch_size, latent size)!!!

一切都很好,没有添加return_state=True 任何帮助表示赞赏!

0 投票
2 回答
3199 浏览

python - Keras:跨训练示例共享一层权重(不在层之间)

问题如下。我有一个词汇量为 25K 的分类预测任务。在其中一个(输入词汇 10K,输出昏暗,即嵌入 50)上,我想引入一个可训练的权重矩阵,用于输入嵌入(形状 1,50)和权重(形状(50,128))之间的矩阵乘法(无偏差) 并且得到的向量分数是预测任务和其他特征的输入。

关键是,我认为每个输入的可训练权重矩阵都会有所不同,如果我只是将它添加进去的话。我希望这个权重矩阵在所有输入中都是通用的。

我应该澄清一下——这里的输入是指训练示例。因此,所有示例都将学习一些特定示例的嵌入,并乘以共享权重矩阵。

每隔这么多 epoch 之后,我打算做一个批量更新来学习这些常见的权重(或者使用其他目标变量来做多个输出预测)

长短期记忆法?这是我应该在这里调查的吗?

0 投票
0 回答
92 浏览

python - LSTM 时间序列异常检测

我正在尝试使用 LSTM 在时间序列中找到异常。而且我仍然想知道,根据时间序列过去的行为发现异常的正确架构、时间步长、批量大小、滑动或非滑动窗口应该是什么

它给了我一个输出

对我来说,这看起来不像是异常迹象。有状态是根据过去的行为发现异常的更好方法吗?即使是正态高斯分布也可以很容易地告诉我这里的异常,但它不会占用时间效果

0 投票
1 回答
184 浏览

keras - 在 keras API 中为 LSTM 单元提供输入

我正在阅读深度学习中的 LSTM。来自 Andrew Ng 教授课程 LSTM 每个 LSTM 单元的三个输入。

输入是来自前一个单元的单元状态,即“c”上标(t-1)和 LSTM 单元“a”上标(t-1)和输入 x 上标(t)的输出。

LSTM 单元的输出是当前单元状态,即“c”上标 (t) 和 LSTM 单元“a”上标 (t) 的输出。

我们如何在 keras 中为上述输入传递 LSTM 单元的初始化参数?

谢谢您的帮助。简单的例子会很有帮助。

0 投票
2 回答
11027 浏览

pytorch - Pytorch LSTM 与 LSTMCell

Pytorch(当前版本 1.1)中的LSTMLSTMCell有什么区别?LSTMCell 似乎是 LSTM 的一个特例(即只有一层,单向,没有 dropout)。

那么,这两种实现的目的是什么?除非我遗漏了什么,否则将 LSTM 对象用作 LSTMCell 是微不足道的(或者,使用多个 LSTMCell 来创建 LSTM 对象非常容易)

0 投票
0 回答
362 浏览

python - 如何修复“无法使用形状为 [1000] 的张量更新形状为 [] 的变量,形状必须相等。” keras LSTM网络中的错误?

我正在尝试开发一个有状态的 LSTM 网络。我将使用算法超参数搜索,但在此之前,它应该使用默认参数,但是,它没有。我不断收到“tensorflow.python.framework.errors_impl.InvalidArgumentError:无法使用形状为 [1000] 的张量更新形状为 [] 的变量,形状必须相等。” 我已经没有关于如何解决这个问题的想法了。

模型创建

一切似乎都很好。

训练和测试,输入和输出形状

训练输入形状:(86000, 1, 14) 训练输出形状:(86000, 1, 4) 测试输入形状:(70000, 1, 14) 测试输出形状:(70000, 1, 4)

网络总结:

问题出现在执行此操作:

有人有什么建议吗?

0 投票
0 回答
91 浏览

python - Keras:如何从 LSTM 的几层中检索隐藏状态和/或单元状态?

需要一些帮助来为每一层的以下 LSTM 模型捕获隐藏状态和/或单元状态

我可以拼凑在一起的python代码摘录:

如何保存每一层的隐藏状态和/或单元状态?到目前为止,我在网上可以找到的所有示例都只使用了一层。

请帮忙。

0 投票
1 回答
58 浏览

keras - 使用 lstm 进行基本时间序列预测

我有一个序列,我想做最简单的 LSTM 来预测序列的其余部分。这意味着我想从仅使用上一步来预测下一个步骤开始,然后添加更多步骤。我也想使用预测值作为输入。所以我相信我想要的是实现许多对多如Understanding Keras LSTMs的答案中提到的。

我已经阅读了有关 stackoverflow 主题的其他问题,但仍然无法使其正常工作。在我的代码中,我使用这里的教程https://machinelearningmastery.com/time-series-prediction-lstm-recurrent-neural-networks-python-keras/和函数 create_dataset 来创建两个数组,只有一个移位一步。

这是我的代码和我得到的错误。

你知道为什么我有这样的错误,因为我似乎做了上述主题中的所有事情吗?