问题背景

slurm-161091.out 是保存终端输出信息的文件。
利用文件中的一些关键字符读取loss,并绘制loss曲线。

实现代码

import re
import matplotlib.pyplot as plt

f = open("slurm-161091.out")
data = f.read()

pattern_iter = re.compile(r'iter: (\d+)  total_loss:')
result_iter = pattern_iter.findall(data)
len(result_iter)

pattern_total_loss = re.compile(r'total_loss: (.+)  loss_ce:')
result_total_loss = pattern_total_loss.findall(data)
len(result_total_loss)

iters = []
total_losses = []
for iter in result_iter:
    iters.append(int(iter))

for total_loss in result_total_loss:
    total_losses.append(float(total_loss))

plt.plot(iters, total_losses, label="total_loss")
plt.xlabel("iter")
plt.ylabel("total_loss")
plt.show()

效果展示

在这里插入图片描述

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐