Wandb:深度神经网络可视化工具介绍及本地部署方式
使用官网可视化
安装
wandb是一个Python库,所以可以直接通过pip来安装:
pip install wandb
注册登陆
然后在wandb官网注册一个账号,并创建你的Team(可以拉入其它小伙伴)和你的Project,然后获取你的账号的私钥。在命令行执行:
wandb login
按提示输入API Key信息。
实例化
import wandb
# 还有其它参数可以配置
wandb.init(project="your_project_name")
使用方法
from transformers import BertModel
import wandb
# create your model
model = BertModel()
wandb.init(project="your project name")
#将model放进去会自动的检测训练过程中的模型不同组件的梯度信息
wandb.watch(model)
# 伪代码,以可视化loss例, 和tensorboard使用方式类似
for epoch in range(epochs):
all_loss = []
for item in data_loader:
logits = model(item.x)
loss = loss_f(logits, item.y)
all_loss.append(loss.item)
wandb.log({'train/loss': mean(all_loss)}, step=epoch)
wandb.watch(model) :可以为我们监视模型各个模块的梯度变化,例如:
本地Docker部署
拉取wandb server的docker镜像
#服务器上需要预先安装Dokcer
docker pull wandb/local
在https://deploy.wandb.ai/deploy 页面中申请得到 License
启动
sudo docker run --rm -d -e LOCAL_RESTORE=true -e HOST=http://<your host>:8080 -e LICENSE=<your license> -p 8080:8080 --name wandb-local wandb/local
手动添加用户
细节见: https://github.com/wandb/local/issues/66
# login the container
docker exec -it wandb-local bash
vi /vol/env/users.htpasswd
# delete the line contain local@wandb.com
/usr/local/bin/local password <your add username>
# input your password
exit
登陆
# shell login
wandb login --host=http://<your host>:8080 <your api key>
# web site
http://<your host>:8080/home