[ 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

相关推荐
蓝速科技13 分钟前
蓝速科技 AI 数字人一体机:大厂算法与实体落地的务实权衡评测
人工智能·科技
产品设计大观26 分钟前
构建低消耗的产研AI工作流:Workbuddy生态 + 墨刀AI 落地实践
人工智能·ai·产品经理·墨刀·腾讯·产品设计·workbuddy
阿里云大数据AI技术34 分钟前
Hologres 长记忆服务 LoCoMo 评测登顶世界第一,刷新多项 SOTA
人工智能
achong38 分钟前
PenguinHarness实测:LlamaFactory作者新作,0.2元造自进化Agent
人工智能·深度学习
AlloyTeamZy40 分钟前
我发现,一个人做小游戏最难的,根本不是写代码
前端·人工智能·程序员
Hotchip_MEMS43 分钟前
当雾化器遇上MEMS:一场从交互到制造的全链路效率提升
人工智能·笔记·物联网·电脑·制造
水如烟1 小时前
孤能子视角:LLM是续指代投器——从“续指论”与“代投机制”看大语言模型的本质定位
人工智能
BerryS3N1 小时前
2026年AI前沿技术全景深度解析:大模型推理范式变革、Agentic AI工程架构与底层基础设施演进
人工智能·架构
天天爱吃肉82181 小时前
【重磅发布:拿下新超仁达代理权 】
大数据·人工智能·python·功能测试·汽车
神王宝宝 王者小学1 小时前
面向领域驱动架构的查询实现方式
前端·python·架构