小程序说明
本小程序用于展示大模型全参数微调与参数高效微调之间的参数量和显存占用差异。你可以调节 Transformer 层数、隐藏维度、FFN 维度、LoRA rank、微调方式、数值精度和显卡预算。系统会实时计算 模型总参数量、可训练参数量、可训练比例、压缩倍数和估算显存,并通过矩阵图与柱状图解释 LoRA 如何在冻结模型主体参数的情况下,以较少的新增参数完成模型适配。
用可计算、可观察的方式理解:为什么冻结大模型主体,只训练低秩增量,就能让 LoRA 与 QLoRA 大幅降低微调门槛。
本小程序用于展示大模型全参数微调与参数高效微调之间的参数量和显存占用差异。你可以调节 Transformer 层数、隐藏维度、FFN 维度、LoRA rank、微调方式、数值精度和显卡预算。系统会实时计算 模型总参数量、可训练参数量、可训练比例、压缩倍数和估算显存,并通过矩阵图与柱状图解释 LoRA 如何在冻结模型主体参数的情况下,以较少的新增参数完成模型适配。
单个 d_model × d_model 线性矩阵的更新量对比
四种微调方式的数量级差异
当前训练显存估算与所选显卡预算的关系
模型结构参数的近似拆解
| 组成部分 | 计算说明 | 参数量 |
|---|---|---|
| Embedding | vocab × d_model | — |
| Attention | L × 4 × d_model² | — |
| FFN | — | — |
| LayerNorm | L × 4 × d_model | — |
| 总参数量 | 以上组成之和 | — |
| 当前可训练参数 | — | — |
把结果与公式对应起来
Embedding + L × (Attention + FFN + Norm)
2 × r × d_model = —
L × 每层 LoRA 参数 = —
1.2 × (训练状态 + 激活) = —
本模块用于解释小程序中涉及的基础概念。点击下方问题按钮,可以查看模型结构、LoRA、QLoRA、QKV、FFN、显存估算等概念说明。