深度学习如何划分本地数据集为训练集和测试集,才不会出现因为测试集相同而导致模型性能不断在同一个评价标准下被评估,最后导致迭代时测试集的准确率一直不变的问题

如何划分本地数据集为训练集和测试集比较合理
深度学习如何划分本地数据集为训练集和测试集,才不会出现因为测试集相同而导致模型性能不断在同一个评价标准下被评估,最后导致迭代时测试集的准确率一直不变的问题
训练模型迭代后因为训练集和测试集没有变化,所以测试集的准确率也没有发生变化
# 定义超参数
epochs = 20
batch_size = 128

# 定义损失函数和优化器
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

# 训练模型
history = model.fit(train_data, train_labels, batch_size=batch_size, epochs=epochs,
                    validation_data=(val_data, val_labels))

# 保存训练后的模型
model.save('model.h5')

尝试过利用train_test_split进行划分,但是划分结束后模型训练时训练集依旧是固定的
train_data, val_data, train_labels, val_labels = train_test_split(data, labels, test_size=0.3)

######求大神指导

你数据量少的时候,肯定是一半训练一半测试,训练的数据也同时用来测试,那不100%了,耦合度太高了
至于要迭代,那肯定是要不断的喂不同的数据啊,老是同一组数据不停喂那是在训练啥呢
如果你喂的数据就是所有的可能性了,比如训练电脑猜硬币,那永远只能猜赢50%,这就已经收敛了,你再训练也不可能更高了

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^