Skip to content

AI 基础原理

人工智能系统看起来千差万别,但底层都在处理三个问题:如何把现实问题转换成可计算任务,如何从数据中学习一个函数,以及如何确认这个函数在新数据上仍然有效。

模型训练与泛化闭环

从业务问题到模型问题

以“识别可能流失的会员”为例,业务目标是提前干预,模型目标则必须进一步明确:

  • 输入:会员最近 30 天的访问、购买、退款和客服行为。
  • 输出:未来 14 天内是否流失,或流失概率。
  • 样本单位:某位会员在某个观察时点的一次快照。
  • 标签:观察时点后 14 天内是否满足流失定义。
  • 指标:召回多少真正会流失的用户,同时避免打扰太多正常用户。
  • 约束:预测时不能使用未来订单和事后客服结果。

如果这些内容没有定义清楚,后续训练只是在优化一个含义模糊的数字。

模型在学习什么

模型可以写成一个函数:

text
预测结果 = 模型(输入数据, 参数)

训练不是把答案存进模型,而是反复调整参数,使模型在大量样本上的预测误差尽量小。模型真正需要学到的是可以迁移到新样本的稳定规律。

mermaid
flowchart LR
  A[业务问题] --> B[任务定义]
  B --> C[样本与标签]
  C --> D[训练模型]
  D --> E[验证与选择]
  E --> F[部署推理]
  F --> G[监控与反馈]
  G --> C

一次训练的基本循环

  1. 从训练集中取一批样本。
  2. 模型执行前向计算,得到预测。
  3. 损失函数比较预测和目标。
  4. 反向传播计算参数对损失的影响。
  5. 优化器根据梯度更新参数。
  6. 在验证集上检查泛化效果。
  7. 达到停止条件后,在测试集上做最终评估。

传统机器学习可能直接求解或逐轮拟合,深度学习通常显式执行这套批训练循环,但目标是一致的。

四个不能混淆的对象

对象用途常见错误
训练集更新模型参数混入未来信息
验证集选择模型和超参数被反复调参后间接过拟合
测试集最终估计泛化效果提前查看并据此修改模型
线上数据真实运行输入分布可能与离线数据不同

基础原理阅读顺序

  1. 数据与任务建模:把业务目标变成输入、输出和标签。
  2. 数学直觉:理解向量、概率、导数和梯度在做什么。
  3. 训练与优化:理解模型怎样从误差中更新参数。
  4. 泛化与评估:理解怎样判断模型真的有效。

学习这一层的验收标准

面对一个新需求,应能写出:

  • 预测时刻、观察窗口和目标窗口。
  • 样本、特征、标签及其来源。
  • 训练、验证、测试数据的切分方式。
  • 最重要的业务错误及对应指标。
  • 可能发生的数据泄漏、偏差和分布漂移。

这些内容决定项目是否成立,算法选择通常在它们之后。

别急,先让缓存热一下。