目录
解决需求
利用LSTM模型实现【单变量多步输入+单变量多步输出】预测,即向LSTM模型中输入N个步长的单变量序列,得到该变量未来M个步长的输出预测值。
案例
利用LSTM模型预测上证指数最高价n_forecast步长的未来值。
代码
import numpy as np
import pandas as pd
#import yfinance as yf
import tensorflow as tf
from tensorflow.keras.layers import Dense, LSTM
from tensorflow.keras.models import Sequential
from sklearn.preprocessing import MinMaxScaler
import matplotlib.pyplot as plt
pd.options.mode.chained_assignment = None
tf.random.set_seed(0)
# 加载数据
shangzheng_DailyK_filepath = r'D:\个人文件\上证指数2012.xlsx'
shangzheng_DailyK = pd.read_excel(shangzheng_DailyK_filepath)
y = shangzheng_DailyK.copy()[['date', 'high']][:1000]
y.index = pd.DatetimeIndex(y['date'])
y.drop('date',axis=1,inplace=True)
# 对数据进行