LSTM基础模型代码
时间: 2024-09-21 15:12:52 浏览: 32
LSTM(Long Short-Term Memory)是一种特殊的循环神经网络(RNN),设计用于解决长序列依赖问题,避免了传统RNN中的梯度消失或梯度爆炸问题。以下是一个简单的LSTM基本模型的Python代码示例,使用Keras库:
```python
import keras
from keras.models import Sequential
from keras.layers import LSTM, Dense
# 创建一个Sequential模型
model = Sequential()
# 添加一个LSTM层,每时间步输入32个特征,有64个隐藏单元
model.add(LSTM(units=64, input_shape=(None, 32), return_sequences=True))
# 可选地添加另一个LSTM层,如果没有return_sequences=True,这将是一个最后一层的LSTM
model.add(LSTM(units=64))
# 添加全连接层来进行分类或回归
model.add(Dense(units=1, activation='sigmoid' if binary_classification else 'linear'))
# 编译模型,指定损失函数、优化器和评价指标
model.compile(loss='binary_crossentropy' if binary_classification else 'mean_squared_error',
optimizer='adam',
metrics=['accuracy'])
# 模型概述(仅在训练前显示)
model.summary()
```
在这个例子中,`binary_classification`是一个布尔值,表示是否进行二元分类任务。你可以根据实际需求调整输入形状、隐藏单元数和输出层的激活函数。