我正在努力理解和实现多层LSTM。问题是我不知道他们是怎么联系的。我有两个想法:
请帮帮我!
发布于 2018-08-09 12:46:18
TLDR:在时间t和级别l的每个LSTM单元在第一层具有输入x(t)和隐藏状态h(l,t),输入是实际的序列输入x(t)和先前的隐藏状态h(l,t-1),在下一层中,输入是上一层h(l-1,t)中对应单元的隐藏状态。
来自https://arxiv.org/pdf/1710.02254.pdf
为了提高GRU网络的容量(,2013年),可以将递归层叠加在一起。由于GRU没有两个输出状态,相同的输出隐藏状态h'2被传递到下一个垂直层。换句话说,下一层的h1将等于h'2,这迫使GRU学习在深度和时间上有用的转换。
发布于 2017-11-24 07:03:20
我正在接受colah的博客文章的帮助,只是我会缩短它,以使您了解具体的部分。

正如您可以看到上面的图像,LSTM有这个链状结构,每个有四个神经网络层。
我们传递给下一个时间戳(单元格状态)和下一个层(隐藏状态)的值基本上是相同的,它们是期望的输出。此输出将基于我们的单元格状态,但将是一个过滤版本。首先,我们运行一个乙状结肠层,它决定我们要输出的单元格状态的哪些部分。然后,我们将单元格状态通过tanh (将值推到−1和1之间)并乘以乙状结肠门的输出,从而只输出我们决定通过的部分。
我们还将前一个单元格状态信息(从顶部箭头到下一个单元格)传递到下一个时间戳(单元状态),然后决定使用乙状结肠层(忘记门层),我们将继续从以前的状态中获取新输入和输入的信息。
希望这能有所帮助。
发布于 2019-11-08 19:11:24
在PyTorch中,多层LSTM的实现表明,上一层的隐藏状态将成为下一层的输入。所以你的第一个假设是正确的。
https://stackoverflow.com/questions/47466715
复制相似问题