系列文章目录
lstm系列文章目录
1.基于pytorch搭建多特征LSTM时间序列预测代码详细解读(附完整代码)
2.基于pytorch搭建多特征CNN-LSTM时间序列预测代码详细解读(附完整代码)
前言
除了LSTM神经网络,一维CNN神经网络也是处理时间系列预测和分类的一种重要工具,本文不从理论上赘述CNN处理时间序列,仅通过代码复现向大家展示CNN+LSTM是如何具体的运作的。另外,数据集和数据预处理仍沿用之前文章基于pytorch搭建多特征LSTM时间序列预测代码详细解读(附完整代码),本文不再赘述其细节,主要复现网络结构的变动。
一、数据展示
本次实验的数据集仍沿用前文数据集,一共三个特征,经过预处理后数据集维度为(604,3,3)
二、模型构建
1.网络模型构建
代码如下:
def __init__(self,in_channels,out_channels,hidden_size,num_layers,output_size,batch_size,seq_length) -> None:
super(convNet,self).__init__()
self.in_channels=in_channels
self.out_channels=out_channels
self.hidden_size=hidden_size
self.num_layers=num_layers
self.output_size=output_size
self.batch_size=batch_size
self.seq_length=seq_length
self.num_directions=1 # 单向LSTM
self.relu = nn.ReLU(inplace=True)
# (batch_size=64, seq_len=3, input_size=3) ---> permute(