【问题记录与解决】KeyError: ‘acc‘ plt.plot(N[150:], H.history[“acc“][150:], label=“train_acc“) # KeyError: ‘

简介: 【问题记录与解决】KeyError: ‘acc‘ plt.plot(N[150:], H.history[“acc“][150:], label=“train_acc“) # KeyError: ‘

一、问题描述



在跑一段深度学习代码时遇到的问题:

81acb9ef02d641039f15139186942d2d.jpg

源代码处是这样的:(这里,后面我加上 报错 的注释了…)

plt.plot(N[150:], H.history["acc"][150:], label="train_acc")  # KeyError: 'acc'


二、问题解决



显然,我们可以看出来,错误是说 键错误,我们也可以理解为关键字错误。

需要把上面的 acc 改为 accuracy 即可。(至于为什么这么修改,下面会解释)


亦即

plt.plot(N[150:], H.history["accuracy"][150:], label="train_acc")  # 2022.11.8 20:59


这样呢,就不会报上述错了。

可是,继续执行代码时,下面又报了一个错误,感觉和上述 错误类似:


60a065c8499940729559d62b30ebcb67.jpg


定位源代码处:

plt.plot(N[150:], H.history["val_acc"][150:], label="val_acc")  # KeyError: 'val_acc'


这里,先说明如何修改吧:将 val_acc 修改为 loss 即可。

亦即

plt.plot(N[150:], H.history["loss"][150:], label="val_acc")  # 2022.11.8 21:05


如此,上述错误就解决了。


为什么要 作 上述的改变(修改)?

这是 由于 Keras 所对应含有的关键字,以前有的,在现在的版本中,不一定现在也有。

fbe4cecf32b946e4954a5f49907ac379.jpg


当然,输出其 关键字,并不是 一句 print 就可以的。需要根据根据代码所生成模型,这里我暂时不介绍。读者知道有 loss 和 accuracy 这俩关键字就好了。

相关文章
Warning: Can save best model only with val_acc available, skipping
本文解决了在使用DenseNet网络结构保存最优模型时出现的"Warning: Can save best model only with val_acc available, skipping"问题,方法是将`ModelCheckpoint`回调函数中的`monitor`参数值从`val_acc`改为`val_accuracy`。
|
JSON 数据格式
ValueError: With n_samples=0, test_size=0.15 and train_size=None, the resulting train set will be em
ValueError: With n_samples=0, test_size=0.15 and train_size=None, the resulting train set will be em
516 0
ValueError: With n_samples=0, test_size=0.15 and train_size=None, the resulting train set will be em
|
PyTorch 算法框架/工具
Please ensure they have the same size. return F.mse_loss(input, target, reduction=self.reduction) 怎么解决?
这个通常是由于 input 和 target 张量的维度不匹配导致的,因此可以通过调整它们的维度来解决。
316 0
成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be
成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be
成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be
from sklearn.cross_validation import train_test_split发生报错
from sklearn.cross_validation import train_test_split发生报错
268 0
from sklearn.cross_validation import train_test_split发生报错
成功解决_catboost.CatBoostError: Invalid cat_features[4] = 8 value: index must be < 8.
成功解决_catboost.CatBoostError: Invalid cat_features[4] = 8 value: index must be < 8.
KeyError: 'acc'
KeyError: 'acc'
213 0
|
索引 Python
成功解决ValueError: Shape of passed values is (33, 1), indices imply (33, 2)
成功解决ValueError: Shape of passed values is (33, 1), indices imply (33, 2)
成功解决sklearn\preprocessing\label.py:151: DeprecationWarning: The truth value of an empty array is amb
成功解决sklearn\preprocessing\label.py:151: DeprecationWarning: The truth value of an empty array is amb