位置: IT常识 - 正文
推荐整理分享【nn.LSTM详解】(nn.lstm输出),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:lstm csdn,nn.lstm输出,lstm+cnn,lstm dnn,nn.lstm参数,nn.lstm输出,nn.lstm输出,nn.lstm输出,内容如对您有帮助,希望把文章链接给更多的朋友!
nn.LSTM是pytorch中的模块函数,调用如下:
torch.nn.lstm(input_size,hidden_size,num_layers,bias,batch_first,dropout,bidirectional)详细介绍一下参数: input_size:表示的是输入的矩阵特征数,或者说是输入的维度; hidden_size:隐藏层的大小(即隐藏层节点数量),输出向量的维度等于隐藏节点数; num_layers:lstm 隐层的层数,默认为1; bias:隐层状态是否带 bias,默认为 true; batch_first:True 或者 False,如果是 True,则 input 为(batch, seq, input_size),默认值为:False(seq_len, batch, input_size) dropout:默认值0,除最后一层,每一层的输出都进行dropout; bidirectional:如果设置为 True, 则表示双向 LSTM,默认为 False。
输入输出nn.LSTM中输入与输出关系为output, (hn, cn) = lstm(input, (h0, c0)),输入输出格式如下:
##输入数据格式:input(seq_len, batch, input_size)h0(num_layers * num_directions, batch, hidden_size)c0(num_layers * num_directions, batch, hidden_size)##输出数据格式:output(seq_len, batch, hidden_size * num_directions)hn(num_layers * num_directions, batch, hidden_size)cn(num_layers * num_directions, batch, hidden_size)input (seq_len, batch, input_size),seq_len表示每个batch输入多少数据,batch表示把数据分成了batch批,input_size为样本输入维度。
output(seq_len, batch, hidden_size * num_directions),output是一个三维张量,第一维表示序列长度,第二维表示数据批次的多少batch,即数据分为几批送进来,第三维hidden_size隐藏层大小,双向则二倍,单向则等价于隐藏层大小。 hn是一个三维张量,第一维是num_layers*num_directions,num_layers是我们定义的神经网络的层数,num_directions表示是否为双向LSTM;第二维表示一批的样本数量;第三维表示隐藏层的大小。 c_n与h_n一致。
上一篇:计算机视觉学习笔记(图像的灰度与灰度级 图像的深度 图像噪声 图像处理)(计算机视觉技术的应用)
下一篇:使用uni-app开发App简易教程(使用uni-app开发网站)
友情链接: 武汉网站建设