人工智能进阶扩展内容
知识表示
用机器可操作的结构表达实体、属性、关系与规则。
前置知识
通俗直觉
人知道“猫是动物,动物需要呼吸”。知识表示把这些事实整理成机器能查询和推理的图或规则。
核心原理
语义网络用节点表示实体或概念,用有方向的边表示关系;规则系统则通过前提推出结论。
数学公式
若 x 是猫,则可以推出 x 是动物。
工作流程
- 1
定义领域实体
- 2
建立关系和属性
- 3
编码事实与规则
- 4
执行查询或逻辑推理
代码示例
知识表示 示例
Python
example.py用途:程序沿着类别层级向上查找属性,体现了知识继承。工业知识图谱会提供更严格的模式、查询语言和一致性约束。
facts = {"猫": {"is_a": "动物"}, "动物": {"needs": "呼吸"}}
def inherit(entity, relation):
current = entity
while current in facts:
if relation in facts[current]:
return facts[current][relation]
current = facts[current].get("is_a")
print(inherit("猫", "needs"))代码解析
程序沿着类别层级向上查找属性,体现了知识继承。工业知识图谱会提供更严格的模式、查询语言和一致性约束。
- — 沿 is_a 关系继承属性
- — 字典模拟一个最小知识图谱
应用场景
- 知识图谱
- 专家系统
- 语义搜索
常见误区
把事实存储当成完整推理
忽略知识的不确定性与时效性
推荐学习资料
视频课程A 级
CS50’s Introduction to Artificial Intelligence with Python
通过搜索、知识表示、概率、优化、机器学习与语言项目学习 AI 基础。
Brian Yu / David J. Malan · Harvard CS50
资料笔记
书籍A 级
Artificial Intelligence: A Modern Approach
以统一框架组织搜索、知识、推理、规划、学习、智能体和机器人等主题。
Stuart Russell / Peter Norvig · AIMA