Deep learning 在训练VGG时,验证精度保持不变

Deep learning 在训练VGG时,验证精度保持不变,deep-learning,tensor,Deep Learning,Tensor,这就是情节 代码如下: with strategy.scope(): model2 = tf.keras.applications.VGG16( include_top=True, weights=None, input_tensor=None, input_shape=(32, 32, 3), pooling=None, classes=10, classifier_activation="relu", )

这就是情节

代码如下:

with strategy.scope():

  model2 = tf.keras.applications.VGG16(
    include_top=True,
    weights=None,
    input_tensor=None,
    input_shape=(32, 32, 3),
    pooling=None,
    classes=10,
    classifier_activation="relu",
  )

  model2.compile(optimizer='adam',
                loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
                metrics=['accuracy'])
  
  history = model2.fit(
            train_images, train_labels,epochs=10, 
            validation_data=(test_images, test_labels)
            )
我试图从头开始训练VGG16,因此没有导入它们的权重(因此
weights=None
) 我还尝试了一个我自己创建的模型,使用相同的超参数,效果很好

这里可能出了什么问题

非常感谢您的帮助

完整的代码

好的,我解决了这个问题 简单的是,学习率太高了 我把密码改成了这个

LR = batch_size/((z+1)*100000)
LR=LR/3
而不是

LR = batch_size/((z+1)*1000)
LR=LR/3

而且它似乎工作得很好

问题仍然存在,为什么它在培训中显示出相当的准确性,而在学习率太高的情况下却没有在验证中显示