当 epochs 大小增加时,Concatenate LSTM 的精度会降低

原文标题Accuracy reduce in Concatenate LSTM when epochs size is increased

首先我是这些概念的新手。我使用了两个 lstm 层和连接。但是当我用 2 个 epoch 训练模型时它工作正常(我相信因为它提供了大约 90% 的准确度)。但是当我增加 epochs 大小(epochs =10) val_accuracy 显示训练保持不变(0.5601)和 val_loss(6.7802)也更高并保持不变。但是当我使用 2 个 epoch 训练时,val_accuracy 和 val_loss 很好(val_accuracy=0.9924,val_loss=0.0392(不是保持不变,他们已经改变了))

这是连接 LSTM 的代码

数据集使用 one-hot 编码进行预处理。嵌入层长度为50。

inputs = Input(shape=(50))
lstm1 = Embedding(voc_size,embedding_vector_features,input_length=sent_length)(inputs)
lstm1 = LSTM(50)(lstm1)
lstm1 = Dense(1,activation='sigmoid')(lstm1)

lstm2 = Embedding(voc_size,embedding_vector_features,input_length=sent_length)(inputs)
lstm2 = LSTM(50)(lstm2)
lstm2 = Dense(1,activation='sigmoid')(lstm2)

concatenated = Concatenate(name='concatenate_1')([lstm1,lstm2])
output1 = Dense(1, name='dense_1')(concatenated)
model = Model(inputs=inputs, outputs=output1)
model.compile(loss='binary_crossentropy',optimizer='adam',metrics=['accuracy'])
model.fit(x_train,y_train,validation_data=(x_test,y_test),epochs=20,batch_size=32)

解决此问题的任何解决方案。谢谢

原文链接:https://stackoverflow.com//questions/71673511/accuracy-reduce-in-concatenate-lstm-when-epochs-size-is-increased

回复

我来回复
  • k.avinash的头像
    k.avinash 评论
    • 尝试增加嵌入维度
    • 添加一些正则化,例如 Dropout、BatchNormalization。
    • 将学习率更改为较小的值,减小batch_size
    2年前 0条评论