问题标签 [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 投票
4 回答
8955 浏览

python - 为什么我会收到 Keras LSTM RNN input_shape 错误?

我不断从以下代码中收到 input_shape 错误。

以上一切运行顺利。这就是它出错的地方。

它返回此错误。

当我查看网站时,它说要指定一个元组“(例如(100,),用于 100 维输入)”。

话虽如此,我的数据集由一列长度为 10320 的列组成。我认为这意味着我应该(10320,)作为 input_shape 输入,但无论如何我都会收到错误消息。有没有人有办法解决吗?

0 投票
0 回答
154 浏览

lua - 在 Torch 中保存 lstm 语言模型

我在https://github.com/wojzaremba/lstm/blob/master/main.lua中使用 lstm 语言模型

我想在训练结束时保存模型以备后用。我在培训结束时添加了以下行

这似乎成功地保存了模型。但是,当我尝试加载该模型并对其进行测试时,我感到非常困惑。只是为了测试,我跑了一个小训练实例,导致测试集困惑度为 134,然后保存模型。然后我加载了保存的模型并在同一个测试集上应用了完全相同的测试方法(函数 run_test),但我得到了 71675.134 的巨大困惑(即使使用随机权重也比这低得多!)。我尝试只保存和加载权重,在保存之前将它们转换为 float(),或者将它们保存为 cudaTensors,所有这些都给了我相同的结果。

这是保存整个模型后加载和测试的代码;我只修改了原始 main.lua 中的 main 方法:

0 投票
1 回答
885 浏览

nlp - NLP中LSTM的输入是否需要相同的长度?

使用 LSTM 进行文本情感分类问题的输入是什么?

每个句子都需要相同的长度吗?或者没有?

谁能用两个句子的例子一步一步地解释它?

例子:

一个。我喜欢这本书。湾。我不喜欢这本书。

0 投票
1 回答
248 浏览

python - 如何使用变量的最后一个状态作为 Tensorflow 中的下一个状态?

出于学习目的,我想在 Tensorflow 中构建自己的 LSTM 模型。问题是,如何训练是使用上一个时间步的状态来初始化某个时间步的状态。Tensorflow 中是否有这种机制?

0 投票
1 回答
659 浏览

tensorflow - 如何使用 Tensorflow 的 LSTM 单元作为更大图的一部分?

内置的 LSTM 单元为您提供了一个可调用的。但是,我想在 LSTM 层之前和之后添加静态层,并通过反向传播训练所有内容。那可能吗?

0 投票
2 回答
8303 浏览

python - Predicting the next word using the LSTM ptb model tensorflow example

I am trying to use the tensorflow LSTM model to make next word predictions.

As described in this related question (which has no accepted answer) the example contains pseudocode to extract next word probabilities:

I am confused about how to interpret the probabilities vector. I modified the __init__ function of the PTBModel in ptb_word_lm.py to store the probabilities and logits:

Then printed some info about them in the run_epoch function:

This produces output like this:

I was expecting the probs vector to be an array of probabilities, with one for each word in the vocabulary (eg with shape (1, vocab_size)), meaning that I could get the predicted word using np.argmax(probs, 1) as suggested in the other question.

However, the first dimension of the vector is actually equal to the number of steps in the unrolled LSTM (20 if the small config settings are used), which I'm not sure what to do with. To access to the predicted word, do I just need to use the last value (because it's the output of the final step)? Or is there something else that I'm missing?

I tried to understand how the predictions are made and evaluated by looking at the implementation of seq2seq.sequence_loss_by_example, which must perform this evaluation, but this ends up calling gen_nn_ops._sparse_softmax_cross_entropy_with_logits, which doesn't seem to be included in the github repo, so I'm not sure where else to look.

I'm quite new to both tensorflow and LSTMs, so any help is appreciated!

0 投票
1 回答
326 浏览

python - 短文本情感分类任务所需的最小训练集大小是多少

我正在尝试为产品评论和推文等短文本的情感分类任务训练 LSTM 模型。

我正在寻找一个标签为正面/负面/中性的训练集,那里有没有真正基于人类标签而不是开始或表情符号的东西(免费研究)?我发现只有小的训练集导致我的结果很差。我试图增加我的网络和堆叠层的大小,但没有任何改善。

为了开始获得合理的结果(F1 > 0.8),这样的训练集的最小大小是多少。

0 投票
1 回答
59 浏览

machine-learning - 使用单个输出分类为三个类

我正在使用 LSTM 进行情绪分类,并且我有三个可选类 - 负面/正面/中性。

我想知道是否有一种方法可以使用单个输出进行此分类,该输出将在 -1:1 的范围内,而 -1 是中性类,0 是负类,1 是正类。

我知道sigmoid函数从 0 到 1,tanh从 -1 到 1,所以使用tanh可能是一个很好的引导,但是使用单个输出分类到三个不同的类仍然有意义吗?

0 投票
0 回答
269 浏览

numpy - 使用 Torch 使用 LSTM 进行时间序列预测

我的主要问题是我应该如何预处理我的数据集,该数据集基本上是一个 60 分钟的序列数字输入,将导致 1 小时的输出。知道每分钟每个输入向量都会产生一些输出,但不幸的是,直到 1 小时过去后才能观察到该输出。

我考虑考虑将 60 个输入作为一个大输入向量,对应于普通 ML 分类器上的 1 小时输出,因此一次有 1 个样本。但我认为这不再是时间序列了。

我怎样才能表示它在 LSTM 环境中是可行的?

0 投票
1 回答
1019 浏览

tensorflow - 如何在 Tensorflow 中使用 LSTM 模型生成例句?

我正在使用Tensorflow 中的 LSTM 模型
我已经训练并保存了 LSTM 模型。现在我要完成生成句子的最后一个任务。这是我的伪代码:

我的问题是:
在训练、验证或测试模型时,我必须通过feed_dict字典将输入及其标签(通过移位的输入之一)输入到模型中。但是在生成任务中,我只有一个输入,即生成语句new_sentence

如何构建正确的get_logits函数或完整的生成函数?