机器学习

学习范式

监督学习(Supervised Learning)

目的:从带标签的数据中学习「输入(特征)→ 输出(标签)」的映射,从而对新的、未见过的样本做出预测。

典型场景:分类(如图像中是哪一种水果)、回归(如预测房价或销量走势)。

无监督学习(Unsupervised Learning)

目的:在无标签数据中发现内在结构或模式,不依赖人工标注,相当于“无师自通”。

典型场景:聚类(如用户分群)、降维(如 PCA)、关联规则(如“买 A 的人也常买 B”)。

强化学习(Reinforcement Learning)

目的:与基于静态数据集的学习不同,在与环境的持续交互中学习。智能体通过试错,根据环境反馈的奖励或惩罚,逐步逼近最优策略。

典型场景:博弈(如围棋、星际争霸)、机器人控制、自动驾驶中的决策。

半监督学习(Semi-supervised Learning)

目的:同时利用少量有标签数据和大量无标签数据,在标注成本有限时提升模型表现。

典型场景:文本分类、图像识别中只有部分样本被标注时的训练。


模型技术

传统方法

  • 支持向量机(SVM):在特征空间中寻找最优分类超平面,适合中小规模、高维数据。
  • 决策树 / 随机森林:可解释性强,易于处理表格型数据与特征重要性分析。

深度学习

  • 深度神经网络(DNN):多层隐藏层堆叠,通过非线性变换逐层抽取高层特征,在图像、语音、自然语言等任务上表现突出。

模型训练

模型训练的目标是找到使损失函数(如均方误差、交叉熵)最小化的参数。常见方式有两类:

解析解(闭式解)

适用于形式简单、存在闭式解的模型。通过数学推导(如最小二乘法、正规方程)一次计算即可得到全局最优参数,无需迭代。

典型场景:线性回归。

梯度下降(Gradient Descent)

适用于可微分、无法直接求解析解的模型(如深度神经网络)。沿损失函数梯度的反方向迭代更新参数,使损失逐步减小,直至收敛。

基本过程

  1. 前向传播:输入训练数据,得到模型预测与当前总损失;
  2. 反向传播:从输出层向输入层逐层计算梯度(链式法则),得到各参数对损失的梯度;
  3. 参数更新:按梯度方向与学习率更新参数;
  4. 重复上述步骤直到损失收敛或达到迭代上限。

常见变体:批量梯度下降(BGD)、随机梯度下降(SGD)、小批量梯度下降(Mini-batch GD)。Mini-batch 在深度学习中最为常用,在计算效率与收敛稳定性之间取得平衡。

模型微调

在将通用预训练模型应用到特定任务或领域时,往往需要对其进行定向调整(微调)。然而,大模型参数量可达数十亿甚至更多,若对全部参数进行更新(全量微调),不仅计算与存储成本极高,还可能导致灾难性遗忘——即削弱模型在预训练阶段学到的通用能力。

LoRA(Low-Rank Adaptation) 是一种参数高效的大模型微调方法。其核心思想是:冻结原始模型的全部参数,不直接修改权重矩阵 W,而是学习一个低秩的增量 ΔW,在推理或前向传播时使用 W + ΔW。具体地,将 ΔW 分解为两个低秩矩阵的乘积 ΔW = B·A(其中 A 为 r×d,B 为 d×r,秩 r ≪ 维度 d),仅训练 A、B,可训练参数量远小于原权重矩阵。

理论依据:在许多任务上,模型权重更新 (\Delta W) 往往具有低秩结构——即有效更新主要集中在少数重要维度上,用低秩矩阵 (B \cdot A) 即可较好地近似全量更新。这样既能在特定任务上适配模型,又显著降低可训练参数量与显存占用,且便于切换不同任务的适配器而不影响基座模型。