keras实现LSTM预测
时间: 2023-09-27 14:08:43 浏览: 104
以下是使用Keras实现LSTM预测的示例代码:
```python
import numpy as np
from keras.models import Sequential
from keras.layers import LSTM, Dense
# 构造输入数据
data = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
look_back = 3
X, Y = [], []
for i in range(len(data)-look_back):
X.append(data[i:i+look_back])
Y.append(data[i+look_back])
X = np.array(X)
Y = np.array(Y)
# 构建模型
model = Sequential()
model.add(LSTM(4, input_shape=(look_back, 1)))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='adam')
# 训练模型
model.fit(X.reshape(len(X), look_back, 1), Y, epochs=100, batch_size=1, verbose=2)
# 预测
test_data = [110, 120, 130, 140]
test_X = []
for i in range(len(test_data)-look_back):
test_X.append(test_data[i:i+look_back])
test_X = np.array(test_X)
predicted_Y = model.predict(test_X.reshape(len(test_X), look_back, 1))
print(predicted_Y)
```
在这个例子中,我们输入了一组由10个数字组成的序列。我们将前三个数字作为输入,将第四个数字作为输出,将第二个到第四个数字作为输入,将第五个数字作为输出,以此类推。我们使用LSTM模型来训练这个序列,然后使用模型来预测后续数字。
阅读全文