Appearance
AI 基础原理
人工智能系统看起来千差万别,但底层都在处理三个问题:如何把现实问题转换成可计算任务,如何从数据中学习一个函数,以及如何确认这个函数在新数据上仍然有效。
从业务问题到模型问题
以“识别可能流失的会员”为例,业务目标是提前干预,模型目标则必须进一步明确:
- 输入:会员最近 30 天的访问、购买、退款和客服行为。
- 输出:未来 14 天内是否流失,或流失概率。
- 样本单位:某位会员在某个观察时点的一次快照。
- 标签:观察时点后 14 天内是否满足流失定义。
- 指标:召回多少真正会流失的用户,同时避免打扰太多正常用户。
- 约束:预测时不能使用未来订单和事后客服结果。
如果这些内容没有定义清楚,后续训练只是在优化一个含义模糊的数字。
模型在学习什么
模型可以写成一个函数:
text
预测结果 = 模型(输入数据, 参数)训练不是把答案存进模型,而是反复调整参数,使模型在大量样本上的预测误差尽量小。模型真正需要学到的是可以迁移到新样本的稳定规律。
mermaid
flowchart LR
A[业务问题] --> B[任务定义]
B --> C[样本与标签]
C --> D[训练模型]
D --> E[验证与选择]
E --> F[部署推理]
F --> G[监控与反馈]
G --> C一次训练的基本循环
- 从训练集中取一批样本。
- 模型执行前向计算,得到预测。
- 损失函数比较预测和目标。
- 反向传播计算参数对损失的影响。
- 优化器根据梯度更新参数。
- 在验证集上检查泛化效果。
- 达到停止条件后,在测试集上做最终评估。
传统机器学习可能直接求解或逐轮拟合,深度学习通常显式执行这套批训练循环,但目标是一致的。
四个不能混淆的对象
| 对象 | 用途 | 常见错误 |
|---|---|---|
| 训练集 | 更新模型参数 | 混入未来信息 |
| 验证集 | 选择模型和超参数 | 被反复调参后间接过拟合 |
| 测试集 | 最终估计泛化效果 | 提前查看并据此修改模型 |
| 线上数据 | 真实运行输入 | 分布可能与离线数据不同 |
基础原理阅读顺序
学习这一层的验收标准
面对一个新需求,应能写出:
- 预测时刻、观察窗口和目标窗口。
- 样本、特征、标签及其来源。
- 训练、验证、测试数据的切分方式。
- 最重要的业务错误及对应指标。
- 可能发生的数据泄漏、偏差和分布漂移。
这些内容决定项目是否成立,算法选择通常在它们之后。
