ht=tαnh(WihXt+bih+whhht-1+bhh)
在pytorch中我们使用nn.RNN()就可以创建出RNN神经网络,它有如下参数:
input_size表示输入xt的特征维度
hidden_size表示输出ht的特征维度,或者理解为隐藏层的神经元数
num_layers表示RNN网络的层数,默认是1层
nonlinearity表示非线性激活函数的选择,默认tanh,当然也可以选择relu
bias表示是否使用偏置,默认是Ture,使用batch_first这个参数是决定网络输入的维度顺序,默认是(seq,batch,feature)输入,seq表示序列长度,batch表示批量,feature表示特征维度,我们也可以将其修改为(batch,seq,feature),只用将这个参数设置为True dropout个参数接受一个0~1的数值,这个dropout层会在除了最后一层之外的其他输出层加上bidirectional默认的False,如果我们要是使用双向循环网络的话,那么我们就可以设置这个参数是True