loss曲线 pytorch_PyTorch绘制训练过程的accuracy和loss曲线

PyTorch绘制训练过程的accuracy和loss曲线

PyTorch绘制训练过程的accuracy和loss曲线

原文链接:https://blog.csdn.net/tequilaro/article/details/81841748?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1

PyTorch、Caffe绘制训练过程的accuracy和loss曲线

衡量模型的好坏其实最重要的看的就是准确率与损失率,所以将其进行可视化是一个非常重要的一步。这样就可以直观明了的看出模型训练过程中准确率以及损失率的变化。

因为博主一直是在caffe和pytorch进行深度学习研究的,之前查了相关资料发现caffe有相关的绘制方法,但是pytorch并没有找到,所以在这里进行总结。

Caffe

因为之前看到过有相关博主分享过类似的文章,所以直接附链接。

caffe绘制训练过程的loss和accuracy曲线

按照博主的分享我将自己的模型的准确率以及损失率进行了绘制,如下图所示

PyTorch

我这里主要分享pytorch的绘制方法。

主要思想就是首先要定义两个数组,然后将每次迭代时模型的准确率和损失率传入到数组中,这里可以利用拼接函数进行拼接。然后在利用绘制图像的函数将其绘制。

#定义两个数组

Loss_list = []

Accuracy_list = []

Loss_list.append(train_loss / (len(train_dataset)))

Accuracy_list.append(100 * train_acc / (len(train_dataset)))

#我这里迭代了200次,所以x的取值范围为(0,200),然后再将每次相对应的准确率以及损失率附在x上

x1 = range(0, 200)

x2 = range(0, 200)

y1 = Accuracy_list

y2 = Loss_list

plt.subplot(2, 1, 1)

plt.plot(x1, y1, ‘o-’)

plt.title(‘Test accuracy vs. epoches’)

plt.ylabel(‘Test accuracy’)

plt.subplot(2, 1, 2)

plt.plot(x2, y2, ‘.-’)

plt.xlabel(‘Test loss vs. epoches’)

plt.ylabel(‘Test loss’)

plt.show()

plt.savefig(“accuracy_loss.jpg”)

PyTorch绘制训练过程的accuracy和loss曲线相关教程


版权声明:本文为weixin_36473855原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。