gpt4 book ai didi

python - 测试保存的卷积自动编码器

转载 作者:行者123 更新时间:2023-12-01 06:41:32 24 4
gpt4 key购买 nike

我在 Keras 中训练并保存了一个卷积自动编码器。在将模型保存为 .h5 格式之前,其训练损失为 0.2394,验证损失为 0.2586。在测试保存的模型时,我得到的损失是验证损失的两倍多,即 0.6707。实际上,我正在使用训练数据中的样本对其进行测试,只是为了看看我是否会得到与训练期间相同甚至更接近的损失。

这是我计算损失的方法,其中“total”是我传递来测试模型的图像总数

score = np.sqrt(metrics.mean_squared_error(predicteds,images))
print ('Loss:',score/total)

我在计算测试损失时是否犯了错误?

这是模型编译

autoencoder.compile(optimizer='adadelta', loss='binary_crossentropy')

并训练详细

Epoch 18/20 167/167 [==============================] - 462s 3s/step - loss: 0.2392 - val_loss: 0.2585

Epoch 19/20 167/167 [==============================] - 461s 3s/step - loss: 0.2399 - val_loss: 0.2609

Epoch 20/20 167/167 [==============================] - 475s 3s/step - loss: 0.2394 - val_loss: 0.2586

最佳答案

我认为您混淆了指标和损失函数。

根据您的 model.compile(),您正在使用 binary_crossentropy 损失函数。这意味着详细中提到的损失与二元交叉熵相关(loss - 训练损失和 val_loss - 验证损失)。

您使用 RMSE 对模型进行评分,然后将 RMSE 与二元交叉熵损失进行比较。

要使用 MSE 进行训练或使用其他可比较的指标,您需要使用 MSE 损失来编译模型或使用 MSE 作为指标。欲了解更多信息keras.losseskeras.metrics ,看看文档。

关于python - 测试保存的卷积自动编码器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59436644/

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