azuremapleleaf 2020-04-21 23:32 采纳率: 0%
浏览 7687

lstm做时序预测一直过拟合该怎么解决

做的8推1的时序预测,但是不管怎么修改模型,一直都是过拟合的状态,loss下降 val loss上升,val loss一点下降趋势也没有,直接往上走,
已经用了dropout(0.5)也试过用BatchNormalization(),但都没办法完全改善
想知道到底问题出在哪里
训练集和测试集(x,y)大小是(80000, 10, 8) (25000, 10, 8) (80000,) (25000,)

#数据整理
train = values[0:timestep*num]
valid =values[timestep*num:]
time_stamp = 10
scaled_data = scaler.fit_transform(train)
x_train, y_train = [], []
for i in range(time_stamp, len(train)):
    x_train.append(scaled_data[i - time_stamp:i,0:8])
    y_train.append(scaled_data[i, 8])
    # y_train.append(scaled_data[i - time_stamp, 8])
    # y_train.append(scaled_data[i - time_stamp:i, 8])
x_train, y_train = np.array(x_train), np.array(y_train)

scaled_data = scaler.fit_transform(valid)
x_valid, y_valid = [], []
for i in range(time_stamp, len(valid)):
    x_valid.append(scaled_data[i - time_stamp:i,0:8])
    y_valid.append(scaled_data[i, 8])
    # y_valid.append(scaled_data[i - time_stamp, 8])
    # y_valid.append(scaled_data[i - time_stamp:i, 8])
x_valid, y_valid = np.array(x_valid), np.array(y_valid)
print(x_train.shape,x_valid.shape, y_train.shape, y_valid.shape)
#lstm模型
epochs = 60
batch_size = 256
model = Sequential()
model.add(LSTM(units=128, return_sequences=True, input_dim=x_train.shape[-1], input_length=x_train.shape[1]))
model.add(Dropout(0.5))
model.add(LSTM(units=64))
model.add(Dropout(0.5))
model.add(Dense(1))
model.compile(loss='mean_squared_error', optimizer='rmsprop')
history =model.fit(x_train, y_train, epochs=epochs, batch_size=batch_size,validation_data=(x_valid,y_valid), verbose=2)

图片说明
上图中蓝色为loss曲线,黄色为val loss

  • 写回答

3条回答 默认 最新

  • weixin_47817205 2022-03-11 15:19
    关注

    楼主解决了吗?我也是这样的问题

    评论

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用