wandb简介
wandb是一个优秀的实验可视化平台,其具备[官方文件](https://docs.wandb.ai/)支持友好、易于上手等优点。
下面是在我们的实验中,用到的deom:
首先,安装wandb,在终端将wandb与自己的api key做绑定
pip install wandb
wandb.login() # 这里会提示在哪里找到api,将找到的api粘贴到终端回车即可
然后在自己的代码中添加下面的代码:
import wandb
wb = wandb.init(project='icd_code_experiment',
notes="My first experiment",
tags=["baseline", "threshold"],
config=args)
wb.log({'batch_loss': batch_loss}) # 添加日志示例
wb.log({'epoch_loss': epoch_loss})
wandb.finish()
之后在网页端就可以看到wandb画出的精美图片了,下面是一些例子:
关于wandb网页端的应用,还有很多丰富的内容,另外,wandb还对大模型提示训练做了专门的支持,教程链接在这里:docs.wandb.ai/guides/prom…, wandb官方还给出了许多绘图demo,点击run the code可以运行示例代码,方便更快上手。
wandb画精美的论文图
wandb不仅可以可视化实验过程,还可以画出能够直接用于论文的精美图片,以下是一些例子:
import wandb
import numpy as np
import random
import math
wb = wandb.init(project='Learn_Wandb',
notes="Learn Wandb",
tags=['learn_wandb'],
name='learn_wandb',
config=None)
offset = random.random()
data = []
for i in range(100):
data.append([i, random.random() + math.log(1 + i) + offset + random.random()])
table = wandb.Table(data=data, columns=["step", "height"])
line_plot = wandb.plot.line(table, x='step', y='height', title='Line Plot')
histogram = wandb.plot.histogram(table, value='height', title='Histogram')
scatter = wandb.plot.scatter(table, x='step', y='height', title='Scatter Plot')
wandb.log({'line_1': line_plot,
'histogram_1': histogram,
'scatter_1': scatter})
wb.finish()
这个demo对应的图片为: