问题标签 [lstm]

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 投票
2 回答
862 浏览

python - Pybrain - lstm 序列错误预测

你好,

我有一个看起来像这样的序列(加上更多的零):

[ 0, 0.66 , 0 ,0.66 ,0 ,0 ,0 ,0.55 ,0 ,0 ,0 ,3.18 ,0 ,0 ,2 ,0.6 ,0]

我在 python 中有以下代码,其方式与:

使用 LSTM 循环网络的 Pybrain 时间序列预测

在训练集上获得预测:

然后我注意到网络从不预测零,总是在 0.10 左右。我应该如何调整我的网络以获得良好的结果?

谢谢

0 投票
1 回答
1337 浏览

c - 这是用 Torch 从 LuaJit 解决“内存不足”的实用方法吗

StanfordNLP 的 TreeLSTM与具有 > 30K 实例的数据集一起使用时,会导致 LuaJit 出现“内存不足”错误。我正在使用LuaJit Data Structures解决这个问题。为了从 lua 的堆中获取数据集,需要将树放置在 LDS.Vector 中。

由于 LDS.Vector 保存 cdata,第一步是将 Tree 类型变成 cdata 对象:

还需要在 read_data.lua 中进行一些小的更改来处理新的 cdata CTree 类型。到目前为止,使用 LDS 似乎是解决内存限制的合理方法。但是,CTree 需要一个名为“composer”的字段。

Composer 属于 nn.gModule 类型。要继续此解决方案,将涉及创建 nn.gModule 的 typedef 作为 cdata,包括为其成员创建 typedef。在继续之前,这似乎是正确的方向吗?有没有人有这个问题的经验?

0 投票
0 回答
343 浏览

neural-network - Neural Network Reinforcement Learning Requiring Next-State Propagation For Backpropagation

I am attempting to construct a neural network incorporating convolution and LSTM (using the Torch library) to be trained by Q-learning or Advantage-learning, both of which require propagating state T+1 through the network before updating the weights for state T.

Having to do an extra propagation would cut performance and that's bad, but not too bad; However, the problem is that there is all kinds of state bound up in this. First of all, the Torch implementation of backpropagation has some efficiency shortcuts that rely on the back propagation happening immediately after the forward propagation, which an additional propagation would mess up. I could possibly get around this by having a secondary cloned network sharing the weight values, but we come to the second problem.

Every forward propagation involving LSTMs is stateful. How can I update the weights at T+1 when propagating network(T+1) may have changed the contents of the LSTMs? I have tried to look at the discussion of TD weight updates as done in TD-Gammon, but it's obtuse to me and that's for feedforward anyway, not recurrent.

How can I update the weights of a network at T without having to advance the network to T+1, or how do I advance the network to T+1 and then go back and adjust the weights as if it were still T?

0 投票
2 回答
11850 浏览

neural-network - 用于 Caffe 的 LSTM 模块

有谁知道是否存在适用于 Caffe 的不错的 LSTM 模块?我从 russel91 的 github 帐户中找到了一个,但显然包含示例和解释的网页消失了(以前的http://apollo.deepmatter.io/ --> 它现在只重定向到没有示例或解释的github 页面)。

0 投票
0 回答
824 浏览

javascript - Synaptic JS LSTM 占用太多内存

使用https://github.com/cazala/synaptic

我通过 Architect 尝试了 LSTM 模块,配置如下:

然后我的算法进行大约 450 - 500 次迭代,并且在每次迭代时它激活网络,然后传播正确的输出值。

在 400 - 500 次迭代之后,它突然停止并开始占用大约 14GB 的内存。在这一步之前,它使用了大约 1GB。

我不知道它是由跟踪还是优化引起的,但是网络无法使用。

我已经测试了其余代码是否存在内存泄漏,我发现问题是由激活函数引起的。

这是演示此问题的示例代码。在我的配备 Intel Core i5 和 8GB RAM 的 MacBook Pro 上,它在步骤 512 处停止并开始消耗高达 14GB 的内存。

有什么想法可能出问题吗?

我也将此作为问题发布https://github.com/cazala/synaptic/issues/56

我已经尝试过 Python PyBrain 库,它非常快,但它具有不同的神经网络和 LSTM 实现。我需要通过以下论文进行精确实施,因为它有最好的结果。

http://www.overcomplete.net/papers/nn2012.pdf

0 投票
2 回答
1483 浏览

python - 无法弄清楚我的 Lasagne LSTM 的问题

我很好奇是否有人有任何见解。即使您无法弄清楚问题,我该如何开始调试它。我必须说,我在theano方面并不强。

输入数据是形状为 (10,15,10) 的 numpy 张量

这里是。它在我刚刚将输入连接到密集层时运行。

这是错误。这有点笨拙。

0 投票
0 回答
397 浏览

classification - 用于分类的双向 LSTM

我已经完成了搜索“如何为分类问题(比如虹膜数据)实现双向 lstm 网络”。我还没有找到任何令人满意的答案。在几乎所有情况下,我都找到了一个解决方案,其中为序列预测问题实施了 BLSTM。我的简单问题是,如何在pybrain中创建双向网络。就像每当我试图建立一个我正在写的 *

网络=pybrain.BidirectionalNetwork()

* 我的意图是稍后通过 pybrain.addInputModule() 左右添加模块。但它当然是失败的,因为我没有指定 seqlen

如果我有 4 个输入和 3 个输出(如虹膜数据)和 150 个样本数据,那么 seqlen 会是什么。会是150吗?事情还不清楚,因为我没有分类问题的例子。

0 投票
3 回答
11674 浏览

python - 实现双向 LSTM-CRF 网络

我需要在最后实现一个带有 CRF 层的双向 LSTM 网络。具体是本文提出的模型,并对其进行训练。

http://www.aclweb.org/anthology/P15-1109

我想最好在 Python 中实现它。任何人都可以提供一些库或示例代码来说明如何做到这一点。我查看了 PyBrain,但并不能真正理解它。

我也对其他编程语言的工具包持开放态度。

0 投票
1 回答
87 浏览

python-2.7 - cPickle.load() doesnt accept non-.gz files, what can I use for .pkl files?

I am trying to run an example of a LSTM recurrent neural network that is presented in this git: https://github.com/mesnilgr/is13.

I've installed theano and everything and when I got to the point of running the code, I've noticed the data was not being downloaded, so I've opened an issue on the github (https://github.com/mesnilgr/is13/issues/12) and this guy came up with a solution that consisted in:

1-get the data from the dropbox link he provides. 2- change the code of the 'load.py' file to download, and read the data properly.

The only issue is that the data in the dropbox folder(https://www.dropbox.com/s/3lxl9jsbw0j7h8a/atis.pkl?dl=0) is not a compacted .gz file as, I suppose, was the data from the original repository. So I dont have enough skill to change the code in order to do with the uncompressed data exaclty what it would do with the compressed one. Can someone help me?

The modification suggested and the changes I've done are described on the issue I've opened on the git(https://github.com/mesnilgr/is13/issues/12).

0 投票
2 回答
1269 浏览

python - 使用 Keras io 进行最简单的 Lstm 训练

我想使用 keras python 库创建最简单的 LSTM。

我有以下代码:

但似乎不起作用...

谁能解释我到底出了什么问题?

我也尝试转置矩阵,但不是这样。