有关分析损失和准确性图表的问题

时间:2019-02-07 01:04:16

标签: python deep-learning

为解决问题,我开发了一些深度学习模型,例如MLP(6个密集层),CNN(1个Conv1D + 1个密集层),LSTM(1个LSTM + 2个密集层),并构造了它们的损失和准确性图表。

CNN模型

model = Sequential()
model.add(Embedding(len(vectorizer.get_feature_names()) + 1,
                    64,  # Embedding size
                    input_length=MAX_SEQ_LENGHT))
model.add(Conv1D(64, 5, activation='relu'))
model.add(MaxPooling1D(5))
model.add(Flatten())

model.add(Dense(64))
model.add(BatchNormalization())
model.add(Activation('relu'))
model.add(Dropout(0.5))

model.add(Dense(units=1, activation='sigmoid'))

model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
print(model.summary())

我有以下问题:

1-哪一种适合每个人?

  • 图表1 => 16
  • 图2 => 15
  • 图3 => 5

2-这些图表是否显示过拟合? (尤其是图表1。它有什么问题?如何使测试的准确性超过训练水平?!)

3-当训练损失高于测试损失(在图表1中)可以吗?我应该增加纪元吗?

图1:

enter image description here

图2:

enter image description here

图3:

enter image description here

1 个答案:

答案 0 :(得分:1)

您的模型似乎在图表1中过拟合。如果您不能直接或通过数据扩充技术来增加数据集,那么图表3似乎是三个模型中最好的模型。