2025-12-24
深度学习
00

1. GAE (Generalized Advantage Estimation) 基础

为什么需要优势函数?

在强化学习中,我们想知道:在状态sts_t采取动作ata_t,比平均水平好多少?

A(st,at)=Q(st,at)V(st)A(s_t, a_t) = Q(s_t, a_t) - V(s_t)

  • Q(st,at)Q(s_t, a_t): 采取动作ata_t后的期望回报
  • V(st)V(s_t): 状态sts_t的平均期望回报
  • A>0A > 0: 这个动作比平均好,应该鼓励
  • A<0A < 0: 这个动作比平均差,应该抑制
2025-12-24
深度学习
00

Proximal Policy Optimization (PPO):

JPPO(θ)=E(q,a)D,otπθold(q)[min(πθ(otq,o<t)πθold(otq,o<t)A^t,clip(πθ(otq,o<t)πθold(otq,o<t),1εlow,1+εhigh)A^t)]\mathcal{J}_{\text{PPO}}(\theta) = \mathbb{E}_{(q,a)\sim\mathcal{D}, o_{\leq t}\sim\pi_{\theta_{\text{old}}}(\cdot|q)} \left[ \min \left( \frac{\pi_\theta(o_t \mid q, o_{<t})}{\pi_{\theta_{\text{old}}}(o_t \mid q, o_{<t})} \hat{A}_t, \text{clip}\left(\frac{\pi_\theta(o_t \mid q, o_{<t})}{\pi_{\theta_{\text{old}}}(o_t \mid q, o_{<t})}, 1-\varepsilon_{\text{low}}, 1+\varepsilon_{\text{high}}\right) \hat{A}_t \right) \right]
  • θ\theta: 当前策略模型的参数(正在训练的新模型)
  • θold\theta_{\text{old}}: 旧策略模型的参数(用于采样数据的模型)
  • πθ(otq,o<t)\pi_\theta(o_t \mid q, o_{<t}): 当前策略在给定任务 qq 和历史观察 o<to_{<t} 下,输出动作 oto_t 的概率
  • πθold(otq,o<t)\pi_{\theta_{\text{old}}}(o_t \mid q, o_{<t}): 旧策略输出同样动作的概率
  • A^t\hat{A}_t: 优势函数估计值(Advantage),表示该动作比平均水平好多少
  • εlow,εhigh\varepsilon_{\text{low}}, \varepsilon_{\text{high}}: 裁剪参数的下界和上界

模型和价值模型在PPO训练中的区别和作用时机:

核心区别

奖励模型 (Reward Model)

  • 作用: 评估单个动作或整个轨迹的好坏
  • 输出: 标量奖励信号 r_t
  • 来源: 环境反馈或外部评判器
2025-12-23
深度学习
00

GSPO

版本依赖:ms-swift >= 3.11

Megatron GSPO 当前已支持以下功能:

  • 训练模式:全参数训练与 LoRA 微调
  • 并行策略:支持上下文并行(CP)、流水线并行(PP)、张量并行(TP)和专家并行(EP)
  • 推理加速:支持 vLLM 的 colocate 模式和 server 模式
  • 模型支持:兼容 Megatron Swift 中的 LLM 及 MLLM(多模态大模型)
  • 算法支持:涵盖 swift GRPO 的大部分功能(GSPO 基于 GRPO 算法)
2025-12-22
深度学习
00
bash
展开代码
export LD_LIBRARY_PATH=/usr/local/nvidia/
2025-12-22
深度学习
00

https://github.com/vllm-project/vllm/blob/v0.11.0/pyproject.toml

在pyproject.toml中查看pytorch版本:

bash
展开代码
requires = [ "cmake>=3.26.1", "ninja", "packaging>=24.2", "setuptools>=77.0.3,<80.0.0", "setuptools-scm>=8.0", "torch == 2.8.0", "wheel", "jinja2", ]

安装uv:

bash
展开代码
curl -LsSf https://astral.sh/uv/install.sh | sh source $HOME/.local/bin/env

查看cuda版本:

bash
展开代码
nvcc --version

安装vllm:

bash
展开代码
uv pip install vllm==0.11.0 --torch-backend=cu129 --system --break-system-packages

torch如果掉了就再装:

bash
展开代码
# CUDA 12.9 uv pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cu129 --system
2025-12-22
深度学习
00

https://github.com/NVIDIA/apex

为了可以离线安装,现编译出whl文件:

bash
展开代码
#!/bin/bash # 构建 apex whl 文件的脚本 # 创建输出目录 mkdir -p /workspace/wheels # 配置 pip 源(避免代理问题,使用国内镜像) export PIP_INDEX=${PIP_INDEX:-https://mirrors.aliyun.com/pypi/simple/} export PIP_TRUSTED_HOST=${PIP_TRUSTED_HOST:-mirrors.aliyun.com} # 先安装构建依赖(避免构建时下载失败) pip install --no-cache-dir -i ${PIP_INDEX} --trusted-host ${PIP_TRUSTED_HOST} \ packaging wheel setuptools pyproject-metadata # 克隆 apex 仓库 git clone https://github.com/NVIDIA/apex.git /workspace/apex # 进入 apex 目录 cd /workspace/apex # 设置环境变量(与 Dockerfile 中保持一致) export TORCH_CUDA_ARCH_LIST="7.0;7.5;8.0;8.6;8.9;9.0" export CUDA_HOME=/usr/local/cuda export MAX_JOBS=${MAX_JOBS:-16} # 使用 pip wheel 构建 whl 文件(不安装) # -w 指定输出目录 # --no-build-isolation: 使用已安装的构建依赖,不创建隔离环境 # --no-deps: 不安装运行时依赖(只构建 wheel) NVCC_APPEND_FLAGS="--threads 4" APEX_PARALLEL_BUILD=8 APEX_CPP_EXT=1 APEX_CUDA_EXT=1 \ pip wheel -v --no-build-isolation --no-deps -i ${PIP_INDEX} --trusted-host ${PIP_TRUSTED_HOST} \ -w /workspace/wheels . echo "apex whl 文件已构建完成,保存在 /workspace/wheels 目录" ls -lh /workspace/wheels/*.whl

重新安装:

bash
展开代码
pip uninstall -y apex || true && APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation /workspace/apex-0.1-cp312-cp312-linux_x86_64.whl
2025-12-21
深度学习
00
2025-12-17
DL论文
00

https://huggingface.co/XiaomiMiMo/MiMo-V2-Flash

摘要

我们推出了 MiMo-V2-Flash 模型。这是一个混合专家(MoE)模型,总参数量 309B,实际运行参数量 15B,兼顾推理能力强、响应速度快,适合智能体任务。

模型采用了混合注意力结构,结合了滑动窗口注意力(SWA)和全局注意力,滑动窗口长度 128 token,混合比例为 5:1。我们通过多 token 预测(MTP)进行了 27 万亿 token 的预训练,上下文长度初始为 32K,后续扩展至 256K。

为了高效开展训练后优化,我们引入了创新的“多教师策略蒸馏”(MOPD)方法。这种方法让多个领域专家模型(例如通过大规模强化学习训练得到)提供密集的 token 级奖励信号,使学生模型能完整掌握教师模型的能力。

尽管总参数量分别仅为 DeepSeek-V3.2 和 Kimi-K2 的 1/2 和 1/3,MiMo-V2-Flash 的性能仍可媲美这些顶尖开源模型。在推理阶段,我们将 MTP 模块用作推测解码的草稿模型,配合三层 MTP 结构,实现了平均 3.6 的接受长度和 2.6 倍的解码加速。

我们将完整模型权重及三层 MTP 权重全部开源,以促进开放研究和社区协作。

2025-12-17
LLaMA-Factory
00

mask_history 参数详解

1. 基本定义

54:57:src/llamafactory/hparams/data_args.py
展开代码
mask_history: bool = field( default=False, metadata={"help": "Whether or not to mask the history and train on the last turn only."}, )
2025-12-16
DL论文
00

https://arxiv.org/pdf/2509.02544

1. 他们到底想解决什