gpt4 book ai didi

machine-learning - SGD 的训练准确率

转载 作者:行者123 更新时间:2023-11-30 09:35:24 25 4
gpt4 key购买 nike

如何计算 SGD 的训练精度?您是否使用训练网络的批量数据来计算它?或者使用整个数据集? (对于每个批处理优化迭代)

我尝试使用训练网络的批量数据来计算每次迭代的训练准确性。它几乎总是给我 100% 的训练准确率(有时是 100%、90%、80%,总是 10% 的倍数,但第一次迭代给我 100%)。这是因为我正在计算我在该迭代中训练的同一批处理数据的准确性吗?或者我的模型是否过度拟合,它立即给了我 100% 的结果,但验证准确度很低? (这是这里的主要问题,如果这是可以接受的,或者模型有问题)

这是我使用的超参数。

batch_size = 64
kernel_size = 60 #from 60 #optimal 2
depth = 15 #from 60 #optimal 15
num_hidden = 1000 #from 1000 #optimal 80

learning_rate = 0.0001
training_epochs = 8

total_batches = train_x.shape[0] // batch_size

最佳答案

在训练过程中对批量数据计算训练准确率是正确的。如果准确率的数字始终是 10% 的倍数,那么很可能是因为您的批量大小为 10。例如,如果 8 个训练输出与标签匹配,那么您的训练准确率将为 80%。如果训练准确率数字上下波动,主要有两种可能:1. 如果在一个 epoch 内多次打印出准确率数字,这是正常的,尤其是在训练的早期阶段,因为模型是在不同的数据样本上进行预测;2. 如果你每个epoch打印一次准确率,并且在训练后期你看到训练准确率上下波动,那就说明你的学习率太大了。你需要在培训期间停止加类。如果这些不能回答您的问题,请提供更多详细信息,以便我们提供帮助。

关于machine-learning - SGD 的训练准确率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44469083/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com