【DeepSeek-R1训练笔记】随手记录一些训练log

背景说明

基本设置

  • 训练算法:DeepSeek-R1-Zero纯RL训练(无long CoT、SFT和蒸馏过程)

  • Base model:Qwen/Qwen2.5-7B-Instruct-1M(huggingface传送门

  • 训练脚本执行:

    bash 复制代码
    bash main_grpo.sh

RL训练过程

第一阶段:正确的格式学习(3PPL数据集)

  • 训练400个step

  • wandb file:run-20250207_161945-1oftdu9q

  • main_grpo.sh脚本配置如下:

    bash 复制代码
    set -x
    MODEL_PATH='Qwen2.5-7B-Instruct-1M'
    export VLLM_ATTENTION_BACKEND=XFORMERS
    python3 -m verl.trainer.main_ppo \
        algorithm.adv_estimator=grpo \
        data.train_files=data/kk/instruct/3ppl/train.parquet \
        data.val_files=data/kk/instruct/3ppl/test.parquet \
        data.train_batch_size=2 \
        data.val_batch_size=4 \
        data.max_prompt_length=400 \
        data.max_response_length=2048 \
        actor_rollout_ref.model.path=$MODEL_PATH \
        actor_rollout_ref.actor.optim.lr=3e-7 \
        actor_rollout_ref.model.use_remove_padding=True \
        actor_rollout_ref.actor.ppo_mini_batch_size=256 \
        actor_rollout_ref.actor.ppo_micro_batch_size=64 \
        actor_rollout_ref.actor.use_kl_loss=True \
        actor_rollout_ref.actor.kl_loss_coef=0.001 \
        actor_rollout_ref.actor.kl_loss_type=low_var_kl \
        actor_rollout_ref.model.enable_gradient_checkpointing=True \
        actor_rollout_ref.actor.fsdp_config.param_offload=True \
        actor_rollout_ref.actor.fsdp_config.grad_offload=True \
        actor_rollout_ref.actor.fsdp_config.optimizer_offload=True \
        actor_rollout_ref.rollout.log_prob_micro_batch_size=160 \
        actor_rollout_ref.rollout.tensor_model_parallel_size=1 \
        actor_rollout_ref.rollout.name=vllm \
        actor_rollout_ref.rollout.gpu_memory_utilization=0.6 \
        actor_rollout_ref.rollout.n=16 \
        actor_rollout_ref.ref.log_prob_micro_batch_size=160 \
        actor_rollout_ref.ref.fsdp_config.param_offload=True \
        algorithm.kl_ctrl.kl_coef=0.001 \
        trainer.critic_warmup=0 \
        trainer.logger=['wandb'] \
        trainer.project_name='GRPO_logic_KK' \
        trainer.experiment_name='Qwen-7B' \
        trainer.n_gpus_per_node=2 \
        trainer.nnodes=1 \
        trainer.default_local_dir=local_dir \
        trainer.default_hdfs_dir=null \
        trainer.save_freq=10 \
        trainer.test_freq=10 \
        trainer.total_epochs=1 $@ 2>&1 | tee grpo.log

验证集:效果逐渐变好

平均reward、答案错误的比例、全对的比例、格式错误比例:前三者趋势正确,但是变化不大,格式错误大幅降低!因为这一步主要是在简单的3PPL数据上学格式,大约10个step可以将格式错误降到0.1以下

平均生成长度:有少量增长,但并不明显,应该是还在第一阶段的问题

再看一下生成答案过程中的一些特点:


再看一下出现的格式错误具体原因:

还出现了不同程度的语言混杂问题:

相关推荐
charlee443 小时前
PandasAI连接LLM进行智能数据分析
ai·数据分析·llm·pandasai·deepseek
FIT2CLOUD飞致云1 天前
七月月报丨MaxKB在企业环境中实现AI落地的具体场景盘点
人工智能·开源·deepseek
陈佬昔没带相机1 天前
Dify MCP功能实测,小参数模型竟然全军覆没!
ollama·deepseek·mcp
量子位2 天前
WAIC抢先爆料:金融“黑马”大模型超DeepSeek刷新SOTA,论文已上线
deepseek
Younglina2 天前
🔮 用Vue3+TypeScript打造沉浸式AI塔罗牌占卜应用 > 一个集成DeepSeek AI、支持PWA的现代化塔罗牌Web应用开发实战分享
前端·vue.js·deepseek
萌主墩墩3 天前
趣玩-Ollama-Llm-Chatrbot
llm·qwen·ollama·deepseek
程序员岳焱4 天前
从 0 到 1:Spring Boot 与 Spring AI 打造智能客服系统(基于DeepSeek)
人工智能·后端·deepseek
前端工作日常4 天前
DeepSeek-R1 系列不同版本的模型配置要求
deepseek
段智华4 天前
# 微调需要准备哪些环境配置?
大模型微调·deepseek
大模型开发4 天前
刷到就是赚到!大模型学习经验分享,帮你少走 3 年弯路
程序员·llm·deepseek