首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >训练精度大于验证精度

训练精度大于验证精度
EN

Data Science用户
提问于 2020-07-01 11:06:06
回答 1查看 6.5K关注 0票数 1

我面临的问题是,我的模型的训练精度远高于验证精度,这是关于0.2的一个近似值。我不明白为什么,但在这件事上,我仍然是个新手,所以请容忍我。

数据来自使用f.data.Dataset创建的两个数据集,一个用于训练另一个数据集进行验证,因为dataset就是这样进行文件夹布局的。

代码语言:javascript
复制
model = keras.Sequential([
    keras.layers.Flatten(),
    keras.layers.Dense(256, activation='relu'),
    keras.layers.Dropout(.1),
    keras.layers.Dense(2, activation="softmax")
])

model.compile(optimizer='adam',
            loss="categorical_crossentropy",
            metrics=['accuracy'])

model.fit(train_ds, steps_per_epoch=STEPS_PER_EPOCH, epochs=10, validation_data=test_ds, validation_steps=VALIDATION_STEPS)
代码语言:javascript
复制
Train for 163.0 steps, validate for 20.0 steps
Epoch 1/10
163/163 [==============================] - 3s 21ms/step - loss: 3.9965 - accuracy: 0.8468 - val_loss: 0.3582 - val_accuracy: 0.8406
Epoch 2/10
163/163 [==============================] - 3s 19ms/step - loss: 0.3197 - accuracy: 0.8930 - val_loss: 0.5207 - val_accuracy: 0.7641
Epoch 3/10
163/163 [==============================] - 3s 19ms/step - loss: 0.2009 - accuracy: 0.9191 - val_loss: 0.4350 - val_accuracy: 0.8062
Epoch 4/10
163/163 [==============================] - 3s 19ms/step - loss: 0.1815 - accuracy: 0.9270 - val_loss: 0.5521 - val_accuracy: 0.7516
Epoch 5/10
163/163 [==============================] - 3s 19ms/step - loss: 0.2122 - accuracy: 0.8986 - val_loss: 0.9616 - val_accuracy: 0.7156
Epoch 6/10
163/163 [==============================] - 3s 19ms/step - loss: 0.2405 - accuracy: 0.9082 - val_loss: 1.2039 - val_accuracy: 0.7109
Epoch 7/10
163/163 [==============================] - 3s 19ms/step - loss: 0.2013 - accuracy: 0.9183 - val_loss: 0.7242 - val_accuracy: 0.6406
Epoch 8/10
163/163 [==============================] - 3s 19ms/step - loss: 0.2055 - accuracy: 0.9176 - val_loss: 0.4830 - val_accuracy: 0.6891
Epoch 9/10
163/163 [==============================] - 3s 19ms/step - loss: 0.1901 - accuracy: 0.9250 - val_loss: 0.3925 - val_accuracy: 0.8313
Epoch 10/10
163/163 [==============================] - 3s 19ms/step - loss: 0.1861 - accuracy: 0.9202 - val_loss: 0.5492 - val_accuracy: 0.8000

有谁能向我解释一下,是什么导致了准确度和val_accuracy之间的巨大差距?

EN

回答 1

Data Science用户

发布于 2020-07-01 11:18:49

你的模型显然太合适了。您应该使用更高的退出值,如0.5 .For,更好的泛化,使用深度模型。您也可以使用早期停止,以便您的模型停止训练前,显着地适应。

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/76941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档