[ log日志画图]分割模型训练结束生成相关日志运用代码画图

文章目录

  • [[ log日志画图]分割模型训练结束生成相关日志运用代码画图](#[ log日志画图]分割模型训练结束生成相关日志运用代码画图)
  • 我的log文件:
  • 画图:
    • 1.loss
        • [1.1 loss是干嘛的](#1.1 loss是干嘛的)
        • [1.2 代码](#1.2 代码)
        • [1.3 生成图](#1.3 生成图)
    • 2.DICE.IOU
        • [2.1 DICE,IOU是干嘛的(常规介绍)](#2.1 DICE,IOU是干嘛的(常规介绍))
        • [2.2 代码](#2.2 代码)
        • [2.3 生成图](#2.3 生成图)
        • 小白tip

[ log日志画图]分割模型训练结束生成相关日志运用代码画图

我的log文件:

这里大家看一下名字设置的和我一样吗,不一样后面自己要更改。

画图:

1.loss

1.1 loss是干嘛的

(常规介绍)

模型训练loss值是用来度量模型在训练数据上的拟合程度和预测误差的指标。

在训练过程中,模型通过最小化loss值来优化模型的参数,使其能够更好地拟合训练数据。当loss值越小,说明模型在训练数据上的预测结果与真实值的差距越小,表示模型的性能越好。

通过监控和分析loss值的变化,可以帮助我们理解模型的训练过程。如果loss值在训练过程中持续下降,表示模型正逐渐学习到数据的特征并进行拟合;如果loss值在训练过程中出现波动,可能表示模型遇到了一些困难,需要调整学习率或其他参数来优化模型;如果loss值在训练过程中停止下降或者开始上升,可能表示模型已经过拟合了训练数据,需要采取一些正则化方法来避免过拟合。

总之,通过监控和分析loss值,可以帮助我们追踪模型的训练过程和性能,并根据需要对模型进行调整和优化。

1.2 代码
python 复制代码
from matplotlib import rcParams
import matplotlib.pyplot as plt
import re

# 显示中文
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = 'SimSun,Times New Roman'

text = ''
file = open('log2.txt')  # 您的log.txt文件放在与python文件同级目录下
for line in file:
    text += line
file.close()
all_list = re.findall('Train loss: .*[0-9]', text)

train_loss = []
for i in all_list:
    train_loss.append(float(i.split('Train loss: ')[1].split(' ||')[0]))

plt.plot(train_loss, label='Train loss')

plt.xlabel('Epoch')
plt.ylabel('Loss')
plt.title('Training Loss')
plt.legend(loc='best')
plt.show()
1.3 生成图

2.DICE.IOU

2.1 DICE,IOU是干嘛的(常规介绍)

DICE(Diversity, Independence, Complete Explanation )是一种用于评估机器学习模型性能的指标。在分割模型中,DICE系数被广泛应用。
DICE系数用于度量两个集合的相似性,通常用于评估分割模型的预测准确性。在分割任务中,模型预测出的分割结果与真实的分割结果进行比较。DICE系数的计算公式如下:

DICE = (2 * TP) / (2 * TP + FP + FN)

其中,TP表示正确预测的正样本数量,FP表示错误预测的正样本数量,FN表示未能预测到的正样本数量。DICE系数的取值范围为[0, 1],数值越接近1表示模型预测结果越接近真实结果,数值越接近0表示模型预测结果与真实结果差异越大。

在分割模型中,DICE系数常被用作评估模型的性能指标。通过计算模型预测结果与真实结果之间的DICE系数,可以衡量模型在分割任务中的准确性和稳定性。较高的DICE系数通常表示模型预测结果与真实结果较为一致,而较低的DICE系数可能暗示模型存在较大的误差或不准确性。

因此,DICE系数在分割模型中的作用是评估模型的预测准确性,并提供一种量化的衡量方式,帮助研究人员和从业者比较不同模型的性能,并进行模型的优化和改进。

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

IOU(Intersection over Union)被用于评估分割结果的准确性。IOU衡量了预测分割结果与真实分割结果之间的重叠程度。

具体来说,IOU是通过计算预测分割结果的边界框(或像素)与真实分割结果的边界框(或像素)之间的交集面积除以它们的并集面积得到的。IOU的取值范围是0到1,表示预测分割结果与真实分割结果的重叠程度,数值越大表示分割结果越准确。

在训练过程中,常常使用IOU作为损失函数的一部分,帮助模型学习到更准确的分割结果。同时,在评估模型性能时,也会使用IOU作为一个重要的指标来衡量模型的分割准确性。
公式形式如下: IOU = (交集面积) / (并集面积)

2.2 代码
python 复制代码
from matplotlib import rcParams
import matplotlib.pyplot as plt
import re

# 显示中文
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = 'SimSun,Times New Roman'

text = ''
file = open('log2.txt')  # 您的log.txt文件放在与python文件同级目录下
for line in file:
    text += line
file.close()
all_list_iou = re.findall('IOU: .*[0-9]', text)
all_list_dice = re.findall('DICE: .*[0-9]', text)

iou_scores = []
dice_scores = []
for i in all_list_iou:
    iou_scores.append(float(i.split('IOU: ')[1].split(', DICE:')[0]))
for i in all_list_dice:
    dice_scores.append(float(i.split('DICE: ')[1].split(' ||')[0]))

plt.plot(iou_scores, label='IOU')
plt.plot(dice_scores, label='DICE')

plt.xlabel('Epoch')
plt.ylabel('Score')
plt.title('IOU and DICE Scores')
plt.legend(loc='best')
plt.show()
2.3 生成图
小白tip

训练完成后可能没有log.txt文件哈,小白看这里!这里可能会生成一个日期时间(或者其他任何).log文件,你直接打开文件点击查看,这个文件扩展名给它打上勾,然后回去到那个日志文件直接更改成log.txt

相关推荐
JELEE.1 小时前
Django登录注册完整代码(图片、邮箱验证、加密)
前端·javascript·后端·python·django·bootstrap·jquery
m0_650108243 小时前
【论文精读】CMD:迈向高效视频生成的新范式
人工智能·论文精读·视频扩散模型·高效生成·内容 - 运动分解·latent 空间
电鱼智能的电小鱼3 小时前
基于电鱼 AI 工控机的智慧工地视频智能分析方案——边缘端AI检测,实现无人值守下的实时安全预警
网络·人工智能·嵌入式硬件·算法·安全·音视频
年年测试3 小时前
AI驱动的测试:用Dify工作流实现智能缺陷分析与分类
人工智能·分类·数据挖掘
孫治AllenSun3 小时前
【算法】图相关算法和递归
windows·python·算法
唐兴通个人4 小时前
人工智能Deepseek医药AI培训师培训讲师唐兴通讲课课程纲要
大数据·人工智能
共绩算力4 小时前
Llama 4 Maverick Scout 多模态MoE新里程碑
人工智能·llama·共绩算力
DashVector5 小时前
向量检索服务 DashVector产品计费
数据库·数据仓库·人工智能·算法·向量检索
AI纪元故事会5 小时前
【计算机视觉目标检测算法对比:R-CNN、YOLO与SSD全面解析】
人工智能·算法·目标检测·计算机视觉
音视频牛哥5 小时前
从协议规范和使用场景探讨为什么SmartMediaKit没有支持DASH
人工智能·音视频·大牛直播sdk·dash·dash还是rtmp·dash还是rtsp·dash还是hls