WandB(Weights & Biases)是一个用于机器学习项目的强大工具,以下是关于它的详细介绍1:
主要功能
- 实验跟踪:能记录模型训练时的损失、准确率、学习率等指标,并实时可视化变化,还可记录自定义指标,如 CPU、GPU 使用率等。
- 超参数管理:帮助记录和比较不同超参数组合对模型的影响,方便快速找到最优参数配置,提高模型性能。
- 模型和数据版本控制:可保存和管理模型检查点、数据集版本,确保实验可追溯和复现,便于研究人员回溯到特定实验阶段。
- 协作与共享:团队成员能在平台上共享实验结果、生成报告,在浏览器中分析模型表现,促进团队协作和知识共享。
应用场景
- 学术研究:研究人员利用 WandB 记录实验细节,比较不同模型性能,提高论文透明度和可验证性,方便与同行交流和分享研究成果。
- 产品开发:机器学习工程师通过共享实验结果,加速模型迭代,提高产品开发效率,提升产品质量。
- 自动化调参:对于资源密集型应用,其超参数搜索功能可减少人工试错时间,自动找到最优模型配置,节省时间和计算资源。
- 数据资产管理:确保数据和模型版本有效管理,防止 “数据漂移” 问题,保障长期项目中数据和模型的稳定性和可靠性。
使用方法
- 注册登录:在官网注册账号,登录后获取 API key4。
- 安装:在命令行中使用
pip install wandb进行安装24。 - 基本代码示例
收起
python
import wandb
# 初始化一个新的wandb实验
run = wandb.init(project="my_first_project")
# 保存模型输入和超参数
config = run.config
config.learning_rate = 0.01
# 假设这里是模型训练代码,在训练过程中记录指标
for i in range(10):
# 这里假设loss是训练过程中计算得到的损失值
run.log({"loss": loss})
# 标记实验结束,完成所有数据上传
run.finish()
from huggingface_hub import login
from kaggle_secrets_import UsersecretsClient
user_secrets = UserSecretsclient()
hf_token = user_secrets.get_secret("HUGGINGFACE_TOKEN")
login(hf_token)
## 使用colab环境变量
from huggingface_hub import login
from google.Lolab import userdata
hf_token = userdata.get('deepseekr1')
login(hf_token)
login(hf_token) hf_token = userdata.get(‘deepseekr1’)
```python
import wandb
wb_token = user_secrets.get_secret(“wandb”)
run = wandb.init( wandb. login(key=wb_token) anonymous=“allow” job_type=“training”, project=‘Fine-tune-DeepSeek-R1-Distill-Llama-8B on Medical COT Dataset’, anonymous"“allow” )