lstm模型python代码
时间: 2023-09-03 15:06:54 浏览: 94
以下是一个简单的 LSTM 模型的 Python 代码示例:
```python
import numpy as np
from keras.models import Sequential
from keras.layers import LSTM, Dense
# 准备数据
data = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
look_back = 3
# 将数据转换成监督学习问题
def create_dataset(data, look_back=1):
X, Y = [], []
for i in range(len(data)-look_back):
X.append(data[i:i+look_back])
Y.append(data[i+look_back])
return np.array(X), np.array(Y)
X, Y = create_dataset(data, look_back)
# 将数据转换成 [样本数, 时间步长, 特征数] 的形状
X = np.reshape(X, (X.shape[0], X.shape[1], 1))
# 创建 LSTM 模型
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, Y, epochs=100, batch_size=1, verbose=2)
# 测试模型
test_data = np.array([8, 9, 10])
test_data = np.reshape(test_data, (1, look_back, 1))
print(model.predict(test_data))
```
以上代码中,我们首先准备了一个长度为 10 的数据集,然后将其转换成监督学习问题。接着,我们将数据转换成 LSTM 模型需要的形状,并创建了一个包含一个 LSTM 层和一个全连接层的模型。最后,我们使用训练数据拟合模型,并使用测试数据测试模型的预测能力。
阅读全文