tensorflow:仅在可用val_acc的情况下可以保存最佳模型,跳过

Reda El Hail:

我有一个问题tf.callbacks.ModelChekpoint如您在我的日志文件中所见,警告总是在val_acc计算的最后一次迭代之前发出因此,Modelcheckpoint永远找不到val_acc

Epoch 1/30
1/8 [==>...........................] - ETA: 19s - loss: 1.4174 - accuracy: 0.3000
2/8 [======>.......................] - ETA: 8s - loss: 1.3363 - accuracy: 0.3500 
3/8 [==========>...................] - ETA: 4s - loss: 1.3994 - accuracy: 0.2667
4/8 [==============>...............] - ETA: 3s - loss: 1.3527 - accuracy: 0.3250
6/8 [=====================>........] - ETA: 1s - loss: 1.3042 - accuracy: 0.3333
WARNING:tensorflow:Can save best model only with val_acc available, skipping.
8/8 [==============================] - 4s 482ms/step - loss: 1.2846 - accuracy: 0.3375 - val_loss: 1.3512 - val_accuracy: 0.5000

Epoch 2/30
1/8 [==>...........................] - ETA: 0s - loss: 1.0098 - accuracy: 0.5000
3/8 [==========>...................] - ETA: 0s - loss: 0.8916 - accuracy: 0.5333
5/8 [=================>............] - ETA: 0s - loss: 0.9533 - accuracy: 0.5600
6/8 [=====================>........] - ETA: 0s - loss: 0.9523 - accuracy: 0.5667
7/8 [=========================>....] - ETA: 0s - loss: 0.9377 - accuracy: 0.5714
WARNING:tensorflow:Can save best model only with val_acc available, skipping.
8/8 [==============================] - 1s 98ms/step - loss: 0.9229 - accuracy: 0.5750 - val_loss: 1.2507 - val_accuracy: 0.5000

这是我训练CNN的代码。

    callbacks = [
        TensorBoard(log_dir=r'C:\Users\reda.elhail\Desktop\logs\{}'.format(Name),
                    histogram_freq=1),
        ModelCheckpoint(filepath=r"C:\Users\reda.elhail\Desktop\checkpoints\{}".format(Name), monitor='val_acc',
                        verbose=2, save_best_only=True, mode='max')]
    history = model.fit_generator(
        train_data_gen,
        steps_per_epoch=total_train // batch_size,
        epochs=epochs,
        validation_data=val_data_gen,
        validation_steps=total_val // batch_size,
        callbacks=callbacks)```
布莱恩·马克·安德森(Brian Mark Anderson):

我知道有时这些事情会令人沮丧..但是tensorflow要求您明确写出要计算的指标名称

您实际上需要说“ val_accuracy”

metric = 'val_accuracy'
ModelCheckpoint(filepath=r"C:\Users\reda.elhail\Desktop\checkpoints\{}".format(Name), monitor=metric,
                    verbose=2, save_best_only=True, mode='max')]

希望这可以帮助=)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我可以在不带Java括号的情况下访问Scala对象的val吗?

仅在存在的情况下包括

是否可以仅在尚未安装npm软件包的情况下安装?

Specflow-是否可以管理背景,使其仅在功能中的某些情况下运行?

TensorFlow默认情况下是否使用机器中所有可用的GPU?

在不安装Tensorflow的情况下服务Tensorflow模型

Perl:在这种情况下可以跳过中间哈希变量吗?

在没有安装Tensorflow的情况下运行Tensorflow模型

Keras回调保持跳过保存检查点的功能,声称缺少val_acc

val_acc高,但实际精度低

在目标固定的情况下可以跳过填充的角度提示(Chrome 67)

如何在keras中修改ModelCheckPoint以监视val_acc和val_loss并相应地保存最佳模型?

Tensorflow:仅在训练期间将错误最小化的情况下,如何才能保存检查点?

仅在没有日期和时间冲突的情况下保存新实体(播放)

val_loss减半,但val_acc保持不变

仅在满足某些前提条件的情况下,才可以触发转换器?

Tensorflow 2.0 Keras即使保存验证数据也不会保存最佳模型,但仍然给我:仅在可用val_acc的情况下才能保存最佳模型,跳过

在不涉及任何模型的情况下,使用JSON Api实现DRF的最佳方法?

JSON数据-在Python中如何仅在键=可用的情况下打印结果

检查val_acc饱和的回调

是否可以仅在不使用vCenter的情况下使用vSphere Client?

在某些情况下跳过地理编码

Rails嵌套形式:仅在提供名称的情况下保存子级

了解SVN错误:仅在以下情况下才可以使用重新集成

Perl和LWP:getstore()仅在不指定目录的情况下保存文件

仅在用户帐户被锁定的情况下,才可以显示设计“可锁定”链接吗?

是否可以仅在当天尚未运行该方法的情况下运行该方法?

在给定纬度和经度的情况下,生成快照的最佳方法是什么,因此确实建议跳过MKMapView

是否可以在没有剩余可用空间的情况下缩小分区?