直觉:AI 不是一种技术,而是一类目标
工程师容易把「人工智能」直接等同于「神经网络」或「大模型」。但更准确的说法是:AI 是一个目标导向的领域——让机器完成那些「我们原本认为需要人类智能才能完成的任务」。这个定义有个尴尬的副作用:一旦某个问题被解决,它往往就不再被算作 AI(这被称为「AI 效应」),比如下棋、OCR、垃圾邮件过滤。
理解 AI 的历史,本质上是理解人类对「智能是什么」的两种根本假设之间的拉锯:智能是显式符号操作,还是从数据中涌现的统计模式。
机制:两条技术路线的数据流
符号主义(GOFAI)
符号主义假设:智能 = 对符号的逻辑操作。知识被显式编码为规则与事实,推理就是在这些符号上做搜索与演绎。
典型的数据流是:
1 | 事实库 + 规则库 ──► 推理引擎(前向/后向链) ──► 结论 |
一个最小的前向链推理:
1 | facts = {"发烧", "咳嗽"} |
它的优势是可解释、可验证:每一步推理都能回溯。专家系统(如 MYCIN)、定理证明器、Prolog 都属于这一脉。其致命弱点是知识获取瓶颈——规则必须由人手写,且现实世界的例外多到无法穷举。处理「一张图里有没有猫」这种感知问题时,符号主义几乎无能为力,因为你无法用 if-else 写出「猫」的定义。
连接主义 / 统计学习
连接主义反其道而行:不写规则,而是定义一个带大量可调参数的函数 ,让它从数据中拟合出输入到输出的映射。
知识不再是显式规则,而是分布在数百万参数里的权重。数据流变成:
1 | 原始数据 ──► 参数化模型 f_θ ──► 损失 L ──► 梯度 ──► 更新 θ |
这条路线对感知类任务(视觉、语音、语言)压倒性地有效,代价是可解释性差、依赖海量数据与算力。
公式视角:为什么深度学习「能学到」非线性
单个线性层 永远只能表达线性映射,叠多少层都没用——因为线性变换的复合仍是线性变换。深度网络的关键在于层间插入非线性激活 :
通用逼近定理(Universal Approximation Theorem)从理论上保证:一个足够宽的单隐层网络配合非线性激活,可以以任意精度逼近紧集上的连续函数。但「存在」不等于「可学」——实践中我们靠深度(而非无限宽度)来高效地构造层级特征:底层学边缘,中层学纹理与部件,高层学语义。这种**表示学习(representation learning)**正是深度学习区别于传统机器学习的内核:特征不再由人手工设计,而是端到端学出来的。
工程权衡:三条路线不是替代而是分工
| 维度 | 符号主义 | 传统 ML(含手工特征) | 深度学习 |
|---|---|---|---|
| 知识来源 | 人写规则 | 人设计特征 + 算法学权重 | 端到端学表示 |
| 数据需求 | 低 | 中 | 高 |
| 可解释性 | 强 | 中 | 弱 |
| 感知任务 | 差 | 一般 | 强 |
| 逻辑/约束 | 强 | 弱 | 弱 |
现实系统几乎都是混合的。一个推荐系统可能用深度模型做召回,再用业务规则(符号)做硬性过滤;自动驾驶用神经网络做感知,用规则与优化做决策与安全约束。近年的「神经符号(neuro-symbolic)」方向正是想把两者缝合:用神经网络处理感知与不确定性,用符号系统保证逻辑一致性与可验证性。
常见误区
- 「AI = 深度学习」:深度学习只是当下最有效的一条路线,AI 还包括搜索、规划、博弈、概率推理、约束求解等大量非神经方法。
- 「符号主义已死」:编译器、SAT/SMT 求解器、知识图谱、形式化验证都是活得很好的符号 AI,只是不再被贴「AI」标签。
- 「数据越多越好,所以不用管偏置」:统计学习继承数据里的一切——包括偏差、噪声、分布漂移。模型不会「理解」,只会拟合你喂给它的分布。
小结
AI 的主线是从「把智能写成规则」到「让智能从数据里涌现」的范式迁移。符号主义给了我们可解释、可验证的推理,但卡在知识获取;连接主义用可微分的参数化函数和梯度下降绕过了手写规则,在感知任务上取得突破,但牺牲了可解释性并吃掉了海量数据与算力。理解这条脉络,你才能判断手上的问题该用哪条路线——或者,像绝大多数真实系统那样,把它们组合起来。