问题标签 [rnn]
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.
python - Tensorflow 将 LSTM 的最终状态保存在 dynamic_rnn 中用于预测
我想保存我的 LSTM 的最终状态,以便在我恢复模型时包含它并可用于预测。如下所述,当我使用 Saver 时,它只知道最终状态tf.assign
。但是,这会引发错误(也在下面解释)。
在训练期间,我总是将最终的 LSTM 状态反馈回网络,如本文所述。以下是代码的重要部分:
构建图表时:
在训练期间:
当我稍后从检查点恢复我的模型时,最终状态也没有恢复。如本文所述,问题在于 Saver 不知道新状态。该帖子还提出了一个基于tf.assign
. 很遗憾,我无法使用建议的
因为 self.init 状态不是变量而是占位符。我得到错误
AttributeError:“张量”对象没有属性“分配”
我已经尝试解决这个问题几个小时了,但我无法让它工作。
任何帮助表示赞赏!
编辑:
我已将 self.init_state 更改为
在训练期间,我没有为 self.init_state 提供值:
但是,我仍然无法运行分配操作。知道我得到
TypeError:预期的 float32 传递给 op 'Assign' 的参数 'value',得到 (LSTMStateTuple(c=array([[ 0.07291573, -0.06366599, -0.23425588, ..., 0.05307654,
python - 简单的 RNN 网络 - ValueError:使用序列设置数组元素
我对 TF 和 Python 完全失去了耐心,我无法让它工作,“ValueError: setting an array element with a sequence。” 调用 sess.run 时在 testx 上。
我尝试了很多不同的东西..几乎就像TF坏了一样,有人可以帮忙吗?
python - tensorflow static_rnn错误:输入必须是一个序列
我正在尝试将自己的 3D 数据提供给 LSTM。数据有:高度 = 365,宽度 = 310,时间 = 未知/不一致,由 0 和 1 组成,产生输出的每个数据块都被分隔到一个文件中。
这段代码给我一个错误:
time-series - 如何使用 lstm 学习可变时间间隔事件
我对如何使用 lstm格式化我的模型以进行可变时间间隔事件分类有点困惑。
我试图在时间维度上对事件进行分类。事件以不同的间隔发生(例如,Event1 和 Event2 的间隔为 3 秒,Event2 和 Event3 的间隔为 1.68 秒)。每个事件都有相同数量的特征来描述其特征。
令人困惑的是,这些事件之间的间隔对于分类问题也很关键。例如:
1) 如果 Event1 和 Event2 都具有特征 x = 0,并且间隔小于 1 秒,则这一系列事件将被归类为 1 类;
2) 如果 Event1、Event2 和 Event3 都具有特征 x = 1,并且间隔时间大于 2 秒,则这一系列事件将被归类为 2 类。
我搜索了很多与 rnn 时间序列问题相关的问题,并没有发现任何有用的信息。所以有人对格式化我的数据和模型来处理这个问题有很好的建议吗?
r - 无法使用 R 中的 rnn 包从二进制转换回 int
在 rnn 包中,可以使用 int2bin 将 int 转换为二进制。像
现在,当我们bin2int
在 a 上使用时,它应该给出 8。简单地说
bin2int(int2bin(8))
应该是 8。但它给出了别的东西:134217728。
为什么?将其转换回 int 的正确方法是什么?
machine-learning - 使用 RNN/LSTM 在过去事件的基础上预测未来事件
我得到一个数据集,其中我有一系列与特定人相关的任务:
这些任务通常按顺序执行。
我们如何预测每个人接下来执行的 10 项任务?
tensorflow - 张量流连续文本序列到序列。为什么要分批?
我正在构建一个序列到序列的莎士比亚预测器,并查看它似乎以 50 个字符为一组进行批处理的示例代码。我对此有点困惑。如果文本是连续的并且您正在处理 50 个字符的块,那么这肯定意味着您只会根据第 50 个字符之后的下一个预期字符来计算损失,并且模型永远不会针对下一个预期字符进行训练其他 49 个字符。换句话说,如果你有 1000 个字符和 20 组 50 个字符,那么它只会被教导预测 20 个不同的字符。这些批次不应该在每个时期移动一个随机偏移量,以便它学习如何预测其他字符吗?
这肯定不对吧?在我的理解中,我在这里缺少什么?
此外,批次是否总是按顺序处理?当状态被推进以表示先前的序列时,这当然很重要。
谢谢雷
7/24 更新:这是原始代码...
据我所见,它似乎没有重叠,但我是 Python 的新手,所以可能会遗漏一些东西。
tensorflow - TensorFlow:lstm dropout 实现,形状问题
我正在使用 TensorFlow 中的 lstm 模型进行预测项目。实现的结构有效,然而,得到了一个糟糕的结果,测试集的准确率只有 0.5。因此,我搜索了是否存在一些训练基于 lstm 的模型的技巧。然后我得到了“添加辍学”。
但是,按照其他人的教程,会出现一些错误。
这是原始版本,它有效:
更改为以下内容后,出现错误:
ValueError:形状(90,?)必须至少有 3 位
如果我的输入数据形状出错,我会感到困惑。在进入这个函数之前,输入x
的是形状(batch_size, time_step, data_size)
x
因此,每批的输入形状为[30,4,80]
。并且输入x[0,0,80]
的单词后面跟着单词x[0,1,80]
。设计有意义吗?
整个实现实际上是由其他教程修改的,我也想知道tf.unstack()
实际做了什么?
上面的几个问题......我已经将代码放在github中,上面提到了“工作版本”和“失败版本”。只有提到的功能不同!请查收,谢谢!
python - keras RNN ValueError:不支持无值
我正在用 GRU 制作一个 GAN 模型。
当我训练模型时,我得到:'ValueError: None values not supported'。
运行 train_on_batch() 函数时会引发错误。
目标是 y2 (数据看起来像这样。[[0. 1.] [0. 1.] ...... [0. 1.]])
我更改了 y2 的数据类型,但没有用。这是我的代码和错误消息。
我修改了这段代码->> https://github.com/kimsohyeon/KerasGAN
python-3.x - ValueError:使用 nltk ngram 在 keras 中设置具有序列的数组元素
这里使用特征 hashig。现在的问题需要给生成的散列向量和一个对应的一个热编码向量作为输入。但是 keras 程序抛出以下错误:
请说明错误原因和可能的解决方案
编辑 1
我附上了完整的错误堆栈,如下所示