plt.plot(x, y, 'r-', label=u'Dense_Unet')
plt.plot(x1, y1, 'b-', label=u'RCSCA_Net')
plt.legend()
plt.xlabel(u'iters')
plt.ylabel(u'loss')
plt.title('Compare loss for different models in training.')
plt.show()
使用 python 绘制网络训练过程中的的 loss 曲线以及准确率变化曲线,这里的主要思想就时先把想要的损失值以及准确率值保存下来,保存到 .txt 文件中,待网络训练结束,我们再拿这存储的数据绘制各种曲线。其大致步骤为:数据读取与存储 - > loss曲线绘制 - > 准确率曲线绘制我们首先要得到训练时的数据,以损失值为例,网络每迭代一次都会产生相应的 loss,那么我们就把每一次的损失值都存储下来,存储到列表,保存到 .txt 文件中。保存的文件如下图所示:
上图为部分损失值,根据迭代次数而异,要是迭
train.py完成了语义分割模型的训练过程,支持分布式训练、混合精度训练、多卡同步BN等功能,可以根据需要灵活配置网络结构和训练参数。在训练过程中,会根据指定的训练阶段对模型的参数进行冻结和解冻,从而满足机器性能不足的情况下,逐步训练更复杂的模型。
##显示中文
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = 'SimSun,Times New Roman'
##读取log文件
logFile = r'...\log-20210818-090024.log'
text = ''
使用 python的plot 绘制网络训练过程中的的 loss 曲线以及准确率变化曲线,这里的主要思想就时先把想要的损失值以及准确率值保存下来,保存到 .txt 文件中,待网络训练结束,我们再拿这存储的数据绘制各种曲线。
在卷积神经网络中,有时候为了更直观的看出损失函数(Loss Function)的变化,需要用曲线的形式来展现。如何在一张图中将train和test的Loss变化全部显示出来?
def plot_acc_loss(loss, acc):
host = host_subplot(111) # row=1 col=1 first pic
plt.subpl...
文件读取的形式可以参考上一篇文章,主体不变,主要部分还是在字符串分割上。
def getLossAcc(logFile):
f = open(logFile, "r", encoding='utf-8')
line = f.readline() # 以行的形式进行读