迁移学习模型不学习

时间:2021-01-26 12:40:23

标签: deep-learning model transfer-learning

我有两个相似且独立的 CNN 模型,并且使用这两个模型,我能够在不平衡数据集上获得超过 80% 的分类准确率,其中该类每 7 个第二类样本有 1 个第一类样本。训练后,我保存了两个模型的模型权重。然后我使用具有完全相同输入形状的不同数据集,输入数据的性质与之前的数据集非常相似,因为两者都是具有 8 个通道的 EEG 信号。唯一的区别是每 9 个第二类样本有 2 个第一类样本。我总是将这些信息包含在 model.fit 的 class_weights 参数中。然后我保留一些先前训练过的模型层可训练,用一些新数据集进行训练,并用剩余的数量进行测试。有趣的是,无论我更改什么参数,对于一般准确度和类别准确度以及两种模型,我的准确度都在 65% 左右。对于这两个模型,在第一个 epoch 中,训练和验证的准确率都在 60% 左右,并且在最后一个 epoch 之前保持相同的准确率。这种情况对于两种模型也是相同的。一种可能性是,这 60% 的准确度等于机会水平,但正如我所说,第二类的每 9 个样本有 2 个第一类的样本,并且我为一般预测和两个类分别获得了这个准确度。最后,我从头开始使用这两个模型,没有使用之前的数据集进行训练,我使用新数据集来训练、验证和测试这两个模型。然而;尽管这些模型之前没有经过训练,但它们仍然以 60% 的准确率开始。下面的文本还显示了模型的示例训练过程。怎么可能?你能帮我看看是什么原因吗?谢谢。

类权重 = {0: 0.6081382810901892, 1: 2.8118547611413915}

纪元 1/1000 1097/1097 - 9s - 损失:0.6688 - 准确度:0.5946 - val_loss:0.6730 - val_accuracy:0.5912

纪元 2/1000 1097/1097 - 4s - 损失:0.6654 - 准确度:0.6060 - val_loss:0.6770 - val_accuracy:0.5802

纪元 3/1000 1097/1097 - 4s - 损失:0.6652 - 准确度:0.6074 - val_loss:0.6687 - val_accuracy:0.6012

纪元 4/1000 1097/1097 - 4s - 损失:0.6646 - 准确度:0.6096 - val_loss:0.6699 - val_accuracy:0.5990

纪元 5/1000 1097/1097 - 4s - 损失:0.6651 - 准确度:0.6083 - val_loss:0.6683 - val_accuracy:0.6024

-

纪元 71/1000 1097/1097 - 4s - 损失:0.6629 - 准确度:0.6215 - val_loss:0.6727 - val_accuracy:0.6027

纪元 72/1000 1097/1097 - 4s - 损失:0.6629 - 准确度:0.6190 - val_loss:0.6633 - val_accuracy:0.6179

纪元 73/1000 1097/1097 - 4s - 损失:0.6626 - 准确度:0.6223 - val_loss:0.6675 - val_accuracy:0.6104

纪元 74/1000 1097/1097 - 4s - 损失:0.6632 - 准确度:0.6180 - val_loss:0.6624 - val_accuracy:0.6197

0 个答案:

没有答案