tensorflow - 我的 LSTM 模型的验证损失非常不稳定
问题描述
我正在创建一个 LSTM 模型来预测比特币的收盘价。然而,当我开始训练时,我的验证损失开始变得非常不稳定,我的 test_prediction 变得不准确。
这是我的模型:
model = Sequential()
model.add(LSTM(80, input_shape=(1,look_back)))
model.add(LSTM(60))
model.compile(optimizer='adam', loss='mean_squared_error')
拟合模型:
from keras.callbacks import ModelCheckpoint
callbacks = [ModelCheckpoint(save_best_only = True, filepath='btc_close_prediction.h5')]
history = model.fit(xTrain, yTrain, batch_size=10, epochs=30, callbacks=callbacks, validation_split=0.2)
损失图:
预测图:
请告知我如何调整我的模型以获得更好的 val_loss 和更好的预测准确性。
解决方案
您的验证数据集应包含 5000 个样本,以使您的验证损失平滑。
试试变压器模型——它需要更少的训练数据。
推荐阅读
- python - 用于实现分支定界技术以解决非凸非线性整数多目标优化问题的 Python 包?
- python - 如何区分不同服务器的 discord.py 余额?
- javascript - 如何按属性对数组对象进行分组?
- python - 用 30 秒的断点和颜色绘制时间序列数据
- r - 将变量分配给绘图标题中的 R 表达式
- java - SimpleDateFormat 中月份的奇怪问题
- c - 比较 char* 行中的第一个字符?
- javascript - 如何覆盖 Angular 库 scss 变量?
- r - 使用 bin 标签 ggplot 创建彩虹直方图
- docker - 使用 docker 运行 gitlab-ci 时缓存 maven 依赖项