RCNN

RCNN

首先从这里通俗易懂理解——双向LSTM我了解到对于RNN来说,上一层的隐层仓的输出和这一时刻输入
两者向量拼接作为输入。这一层的输入维度取决于输入神经元的个数,隐层的输入维度取决于rnn隐层的神经元的个数。

通过这个知识点的了解,我就知道为什么在 这个教程中
lstm在初始化h0 c0的时候采取
h0 = torch.zeros(self.num_layers, x.size(0), self.hidden_size).to(device)
c0 = torch.zeros(self.num_layers, x.size(0), self.hidden_size).to(device)

如果说是个双向的lstm,我们就要使用self.num_layers x 2

莫凡教程
中,它对h和c的维度有一个概括,是这样说的。
h_n shape (n_layers, batch, hidden_size)
h_c shape (n_layers, batch, hidden_size)

对于双向lstm来说,我们使用pytorch代码之后,得到的隐层状态是两个单层lstm隐层状态的拼接这里

RCNN代码看这里

TextRCNN 文本分类 阅读笔记 - 今天做作业没的文章 - 知乎
https://zhuanlan.zhihu.com/p/42201550

原文地址:https://www.cnblogs.com/lzida9223/p/10535975.html