lstm预测

复制代码
import numpy as np
import pandas as pd
import tensorflow as tf
import math
import matplotlib.pyplot as plt
from sklearn.preprocessing import MinMaxScaler
from keras.layers import LSTM,Activation,Dense,Dropout




# 时间序列数据转换为监督学习的格式
def creatXY(dataset,step):
    dataX,dataY=[],[]
    for i in range(len(dataset)-step):
        a =dataset[i:(i+step),0:dataset.shape[1]]
        dataX.append(a)
        b =dataset[i+step,0:dataset.shape[1]]
        dataY.append(b)
    return np.array(dataX),np.array(dataY)

df = pd.read_csv("output.csv")

dataset = np.array(df.iloc[:,0:2])
train_size = int(len(dataset)*0.8)

dataset_train = dataset[:train_size,:]
dataset_test = dataset[train_size:,:]

# print(dataset_train.shape)# (n,2)
# print(dataset_test.shape)# (n,2)
scaler = MinMaxScaler(feature_range=(0,1))
dataset_train_scaled = scaler.fit_transform(dataset_train)
dataset_test_scaled = scaler.transform(dataset_test)

step = 10
trainX,trainY = creatXY(dataset_train_scaled,step)
testX,testY = creatXY(dataset_test_scaled,step)
# #input格式为:[样本数,step数,特征数]
trainX_input = np.reshape(trainX,(len(trainX),step,2))
testX_input = np.reshape(testX,(len(testX),step,2))#
#
model = tf.keras.models.Sequential()
model.add(LSTM(48,return_sequences=True,input_shape=(step,2)))
model.add(LSTM(96,return_sequences=True,input_shape=(step,2)))
model.add(LSTM(48,input_shape=[step,2]))
model.add(Activation('relu'))
model.add(Dense(2))#全连接层
model.compile(loss='mse',optimizer='adam')
model.fit(trainX_input,trainY,batch_size=200,epochs=500)


predict_train = model.predict(trainX_input)
predict_test = model.predict(testX_input)

result0 = scaler.inverse_transform(predict_train)
result1 = scaler.inverse_transform(predict_test)

x0,y0 = result0[:,0],result0[:,1]
x1,y1 = result1[:,0],result1[:,1]
plt.plot(x0,y0,c='r')
plt.plot(x1,y1,c='r')
x = dataset[:,0]
y = dataset[:,1]
plt.plot(x,y)
plt.show()

output.csv:

复制代码
x,y,thta
0.0,0.0,0.0
0.5,9.5,0.5
1.0,13.4,1.0
1.5,16.4,1.5
2.0,18.9,2.0
2.5,21.1,2.5
3.0,23.0,3.0
3.5,24.9,3.5
4.0,26.5,4.0
4.5,28.1,4.5
5.0,29.6,5.0
5.5,31.0,5.5
6.0,32.3,6.0
6.5,33.6,6.5
7.0,34.8,7.0
7.5,36.0,7.5
8.0,37.1,8.0
8.5,38.2,8.5
9.0,39.2,9.0
9.5,40.2,9.5
10.0,41.2,10.0
10.5,42.2,10.5
11.0,43.1,11.0
11.5,44.0,11.5
12.0,44.9,12.0
12.5,45.8,12.5
13.0,46.6,13.0
13.5,47.4,13.5
14.0,48.2,14.0
14.5,49.0,14.5
15.0,49.7,15.0
15.5,50.5,15.5
16.0,51.2,16.0
16.5,51.9,16.5
17.0,52.6,17.0
17.5,53.3,17.5
18.0,54.0,18.0
18.5,54.7,18.5
19.0,55.3,19.0
19.5,55.9,19.5
20.0,56.6,20.0
20.5,57.2,20.5
21.0,57.8,21.0
21.5,58.4,21.5
22.0,59.0,22.0
22.5,59.5,22.5
23.0,60.1,23.0
23.5,60.6,23.5
24.0,61.2,24.0
24.5,61.7,24.5
25.0,62.2,25.0
25.5,62.8,25.5
26.0,63.3,26.0
26.5,63.8,26.5
27.0,64.3,27.0
27.5,64.8,27.5
28.0,65.2,28.0
28.5,65.7,28.5
29.0,66.2,29.0
29.5,66.6,29.5
30.0,67.1,30.0
30.5,67.5,30.5
31.0,68.0,31.0
31.5,68.4,31.5
32.0,68.8,32.0
32.5,69.2,32.5
33.0,69.6,33.0
33.5,70.1,33.5
34.0,70.5,34.0
34.5,70.9,34.5
35.0,71.2,35.0
35.5,71.6,35.5
36.0,72.0,36.0
36.5,72.4,36.5
37.0,72.7,37.0
37.5,73.1,37.5
38.0,73.5,38.0
38.5,73.8,38.5
39.0,74.2,39.0
39.5,74.5,39.5
40.0,74.8,40.0
40.5,75.2,40.5
41.0,75.5,41.0
41.5,75.8,41.5
42.0,76.1,42.0
42.5,76.4,42.5
43.0,76.8,43.0
43.5,77.1,43.5
44.0,77.4,44.0
44.5,77.7,44.5
45.0,77.9,45.0
45.5,78.2,45.5
46.0,78.5,46.0
46.5,78.8,46.5
47.0,79.1,47.0
47.5,79.3,47.5
48.0,79.6,48.0
48.5,79.9,48.5
49.0,80.1,49.0
49.5,80.4,49.5
50.0,80.6,50.0
50.5,80.9,50.5
51.0,81.1,51.0
51.5,81.3,51.5
52.0,81.6,52.0
52.5,81.8,52.5
53.0,82.0,53.0
53.5,82.3,53.5
54.0,82.5,54.0
54.5,82.7,54.5
55.0,82.9,55.0
55.5,83.1,55.5
56.0,83.3,56.0
56.5,83.5,56.5
57.0,83.7,57.0
57.5,83.9,57.5
58.0,84.1,58.0
58.5,84.3,58.5
59.0,84.5,59.0
59.5,84.7,59.5
60.0,84.9,60.0
60.5,85.0,60.5
61.0,85.2,61.0
61.5,85.4,61.5
62.0,85.5,62.0
62.5,85.7,62.5
63.0,85.9,63.0
63.5,86.0,63.5
64.0,86.2,64.0
64.5,86.3,64.5
65.0,86.5,65.0
65.5,86.6,65.5
66.0,86.7,66.0
66.5,86.9,66.5
67.0,87.0,67.0
67.5,87.1,67.5
68.0,87.3,68.0
68.5,87.4,68.5
69.0,87.5,69.0
69.5,87.6,69.5
70.0,87.7,70.0
70.5,87.9,70.5
71.0,88.0,71.0
71.5,88.1,71.5
72.0,88.2,72.0
72.5,88.3,72.5
73.0,88.4,73.0
73.5,88.5,73.5
74.0,88.6,74.0
74.5,88.7,74.5
75.0,88.7,75.0
75.5,88.8,75.5
76.0,88.9,76.0
76.5,89.0,76.5
77.0,89.1,77.0
77.5,89.1,77.5
78.0,89.2,78.0
78.5,89.3,78.5
79.0,89.3,79.0
79.5,89.4,79.5
80.0,89.4,80.0
80.5,89.5,80.5
81.0,89.5,81.0
81.5,89.6,81.5
82.0,89.6,82.0
82.5,89.7,82.5
83.0,89.7,83.0
83.5,89.8,83.5
84.0,89.8,84.0
84.5,89.8,84.5
85.0,89.9,85.0
85.5,89.9,85.5
86.0,89.9,86.0
86.5,89.9,86.5
87.0,89.9,87.0
87.5,90.0,87.5
88.0,90.0,88.0
88.5,90.0,88.5
89.0,90.0,89.0
89.5,90.0,89.5
90.0,90.0,90.0
90.5,90.0,90.5
91.0,90.0,91.0
91.5,90.0,91.5
92.0,90.0,92.0
92.5,90.0,92.5
93.0,89.9,93.0
93.5,89.9,93.5
94.0,89.9,94.0
94.5,89.9,94.5
95.0,89.9,95.0
95.5,89.8,95.5
96.0,89.8,96.0
96.5,89.8,96.5
97.0,89.7,97.0
97.5,89.7,97.5
98.0,89.6,98.0
98.5,89.6,98.5
99.0,89.5,99.0
99.5,89.5,99.5
100.0,89.4,100.0
100.5,89.4,100.5
101.0,89.3,101.0
101.5,89.3,101.5
102.0,89.2,102.0
102.5,89.1,102.5
103.0,89.1,103.0
103.5,89.0,103.5
104.0,88.9,104.0
104.5,88.8,104.5
105.0,88.7,105.0
105.5,88.7,105.5
106.0,88.6,106.0
106.5,88.5,106.5
107.0,88.4,107.0
107.5,88.3,107.5
108.0,88.2,108.0
108.5,88.1,108.5
109.0,88.0,109.0
109.5,87.9,109.5
110.0,87.7,110.0
110.5,87.6,110.5
111.0,87.5,111.0
111.5,87.4,111.5
112.0,87.3,112.0
112.5,87.1,112.5
113.0,87.0,113.0
113.5,86.9,113.5
114.0,86.7,114.0
114.5,86.6,114.5
115.0,86.5,115.0
115.5,86.3,115.5
116.0,86.2,116.0
116.5,86.0,116.5
117.0,85.9,117.0
117.5,85.7,117.5
118.0,85.5,118.0
118.5,85.4,118.5
119.0,85.2,119.0
119.5,85.0,119.5
120.0,84.9,120.0
120.5,84.7,120.5
121.0,84.5,121.0
121.5,84.3,121.5
122.0,84.1,122.0
122.5,83.9,122.5
123.0,83.7,123.0
123.5,83.5,123.5
124.0,83.3,124.0
124.5,83.1,124.5
125.0,82.9,125.0
125.5,82.7,125.5
126.0,82.5,126.0
126.5,82.3,126.5
127.0,82.0,127.0
127.5,81.8,127.5
128.0,81.6,128.0
128.5,81.3,128.5
129.0,81.1,129.0
129.5,80.9,129.5
130.0,80.6,130.0
130.5,80.4,130.5
131.0,80.1,131.0
131.5,79.9,131.5
132.0,79.6,132.0
132.5,79.3,132.5
133.0,79.1,133.0
133.5,78.8,133.5
134.0,78.5,134.0
134.5,78.2,134.5
135.0,77.9,135.0
135.5,77.7,135.5
136.0,77.4,136.0
136.5,77.1,136.5
137.0,76.8,137.0
137.5,76.4,137.5
138.0,76.1,138.0
138.5,75.8,138.5
139.0,75.5,139.0
139.5,75.2,139.5
140.0,74.8,140.0
140.5,74.5,140.5
141.0,74.2,141.0
141.5,73.8,141.5
142.0,73.5,142.0
142.5,73.1,142.5
143.0,72.7,143.0
143.5,72.4,143.5
144.0,72.0,144.0
144.5,71.6,144.5
145.0,71.2,145.0
145.5,70.9,145.5
146.0,70.5,146.0
146.5,70.1,146.5
147.0,69.6,147.0
147.5,69.2,147.5
148.0,68.8,148.0
148.5,68.4,148.5
149.0,68.0,149.0
149.5,67.5,149.5
150.0,67.1,150.0
150.5,66.6,150.5
151.0,66.2,151.0
151.5,65.7,151.5
152.0,65.2,152.0
152.5,64.8,152.5
153.0,64.3,153.0
153.5,63.8,153.5
154.0,63.3,154.0
154.5,62.8,154.5
155.0,62.2,155.0
155.5,61.7,155.5
156.0,61.2,156.0
156.5,60.6,156.5
157.0,60.1,157.0
157.5,59.5,157.5
158.0,59.0,158.0
158.5,58.4,158.5
159.0,57.8,159.0
159.5,57.2,159.5
160.0,56.6,160.0
160.5,55.9,160.5
161.0,55.3,161.0
161.5,54.7,161.5
162.0,54.0,162.0
162.5,53.3,162.5
163.0,52.6,163.0
163.5,51.9,163.5
164.0,51.2,164.0
164.5,50.5,164.5
165.0,49.7,165.0
165.5,49.0,165.5
166.0,48.2,166.0
166.5,47.4,166.5
167.0,46.6,167.0
167.5,45.8,167.5
168.0,44.9,168.0
168.5,44.0,168.5
169.0,43.1,169.0
169.5,42.2,169.5
170.0,41.2,170.0
170.5,40.2,170.5
171.0,39.2,171.0
171.5,38.2,171.5
172.0,37.1,172.0
172.5,36.0,172.5
173.0,34.8,173.0
173.5,33.6,173.5
174.0,32.3,174.0
174.5,31.0,174.5
175.0,29.6,175.0
175.5,28.1,175.5
176.0,26.5,176.0
176.5,24.9,176.5
177.0,23.0,177.0
177.5,21.1,177.5
178.0,18.9,178.0
178.5,16.4,178.5
179.0,13.4,179.0
179.5,9.5,179.5
180.0,0.0,180.0
相关推荐
镜象科技3 小时前
AI情感大模型应用场景全解:从校园到医院再到企业的落地地图
人工智能
Joshua-a4 小时前
工程数学-理解卷积的含义_线性时不变系统的冲激响应与卷积
人工智能·深度学习
song5014 小时前
React Native for OpenHarmony 实战:三方库 react-native-css-transformer 的鸿蒙化适配指南
css·人工智能·深度学习·react native·transformer
老金带你玩AI8 小时前
ChatGPT dots,到底能替你操多少心?
人工智能
AliCloudROS9 小时前
计算巢 X DeepSeek Harness — 云端智能体工作台
人工智能·阿里云
深蓝AI9 小时前
GitHub的Push一年涨4.9倍:AI Agent为什么逼它重做Git存储?
人工智能·github
stereohomology9 小时前
大模型的观点谨:StoryTold 「Crafting Apps」四件套 · 深度总览
人工智能·llm
运维行者_10 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
Su米苏10 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
美狐美颜sdk10 小时前
直播APP源码可以直接接入视频美颜sdk吗?技术方案详解
android·人工智能·音视频·美颜sdk·直播美颜sdk