机器学习 & 大模型微调 面试八股文完整指南

涵盖 传统机器学习LLM Post-Training 微调 两大核心板块,适用于算法工程师 / AI 工程师面试准备。


第一部分:传统机器学习


一、核心基础概念

1.1 监督学习 vs 无监督学习 vs 半监督学习

类型定义典型算法
监督学习训练数据有标签(输入-输出对)LR、SVM、决策树、随机森林、XGBoost
无监督学习训练数据无标签,发现隐藏结构K-Means、DBSCAN、PCA、GMM
半监督学习少量有标签 + 大量无标签数据标签传播、自训练
强化学习智能体与环境交互,最大化累积奖励Q-Learning、PPO、DQN

1.2 偏差-方差权衡(Bias-Variance Tradeoff)⭐ 超高频

偏差(Bias): 模型预测值与真实值之间的差距。高偏差 = 模型太简单 = 欠拟合

方差(Variance): 模型对训练数据微小变化的敏感程度。高方差 = 模型太复杂 = 过拟合

总误差分解:

=²++
情况训练误差测试误差解决方案
高偏差(欠拟合)高(与训练误差接近)增加模型复杂度、增加特征、减少正则化、延长训练
高方差(过拟合)高(远大于训练误差)增加数据、增强正则化、降低复杂度、集成学习、Early Stopping
理想状态低(与训练误差接近)

1.3 过拟合与欠拟合

过拟合的常见解决方法:

  1. 正则化(L1 / L2 / Elastic Net)
  2. 增加训练数据 / 数据增强
  3. Dropout(神经网络)
  4. Early Stopping(监控验证集损失,提前停止训练)
  5. 交叉验证(更可靠地评估模型泛化能力)
  6. 剪枝(决策树)
  7. 降低模型复杂度(减少层数、参数、特征)

1.4 正则化(Regularization)⭐ 高频

正则化通过在损失函数中添加惩罚项,限制模型复杂度,防止过拟合。

类型惩罚项效果别名
L1 正则化λ Σ|wᵢ|产生稀疏解(部分权重变为 0)→ 特征选择Lasso
L2 正则化λ Σwᵢ²权重整体缩小但不为 0 → 权重衰减Ridge
Elastic Netα·L1 + (1-α)·L2兼顾稀疏性和稳定性弹性网络

为什么 L1 产生稀疏解而 L2 不会?

几何解释:L1 正则化的约束区域是菱形(顶点在坐标轴上),损失函数的等高线与菱形的交点更容易落在坐标轴上(某些参数恰好为 0)。L2 的约束区域是圆形,交点通常不在轴上,所以参数不会变为 0,只会变小。

正则化的贝叶斯解释:

  • L2 正则化 ↔ 权重的高斯先验(MAP 估计)
  • L1 正则化 ↔ 权重的拉普拉斯先验

1.5 交叉验证(Cross-Validation)

方法原理适用场景
Hold-out一次性划分训练集/验证集/测试集数据量大
K-Fold分 K 份,轮流 1 份验证,K-1 份训练,取平均最常用,K=5 或 10
Stratified K-FoldK-Fold 改进,保证每折类别比例一致类别不平衡
LOOCVK=N,每次留 1 个样本做验证数据量极小

K-Fold 的优点: 充分利用所有数据进行训练和验证,减少评估方差,结果更可靠。

K-Fold 的缺点: 计算量为 Hold-out 的 K 倍。

1.6 评估指标

分类指标

指标公式含义适用场景
Accuracy(TP+TN) / (TP+TN+FP+FN)整体正确率类别平衡
PrecisionTP / (TP+FP)预测为正中真正为正的比例关注误报(如垃圾邮件检测)
RecallTP / (TP+FN)真正为正中被找回的比例关注漏报(如疾病检测)
F1 Score2·P·R / (P+R)P 和 R 的调和均值P 和 R 都重要时
AUC-ROCROC 曲线下面积分类器的排序能力阈值无关的整体评估
AP / mAPPR 曲线下面积类别极不平衡时优于 AUC

混淆矩阵:

TFPPFTNN

ROC 曲线: 横轴 FPR = FP/(FP+TN),纵轴 TPR = TP/(TP+FN)。AUC 越接近 1 越好。

回归指标

指标公式说明
MSEΣ(yᵢ - ŷᵢ)² / n对异常值敏感
RMSE√MSE与原始数据同量纲
MAEΣ|yᵢ - ŷᵢ| / n对异常值鲁棒
1 - SS_res / SS_tot模型解释的方差比例,越接近 1 越好

二、经典算法详解

2.1 逻辑回归(Logistic Regression)⭐ 必考

本质: 虽然名字带"回归",但它是一种分类算法。

原理:

  1. 先做线性组合:z = wᵀx + b
  2. 通过 Sigmoid 函数 映射到 (0,1):σ(z) = 1 / (1 + e⁻ᶻ)
  3. 输出值作为 P(Y=1|X) 的概率

损失函数: 交叉熵(Cross-Entropy)/ 对数损失

L=-[y·log(ŷ)(1-y)·log(1-ŷ)]

为什么不用 MSE?因为 Sigmoid + MSE 组合是非凸函数,有多个局部最小值,无法保证收敛到全局最优。交叉熵是凸函数。

优化方法: 梯度下降、牛顿法、L-BFGS

多分类扩展:

  • OvR(One-vs-Rest):训练 K 个二分类器
  • Softmax 回归:直接做多分类,输出 K 类概率

优点: 简单高效、可解释性强(输出概率)、适合大规模在线学习、容易正则化

缺点: 线性模型,无法处理复杂非线性关系(需手动特征工程);对异常值敏感

2.2 支持向量机(SVM)⭐ 必考

核心思想: 找到一个最大间隔的超平面,将不同类别的数据分开。

关键概念:

  • 支持向量: 离决策超平面最近的那些样本点,决定了超平面的位置
  • 间隔(Margin): 两类支持向量到超平面的距离之和
  • 硬间隔: 严格要求所有样本正确分类(数据线性可分)
  • 软间隔: 引入松弛变量 ξᵢ 和惩罚参数 C,允许少量错分

目标函数(软间隔):

msi.nt.½y||ww||x²++Cb·)Σξ1-ξ,ξ0
  • C 大 → 对错分惩罚严厉 → 倾向硬间隔 → 可能过拟合
  • C 小 → 容忍更多错分 → 更大间隔 → 可能欠拟合

核函数(Kernel):

核函数公式适用场景
线性核K(x,y) = xᵀy线性可分或特征维度已经很高
多项式核K(x,y) = (xᵀy + c)ᵈ需要一定非线性
RBF(高斯核)K(x,y) = exp(-γ||x-y||²)最常用,万能近似
Sigmoid 核K(x,y) = tanh(αxᵀy + c)类似神经网络

核技巧的本质: 无需显式计算高维映射 φ(x),而是直接在原始空间计算内积 K(x,y) = φ(x)ᵀφ(y),大幅降低计算成本。

SVM 优缺点:

优点缺点
小样本表现好大数据训练慢 O(n²)~O(n³)
高维空间有效核函数和参数选择困难
有理论保证(结构风险最小化)不直接输出概率
支持向量决定模型,鲁棒性好对缺失值敏感

2.3 决策树(Decision Tree)⭐ 必考

基本思想: 通过递归选择最优特征将数据划分为子集,构建树形结构。

三种经典算法对比:

算法划分准则树类型特点
ID3信息增益多叉树偏向取值多的特征;不能处理连续值和缺失值
C4.5信息增益率多叉树修正 ID3 偏向;可处理连续值和缺失值
CART基尼指数(分类)/ MSE(回归)二叉树可做分类和回归;生成二叉树

信息论基础:

GGaGHHaii((innDDn_i|r(ADaD=),t)i-=Ao=Σ)(ΣD1p=,-|HAlD()ΣoDg|=p/|-G²pDa|Hi))(nD(·|DA,H)(AD))/H_A(D)

剪枝策略:

策略时机特点
预剪枝树生长过程中设置最大深度、最小样本数、最小增益阈值等提前停止
后剪枝树生成完毕后自底向上,用验证集评估剪枝前后效果,效果通常更好

优缺点:

优点缺点
可解释性强(可视化)容易过拟合
不需要特征缩放对数据小变化敏感(高方差)
能处理数值和类别特征贪心算法,非全局最优

2.4 集成学习(Ensemble Learning)⭐ 重中之重

Bagging vs Boosting

BaggingBoosting
核心思想并行训练多个模型,结果投票/平均串行训练,每轮纠正上一轮错误
采样方式有放回抽样(Bootstrap)调整样本权重(或拟合残差)
主要降低方差(Variance)偏差(Bias)
基学习器强学习器(如深决策树)弱学习器(如浅决策树)
并行✅ 可并行❌ 必须串行
过拟合风险相对高(需控制迭代轮数)
代表算法Random ForestAdaBoost, GBDT, XGBoost, LightGBM

随机森林(Random Forest)

= Bagging + 决策树 + 特征随机采样

两重随机性(关键!):

  1. 样本随机:Bootstrap 有放回抽样生成每棵树的训练集
  2. 特征随机:每个节点分裂时随机选择特征子集(通常 √p 个特征)

优点:

  • 精度高、泛化好、不容易过拟合
  • 可评估特征重要性
  • 可并行训练,速度快
  • 对异常值和噪声鲁棒

缺点:

  • 可解释性差(黑盒模型)
  • 对高噪声数据可能过拟合
  • 占用内存较多(存储多棵树)

GBDT vs XGBoost vs LightGBM ⭐ 超高频

特性GBDTXGBoostLightGBM
导数信息一阶梯度一阶 + 二阶(泰勒展开)一阶 + 二阶
正则化无显式正则L1 + L2 正则项L1 + L2 正则项
缺失值不自动处理自动处理(学习默认方向)自动处理
树生长策略Level-wiseLevel-wiseLeaf-wise(更高效)
并行不支持特征级并行特征级并行
速度
内存较高更低(直方图算法)
特有技术列抽样、加权分位数GOSS + EFB
小数据集通常更好可能过拟合
大数据集较好最好

XGBoost 相比 GBDT 的核心改进:

  1. 二阶泰勒展开:使用损失函数的一阶和二阶导数,更精确的优化
  2. 正则化项:目标函数加入叶子节点数量和权重的正则化
  3. 列抽样:类似 Random Forest 的随机特征采样
  4. 自动处理缺失值:训练时学习缺失值的最优划分方向
  5. 支持并行:特征粒度的并行计算

LightGBM 相比 XGBoost 的核心改进:

  1. Leaf-wise 生长:每次选增益最大的叶子分裂(XGBoost 是 Level-wise 逐层)
  2. GOSS(Gradient-based One-Side Sampling):保留大梯度样本 + 随机采样小梯度样本
  3. EFB(Exclusive Feature Bundling):将互斥特征捆绑在一起,减少特征数
  4. 直方图算法:将连续特征离散化为直方图,减少计算和内存

Stacking

  • 训练多个不同类型的基模型
  • 用基模型的预测结果作为新特征,训练一个元学习器(Meta-Learner)
  • 可以组合不同类型模型的优势

2.5 KNN(K-Nearest Neighbors)

要点内容
原理找到距离最近的 K 个邻居,多数投票(分类)/ 加权平均(回归)
距离度量欧氏距离、曼哈顿距离、闵可夫斯基距离、余弦相似度
K 值选择K 太小 → 过拟合(对噪声敏感);K 太大 → 欠拟合(边界模糊)
类型懒学习(Lazy Learning),无显式训练过程
优点简单直观、无需训练、天然支持多分类
缺点预测慢(需遍历所有样本)、高维数据效果差(维度灾难)、对特征尺度敏感(需标准化)
加速KD-Tree、Ball-Tree、LSH(局部敏感哈希)

2.6 朴素贝叶斯(Naive Bayes)

核心公式(贝叶斯定理):

P(Y|X)=P(X|Y)·P(Y)/P(X)

“朴素"假设: 所有特征在给定类别下条件独立

P(X|Y)=P(x|Y)·P(x|Y)··P(x|Y)

常见变体:

变体P(xᵢ|Y) 的分布假设适用数据
高斯朴素贝叶斯高斯分布连续特征
多项式朴素贝叶斯多项式分布文本(词频)
伯努利朴素贝叶斯伯努利分布二值特征

优点: 速度快、小数据效果好、适合文本分类(垃圾邮件、情感分析)

缺点: 独立性假设过强;对特征相关性敏感;零概率问题(需拉普拉斯平滑)

2.7 聚类算法

K-Means

流程:

  1. 随机初始化 K 个聚类中心
  2. 将每个样本分配到最近的中心
  3. 更新每个中心为所属样本的均值
  4. 重复步骤 2-3 直到收敛

K 值选择:

  • 肘部法则(Elbow Method):画 K vs SSE 曲线,找"肘部"拐点
  • 轮廓系数(Silhouette Score):衡量簇内紧密度和簇间分离度

缺点: 需要预设 K;对初始化敏感;只能发现球形簇;对异常值敏感

改进: K-Means++(更好的初始化策略)、Mini-Batch K-Means(更快)

DBSCAN

  • 基于密度的聚类,不需要预设 K
  • 参数:ε(邻域半径)、MinPts(最小邻域点数)
  • 能发现任意形状的簇,能自动识别噪声点
  • 缺点:对参数 ε 和 MinPts 敏感;高维数据效果差

K-Means vs DBSCAN

K-MeansDBSCAN
需要预设 K✅ 是❌ 否
簇形状球形任意形状
异常值处理自动标记噪声点
时间复杂度O(nKt)O(n log n)

2.8 降维算法

PCA(主成分分析)

目标: 找到数据方差最大的正交方向(主成分),投影到低维空间。

步骤:

  1. 数据标准化(零均值)
  2. 计算协方差矩阵
  3. 特征值分解(或 SVD)
  4. 选取前 k 个最大特征值对应的特征向量
  5. 将数据投影到这 k 个方向上

关键点:

  • 无监督降维,不考虑标签信息
  • 第一主成分 = 数据方差最大的方向
  • 主成分之间正交(不相关)
  • 信息损失 = 被丢弃的特征值之和 / 总特征值之和

PCA vs LDA

PCALDA
类型无监督有监督
目标最大化投影后方差最大化类间距 / 最小化类内距
适用降维、去噪、可视化分类前的降维

三、优化算法

3.1 梯度下降(Gradient Descent)⭐ 必考

核心思想: 沿着损失函数梯度的反方向,迭代更新参数,逐步逼近最小值。

参数更新公式:

θ=θ-α·L(θ)

三种变体

变体每次用多少数据优点缺点
BGD(批量)全部训练数据梯度准确、稳定收敛速度慢、内存大
SGD(随机)1 个样本速度快、可逃出局部最小梯度噪声大、不稳定
Mini-Batch GD一小批(32/64/128)最常用,平衡速度和稳定性需要选择 batch size

学习率

  • 太大:震荡甚至发散,无法收敛
  • 太小:收敛速度极慢
  • 策略:学习率衰减(Step Decay、Cosine Annealing)、Warm-up、自适应学习率

3.2 常见优化器对比

优化器核心思想特点
SGD基础随机梯度下降简单但收敛慢
SGD + Momentum累积历史梯度方向,加入"惯性”加速收敛、减少震荡
Adagrad自适应学习率(频繁更新的参数降低学习率)适合稀疏数据,但学习率会持续衰减
RMSpropAdagrad 改进,用指数移动平均替代累积解决学习率持续衰减问题
AdamMomentum + RMSprop 结合最常用,一阶矩估计 + 二阶矩估计,自适应学习率
AdamWAdam + 权重衰减解耦大模型训练首选

四、特征工程

4.1 数据预处理

方法公式效果适用
归一化(Min-Max)(x - x_min) / (x_max - x_min)缩放到 [0,1]特征量纲差异大;对异常值敏感
标准化(Z-Score)(x - μ) / σ均值 0,方差 1更鲁棒,适用于大多数场景

哪些算法需要特征缩放?

  • 需要:SVM、KNN、逻辑回归、神经网络、PCA、K-Means
  • 不需要:决策树、随机森林、XGBoost(基于排序的划分)

4.2 特征选择

类型方法说明
Filter(过滤式)方差阈值、相关系数、卡方检验、互信息与模型无关,速度快
Wrapper(包裹式)前向选择、后向消除、RFE依赖模型评估,效果好但慢
Embedded(嵌入式)L1 正则化、树模型特征重要性训练中自动选择,平衡效果和效率

4.3 处理类别不平衡

方法说明
过采样(SMOTE)对少数类生成合成样本
欠采样随机删除多数类样本
代价敏感学习调整类别权重(class_weight)
Focal Loss降低易分类样本的权重,聚焦难分样本
评估不用 Accuracy,用 F1、AUC-ROC、PR 曲线

4.4 缺失值处理

  • 删除含缺失值的样本/特征
  • 填充:均值 / 中位数 / 众数 / 插值
  • 用模型预测缺失值
  • XGBoost / LightGBM 可自动处理

五、数学基础

5.1 概率统计

概念要点
MLE(极大似然估计)找使观测数据似然函数最大的参数 θ^,只关注数据本身
MAP(最大后验估计)MLE + 先验分布 P(θ),等价于正则化的 MLE
贝叶斯 vs 频率学派贝叶斯:参数是随机变量,有先验;频率派:参数是固定未知量
生成模型 vs 判别模型生成:学 P(X,Y)(朴素贝叶斯、HMM、GMM);判别:学 P(Y|X)(LR、SVM、NN)
中心极限定理独立同分布变量之和的分布趋近正态分布
大数定律样本均值趋近总体均值

5.2 信息论

概念公式含义
熵(Entropy)H = -Σ pᵢ log₂(pᵢ)衡量不确定性/混乱程度
条件熵H(Y|X)已知 X 后 Y 的不确定性
信息增益H(Y) - H(Y|X)知道 X 后不确定性减少了多少
KL 散度Σ p(x) log(p(x)/q(x))两个分布的差异(非对称)
交叉熵-Σ p(x) log(q(x))分类损失函数的理论基础
互信息I(X;Y) = H(X) - H(X|Y)X 和 Y 共享的信息量

六、高频综合对比

LR vs SVM

维度逻辑回归SVM
损失函数Log Loss(交叉熵)Hinge Loss
输出概率值 P(Y=1|X)分类标签(或到超平面距离)
解的特点所有样本参与优化只有支持向量决定模型
非线性需手动特征交叉核技巧自动映射
正则化一般 L2结构风险最小化(自带)
适合大数据、在线学习、需要概率输出小数据、高维、非线性

生成模型 vs 判别模型

生成模型判别模型
学什么P(X, Y) 或 P(X|Y) 和 P(Y)P(Y|X)
代表朴素贝叶斯、HMM、GMM、VAELR、SVM、决策树、NN
优点可做无监督、可生成新样本直接分类,精度通常更高
缺点建模复杂、需要更强假设不能生成新样本

算法选择指南

场景推荐算法
数据量小、特征多SVM(核函数)、朴素贝叶斯
需要概率输出逻辑回归
需要可解释性决策树、逻辑回归
结构化表格数据XGBoost / LightGBM(实战首选)
非结构化数据(图像/文本)深度学习(CNN / Transformer)
在线学习 / 大规模数据SGD 优化的 LR
不确定用什么先试 XGBoost / LightGBM

第二部分:LLM 模型微调 / Post-Training


七、SFT(Supervised Fine-Tuning,监督微调)

核心概念

SFT 是在预训练模型基础上,使用 高质量的指令-响应对数据 进行监督训练,让模型学会遵循人类指令、生成特定格式和内容的回答。

高频考点

问题要点
SFT 与预训练的区别?预训练用海量无标注数据学通用语言知识(next token prediction),SFT 用少量标注数据(指令-响应对)学特定指令和任务
SFT 数据集要求?需要高质量的指令-响应对,数据质量 > 数据量,几千条高质量数据就能有效
SFT 后模型"变傻"了?(灾难性遗忘)微调导致通用能力下降;缓解:混入通用数据做多任务微调、数据回放
预训练 vs SFT 哪个注入知识?预训练阶段注入知识,SFT 主要是激活/对齐已有知识的表达方式
多轮对话怎么微调?用多轮对话格式的数据进行 SFT,注意 loss mask(只在 assistant 回复部分计算 loss)
SFT 的 loss 函数?交叉熵损失,与预训练相同(next token prediction),但只对 response 部分计算

八、RLHF(Reinforcement Learning from Human Feedback)

核心流程(三阶段)

123:::SRPFMPTORMKLpromptre+wa(rcdSRhFeoTwsaernPd_PrOMeosdpeolnse,rejected_response)

高频考点

问题要点
为什么需要 RLHF?SFT 需要"标准答案",无法处理多目标平衡(有用、无害、真实);RLHF 将人类偏好转化为可优化的 reward 信号
RLHF 比 SFT 好在哪?能处理复杂的、主观的偏好对齐,不需要给出"标准答案",可通过人类排序来学习
RM 得分越高越好吗?不一定! 可能出现 Reward Hacking(模型钻 RM 漏洞刷分,但实际质量没提升甚至下降)
PPO 中为什么加 KL 约束?防止策略模型偏离初始 SFT 模型太远,避免 reward hacking 和模式崩塌
RLHF 的缺点?①人工偏好标注成本高 ②训练流程复杂(需同时运行 4 个模型:策略、参考、RM、价值网络)③训练不稳定 ④计算资源消耗大
Pretraining Loss vs SFT Loss vs RLHF Reward?Pretraining:通用语言建模。SFT:模仿人类写的标准回复。RLHF:优化人类偏好分数(不是模仿,而是探索更好的回答)

九、DPO(Direct Preference Optimization)

核心思想

不需要单独训练 Reward Model,也不需要 PPO,直接用偏好数据优化模型策略。

通过数学推导,将 RLHF 的目标函数重新参数化,把 RM 的 reward 用策略模型的 log-probability 隐式表达。

DPO 的损失函数

L_DPO=-E[logσ(β·(logπ(y_w|x)/π_ref(y_w|x)-logπ(y_l|x)/π_ref(y_l|x)))]

其中 y_w 是 chosen(被偏好的回答),y_l 是 rejected(不被偏好的回答),π_ref 是参考模型(SFT 模型)。

高频考点

问题要点
DPO vs RLHF?DPO 去掉了 RM 和 PPO,直接在偏好对上做训练;训练更稳定、更简单、计算开销更小
DPO 的优势?①简化流程 ②训练稳定 ③计算开销小 ④效果与 RLHF 相当甚至更好
DPO 的局限?依赖高质量偏好数据;对 out-of-distribution 的泛化可能不如 RLHF;对 β 参数敏感
什么时候选 DPO?想要对齐效果但不想搞复杂 RL 训练,有偏好数据对即可

十、LoRA(Low-Rank Adaptation)

核心原理

在 Transformer 权重矩阵旁边注入低秩分解矩阵

W'=WWBr+R^Δ{RWd^d×{=dd}×Wr}+AB·AR^{r×d}

训练时冻结原始权重 W₀,只训练 B 和 A

为什么 LoRA 能工作?

Aghajanyan et al. (2020) 证明,微调时的权重更新矩阵 ΔW 具有低内在维度(low intrinsic dimensionality),即 ΔW 是低秩的。因此用低秩矩阵 BA 近似 ΔW 是合理的。

高频考点

问题要点
LoRA 的优势?①参数量极小(通常 <1% 原模型)②显存大幅减少 ③可热插拔切换任务 ④避免灾难性遗忘(原始权重冻结)
秩 R 怎么选?R 越大表达能力越强但效率下降;通常 R=8~64;需根据任务复杂度调参
LoRA 一般加在哪?Attention 的 Q、K、V、O 投影矩阵以及 MLP 层(实践中至少加 Q 和 V)
推理有额外开销吗?没有! 推理时将 BA 合并回原始权重 W’ = W₀ + BA,零额外延迟
LoRA vs 全量微调?全量微调:更新所有参数,需更多显存和数据;LoRA:只更新 <1% 参数,效率高,效果接近全量微调
LoRA 的缩放因子 α?实际 ΔW = (α/r)·B·A,α 控制 LoRA 更新的缩放强度

十一、QLoRA(Quantized LoRA)

核心思想

在 LoRA 基础上,将基座模型量化到 4-bit(NF4 格式),LoRA adapter 保持高精度(FP16/BF16),计算时反量化回 16-bit。

三大核心技术

技术说明
4-bit NormalFloat(NF4)针对正态分布权重优化的量化格式,比普通 INT4 更精确
Double Quantization对量化常数(scaling factor)再做一次量化,每参数额外省约 0.37 bit
Paged Optimizers用 NVIDIA 统一内存做 CPU-GPU 自动分页,避免 OOM

高频考点

问题要点
QLoRA vs LoRA?QLoRA 在 LoRA 基础上加了基座模型 4-bit 量化,显存进一步大幅降低
性能损失大吗?论文表明几乎无损,某些 benchmark 甚至优于全量微调
消费级 GPU 能微调大模型吗?QLoRA 使得单张 24GB GPU 微调 70B 模型成为可能

十二、其他 PEFT 方法(常作对比)

方法原理特点
Adapter Tuning在 Transformer 层间插入小型 Adapter 模块比 LoRA 参数略多,推理有额外延迟(不能合并进原始权重)
Prompt Tuning在输入前添加一组可学习的连续虚拟 token极其轻量(只训练几个 token),但效果依赖模型规模
Prefix Tuning在每层 attention 的 K、V 前加可学习前缀比 Prompt Tuning 表达能力更强(每层都有前缀)
P-Tuning v2Prefix Tuning 的改进版,在每一层都加前缀效果接近全量微调
IA³学习三个缩放向量作用于 K、V、FFN参数量极小,甚至少于 LoRA

PEFT 方法对比

可训练参数量推理额外延迟效果实现复杂度
LoRA小(<1%)(可合并)简单
QLoRA小(<1%)中等
Adapter中等简单
Prompt Tuning极小轻微中等简单
Prefix Tuning轻微中等偏好中等
全量微调100%最好

十三、综合对比与选择

SFT vs RLHF vs DPO 怎么选?

场景推荐方法
有明确标准答案/格式,想让模型模仿特定风格或注入领域知识SFT
需要复杂的价值对齐(安全、无害、有用的平衡),有预算做人工标注RLHF
想要对齐效果但不想搞复杂 RL 训练,有偏好数据对DPO
资源有限,快速适配SFT + LoRA/QLoRA

RAG vs 微调 怎么选?

维度RAG微调
知识更新✅ 适合频繁更新的知识❌ 需要重新训练
引用来源✅ 可追溯❌ 不可追溯
改变行为/风格❌ 受限✅ 深层改变
延迟较高(需检索)较低
私有数据安全数据存在外部检索库知识内嵌模型

全量微调 vs LoRA 显存估算

方法7B 模型13B 模型70B 模型
全量微调~112-140 GB~208-260 GB~1120-1400 GB
LoRA~16-20 GB~28-36 GB~80-100 GB
QLoRA~6-10 GB~12-16 GB~20-36 GB

估算公式:全量微调 ≈ 参数量 × 16~20 bytes(FP16 参数 + 梯度 + Adam 优化器状态 × 2)


十四、Post-Training 全景流程

-SRDRKIOFLPLTPRTHOAOOP::"F:I::O(:F:PK:KNS:ITnVeu(RdOQovxpAMedwLC(telKnd/lLaPr"iAatseMcrTvgIhiQd,heoinntRAge-ksmeyaTeF,teeePmtlrndnPaPi/DaatOnroisiPF)-eGshnriTfPPtAienverTitndeereQltgi-refle)cTsne/antukcrttinyeeAiioinWoonnOcQnngpe,)t.Opt.

复习优先级建议:

  • 🔴 最高优先:偏差-方差、正则化 L1/L2、LR、SVM、决策树、XGBoost vs LightGBM、梯度下降、SFT、RLHF、DPO、LoRA/QLoRA
  • 🟡 高优先:随机森林、KNN、朴素贝叶斯、评估指标、交叉验证、特征工程、PCA
  • 🟢 中优先:K-Means、DBSCAN、数学基础、其他 PEFT 方法、Stacking

最后更新:2026-03-19