将txt转成excel正则化公式的调整

将训练的结果转换成excel是送到画图的关键,但是在转的过程中出现了问题,发现是正则化公式的结果。

使用网站进行调试,最终可以转了。下面是调试的工具以及调试好的代码。

regex101: build, test, and debug regex

上面是正则化公式,下面是他的txt文件中的格式,要对应好才能转换。最后调好了,是没加空格的问题。

复制代码
import re
import pandas as pd

# 读取日志文件
log_file = r"origin\原始\20241102_191949.txt"  # 替换为你的日志文件路径
with open(log_file, "r", encoding="utf-8") as f:
    lines = f.readlines()

# 初始化存储数据的列表
data = []

# 正则表达式提取数据
pattern = r"\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2},\d{3} - pyskl - INFO - Epoch \[(\d+)\]\[(\d+)\/(\d+)\]\s+lr: ([\d.e+-]+),\s+eta: ([\d\w\s:,]+),\s+time: ([\d.]+),\s+data_time: ([\d.]+),\s+memory: ([\d]+),\s+top1_acc: ([\d.]+),\s+top5_acc: ([\d.]+),\s+loss_cls: ([\d.]+),\s+loss: ([\d.]+),\s+grad_norm: ([\d.]+)"

# 解析日志文件
for line in lines:
    print(f"Processing line: {line.strip()}")  # 调试信息
    match = re.search(pattern, line)
    if match:
        print(f"Match found: {match.groups()}")  # 调试信息
        # 提取匹配的数据
        epoch = int(match.group(1))
        current_step = int(match.group(2))
        total_steps = int(match.group(3))
        lr = float(match.group(4))
        eta = match.group(5)
        time = float(match.group(6))
        data_time = float(match.group(7))
        memory = int(match.group(8))
        top1_acc = float(match.group(9))
        top5_acc = float(match.group(10))
        loss_cls = float(match.group(11))
        loss = float(match.group(12))
        grad_norm = float(match.group(13))

        # 将数据添加到列表中
        data.append([epoch, current_step, total_steps, lr, eta, time, data_time, memory, top1_acc, top5_acc, loss_cls, loss, grad_norm])
    else:
        print("No match found")  # 调试信息

# 创建 DataFrame
columns = ["Epoch", "Current Step", "Total Steps", "Learning Rate", "ETA", "Time", "Data Time", "Memory", "Top1 Accuracy", "Top5 Accuracy", "Loss Cls", "Loss", "Grad Norm"]
df = pd.DataFrame(data, columns=columns)

# 保存为 Excel 文件
output_file = r"rigin\原始\20241102_191949.xlsx"  # 替换为你的输出文件路径
df.to_excel(output_file, index=False)

print(f"数据已保存到 {output_file}")
相关推荐
chunmiao30321 分钟前
116 家科技公司联名预警:AI 网络攻击进入高发期
人工智能·科技·安全
科技林总5 分钟前
提示词测评概述
人工智能
武子康5 分钟前
开放权重之后,为什么 Agent 仍然无法复现:真正缺的是可重放行为证据
人工智能·llm·agent
2601_966949655 分钟前
五档盘口数据对量化交易有什么价值?从信号判断到策略风险的完整分析
开发语言·人工智能·python·数据分析·量化·股票数据·quantdash
cxhello16 分钟前
消费者活着、心跳正常、日志干净,但它七天没拉过一条消息
python·kafka
xiaokcehui18 分钟前
地球物理大地测量学计算系列之十七局部重力场SRBF逼近及其性能指标测评
人工智能·算法·机器学习
砚底藏山河19 分钟前
【量化纯GET实战 #11】移动均线 MA:5 日 20 日 60 日怎么算怎么用
java·python·金融·maven
小吴学不废Java23 分钟前
Python 基础语法
开发语言·python
weixin_4334176724 分钟前
阿里视频大模型wan2.7‑t2v,可以生成视频
人工智能·python·音视频
宣宣猪的小花园.33 分钟前
【控制算法】PID 不只是三个参数:比例、积分、微分各在解决什么问题
人工智能·嵌入式硬件·机器学习