fastai-地块验证和训练精度

时间:2020-06-22 16:40:09

标签: python python-3.x machine-learning plot fast-ai

我以前使用过Keras,然后以这种方式绘制了数据集的训练和验证准确性-

plt.plot(history.history['accuracy'])
plt.plot(history.history['val_accuracy'])

我目前正在学习fastai,并且已经绘制出训练和验证损失的图。但是我不知道如何绘制验证准确性和训练准确性。

learn.recorder.plot_losses()

任何人都可以帮忙吗?

3 个答案:

答案 0 :(得分:3)

退房:https://forums.fast.ai/t/plotting-metrics-after-learning/69937/3

Ignacio Oguiza 的函数 plot_metrics() 在那里有详细说明。 没有它,你会得到一个错误'Learner' object has no attribute 'plot_metrics'

一旦实现,您就可以像 Sirynka 提到的那样调用 plot_metrics():

<块引用>

learn.recorder.plot_metrics()

你可能会得到一些不错的图表: enter image description here

答案 1 :(得分:2)

在这里发布仅供使用最新 FastAI 版本 2 的人使用。

上述方法已过时,适用于 Fast AI 版本 1。

对于最新版本,您应该使用带有 fit 方法的回调:

learn.fit_one_cycle(10, slice(5e-3,5e-2),cbs=[ShowGraphCallback()])

这是document

使用这个新回调绘制训练验证指标的好处是它直接发生在每个训练和验证时期之后,不需要单独的代码行。

答案 2 :(得分:1)

learn.recorder.plot_metrics()

将绘制您在其中指定的所有指标

learn = cnn_learner(data, models.resnet34,
    metrics=[accuracy, error_rate])