#时间序列预测分析就是利用过去一段时间内某事件时间的特征来预测未来一段时间内该事件的特征。这是一类相对比较复杂的预测建模问题,和回归分析模型的预测不同,时间序列模型是依赖于事件发生的先后顺序的,同样大小的值改变顺序后输入模型产生的结果是不同的。
#时间序列模型最常用最强大的的工具就是递归神经网络(recurrent neural network, RNN)。相比与普通神经网络的各计算结果之间相互独立的特点,RNN的每一次隐含层的计算结果都与当前输入以及上一次的隐含层结果相关。通过这种方法,RNN的计算结果便具备了记忆之前几次结果的特点。
#LSTM(Long Short-Term Memory)模型是一种RNN的变型,可以处理rnn模型的局限性
#这里实现pytorch的LSTM来预测未来的风速的模型
#导包(都用得到)
import torch
from torch.autograd import Variable
import torch.nn as nn
import pandas as pd
from pandas import DataFrame
import matplotlib.pyplot as plt
import numpy as np
#原始数据
#时间序列问题,时间的那一列是不代入训练或者测试的,所以时间列可以删除。是用前几行的预测下一行的。通俗点[1,2,3,4,5,6,7],可以通过1,2,3预测出4,。然后2,3,4预测出5.训练的时候跟时间列没关系
df1 = pd.read_excel(r'D:\Personal\Desktop\cs3h.xlsx')