Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 同一验证集的Keras中的fit()和evaluate()的val精度不同_Python_Keras_Stack - Fatal编程技术网

Python 同一验证集的Keras中的fit()和evaluate()的val精度不同

Python 同一验证集的Keras中的fit()和evaluate()的val精度不同,python,keras,stack,Python,Keras,Stack,我正在使用keras训练堆叠网络; 子模型包括接收v3、resnet50和异常。 在这些子模型中:拟合val精度与评估val精度相同。 但当叠加这些子模型后,我得到了一个非常好的结果,拟合val的精度比评估val的精度高1%。 我将数据拆分为60%列车组20%验证组20%测试组。 我做错了什么 使用验证集设置fit()时: Epoch 126/250 216/216 [==============================] - 4s 17ms/step - loss: 0.827

我正在使用keras训练堆叠网络; 子模型包括接收v3、resnet50和异常。 在这些子模型中:拟合val精度与评估val精度相同。 但当叠加这些子模型后,我得到了一个非常好的结果,拟合val的精度比评估val的精度高1%。 我将数据拆分为60%列车组20%验证组20%测试组。 我做错了什么

使用验证集设置fit()时:

    Epoch 126/250
216/216 [==============================] - 4s 17ms/step - loss: 0.8279 - accuracy: 0.6574
Val loss: 0.8272405112231219
Val accuracy: 0.6435185074806213
使用验证集evaluate()时:

    Epoch 126/250
216/216 [==============================] - 4s 17ms/step - loss: 0.8279 - accuracy: 0.6574
Val loss: 0.8272405112231219
Val accuracy: 0.6435185074806213

什么是适合和评估?您通过了要修复的培训集,然后通过了要评估的培训集?在这种情况下,您将无法获得相同的值,fit使用批次的运行平均值作为权重更改,evaluate使用固定权重运行历元时打印的度量值是平均值。也就是说,每个批次分别计算,然后除以批次数。之后运行
evaluate()
时,它会进行更精确的计算