学习目标
学习本课后,你将能够:
- 解释符号、规则、知识库和推理引擎;
- 描述机器学习流程:数据、训练、模型和推理;
- 区分显式逻辑与从数据中学习的参数;
- 根据任务需求和约束选择方法;
- 识别混合系统并解释其架构。
1. 什么是符号主义 AI
符号主义 AI 通过符号和结构表示对象、关系与知识,例如名称、类别、逻辑表达式、图、规则和事实。系统对这些表示执行操作,从而得出结论或选择行动。
知识库可以包含事实“泵 P-17 位于 R-2 房间”,以及规则“如果轴承温度超过阈值,则发出警告”。推理引擎检查条件并触发结论。
核心组成部分
- 知识表示:如何编码对象、属性、关系和约束。
- 事实:关于具体对象或情境的陈述。
- 规则:将条件与结论或动作连接起来的 IF–THEN 表达。
- 推理引擎:将规则应用于事实的程序过程。
- 解释轨迹:导致输出的事实与规则序列。
2. 示例:规则不会学习
def diagnose_temperature(temp_c, limit_c=85):
if temp_c > limit_c:
return {"status": "warning", "reason": "threshold exceeded"}
return {"status": "normal", "reason": "within rule limit"}
print(diagnose_temperature(92))85°C 的阈值由开发者预先指定。程序只是将测量值与阈值比较,并没有通过训练样本估计阈值。输入中存在数据,并不意味着系统在进行机器学习。
3. 逻辑推理、搜索与规划
正向推理从已知事实开始,通过规则推导新事实。反向推理从假设开始,寻找能够支持它的事实和规则。
搜索在状态和可能行动空间中进行。导航系统可以搜索道路图,规划器可以在资源约束下选择操作顺序。这些系统无需训练神经网络,也能成为有用的 AI 系统。
4. 什么是机器学习
在机器学习中,模型根据数据或经验调整参数,以完成指定任务。开发者仍需定义问题、选择模型家族、准备数据并指定评价标准,而算法负责从样本中估计参数。
- 数据:观测、特征和目标值。
- 模型:具有可调参数的函数或算法家族。
- 目标:损失函数或其他性能指标。
- 训练:使用训练数据估计参数。
- 验证:在未用于拟合的数据上评估。
- 推理:将训练好的模型应用于新数据。
5. 模型究竟从数据中学到什么
线性模型的参数可能是系数;决策树的参数可能是分裂条件;神经网络的参数则是权重和偏置。训练并不保证发现因果规律:模型是在现有数据上优化指定目标。
有偏或不完整的数据可能导致模型学到不理想的模式。目标泄漏会夸大评估分数。因此,数据来源、合理划分和独立评估都是机器学习的必要环节。
6. 两种方法的比较
| 维度 | 符号主义 AI | 机器学习 |
|---|---|---|
| 逻辑来源 | 显式规则和事实 | 从数据中估计的参数 |
| 人工指定 | 知识、规则和推理机制 | 数据、特征、模型和目标 |
| 更新方式 | 修改规则 | 重新训练或微调 |
| 解释方式 | 通常可以追踪规则链 | 取决于模型,参数可能不透明 |
| 典型难题 | 知识获取、例外情况、扩展性 | 数据质量、偏差、泛化和漂移 |
7. 何时使用哪种方法
当要求明确、逻辑稳定且决策必须可审计时,规则很有用,例如检查传感器范围或表单必填项。
当规律难以手工描述,但存在代表性样本且能够测量错误时,机器学习更合适,例如图像缺陷识别或需求预测。
选择应由任务决定,而不是追随潮流。简单阈值规则可能比复杂模型可靠;视觉和语言任务中的手写规则则可能非常脆弱。
8. 混合式 AI 系统
实际产品可能结合机器学习模型、规则、文档检索和人工审核。例如,模型根据振动估计设备故障风险;规则检查关键限值;检索系统查找手册和维修记录;工程师作出最终决定。将整个产品称为“一个神经网络”并不准确:网络只是一个组件。
9. 案例分析:水泵轴承温度监测
设想一台工业水泵。传感器测量轴承温度,工程师希望提前发现危险工况。最简单的规则可能是:“温度超过 85°C 就报警。”但真实工况更复杂:温度会受到负载、环境温度、启动状态、转速和润滑情况影响。同一个读数在一种工况下可能正常,在另一种工况下却值得警惕。
方案 A:显式规则
专家可以定义多条可检查的条件:超过安全上限时停止水泵;温度上升速度超过规定值时发出警告;传感器故障时请求检查,而不是推断轴承状态。这类规则适合表达强制安全约束。它们可以被审核、批准,并在日志中追踪。但规则依赖领域知识,异常情况增加后,规则集可能越来越复杂。
方案 B:使用数据训练模型
收集温度、振动、负载的历史测量值以及检修结果。为每个时间窗口设置目标标签,例如“未来 24 小时内发现故障”。模型学习与该标签相关的特征组合。它并没有得到一条由人编写的、对所有情况都适用的温度阈值,而是通过算法调整参数,降低训练样本上的预测误差。
随后,应使用未参与拟合的较晚时间段评估模型。这一点很重要:如果随机拆分相邻传感器读数,同一次故障中的相似片段可能同时进入训练集和测试集,导致评估结果高估模型面向未来的能力。
方案 C:混合系统
模型负责估计风险,独立规则负责执行安全限制,工程师审批后果重大的操作。各组件承担不同职责:统计模型发现复杂信号组合,规则落实硬性约束,人类提供现场背景并作出最终决定。混合系统并不会自动变得可靠;还必须测试组件之间的数据传递、规则优先级,以及模型不可用时的行为。
10. 模型训练究竟做了什么
假设模型根据两个特征——温度和振动——预测简化的过热风险。逻辑回归先计算特征的加权和,再将其转换为 0 到 1 之间的数值。只有在任务定义合理且模型经过校准时,这个数值才适合解释为概率;它本身不是保证。
训练时,算法将预测结果与已知标签比较,并调整系数以降低损失函数。需要区分四个概念:
- 特征:输入模型的测量值。
- 目标变量:模型需要预测的结果。
- 参数:训练算法估计得到的数值。
- 超参数:单独设置的训练过程配置,例如正则化强度。
如果工程师手动指定系数和阈值,这些参数就不是从数据中学习得到的。如果算法根据带标签的样本估计系数,即使最终公式简单且容易理解,也属于机器学习。
11. 如何评估模型,避免自我欺骗
不能只在训练样本上评估模型。训练集用于拟合参数;验证集用于选择配置;测试集用于最终独立评估。对于时间序列数据,通常应按时间先后划分。对于多台设备或多个患者的数据,还要检查相关观测是否泄漏到了不同数据集。
评价指标必须反映错误的代价。在故障检测中,漏掉危险事件与产生一次多余警报并不等价。如果故障很少,准确率可能产生误导:始终预测“没有故障”的模型也许准确率很高,却没有实际价值。因此还应关注精确率、召回率、混淆矩阵、PR 曲线以及决策成本。
还要检查环境变化后的稳定性,例如更换设备、传感器、季节或运行方式。数据分布发生变化通常称为漂移。旧数据集上的优秀结果,并不能保证变化后仍然有效。
12. 实用的方案选择框架
- 能否准确写出规则,并列出例外情况?
- 是否必须审计决策的每一个步骤?
- 是否有足够且具有代表性的可靠标注样本?
- 能否衡量误报与漏报的后果?
- 系统运行环境是否会变化?
- 是否需要将硬性约束与概率估计结合?
如果规则简短、稳定且涉及安全,不应仅仅为了使用机器学习就用模型替代它。如果任务涉及复杂图像、语音或大量相互作用的信号,手写规则可能过于脆弱。如果既需要灵活性又需要硬性约束,可以考虑混合架构。
13. 常见设计错误
- 把数据等同于学习。程序可以处理数百万条记录,但仍然完全由预先编写的规则组成。
- 把任何调整都称为机器学习。操作员修改阈值,不等于算法根据样本估计参数。
- 认为机器学习不再需要人工决策。任务定义、数据收集、指标选择和运行监督仍然是工程职责。
- 把混合产品称为神经网络。这会掩盖规则、搜索、数据库和人员的作用。
- 把相关性当作因果关系。条件变化后,预测关联可能消失。
14. 实践任务
判断四种系统的行为来源:阈值为 24°C 的恒温器;使用已标注邮件训练的垃圾邮件过滤器;在道路图中搜索路线的导航系统;由机器学习评估风险、规则阻止违规操作的系统。
参考答案:规则;机器学习;搜索/优化(不一定是机器学习);混合系统。