AI-专家系统
专家系统(ES)是人工智能的重要研究领域之一。它是由斯坦福大学计算机科学系的研究人员介绍的。
什么是专家系统?
专家系统是为解决特定领域的复杂问题而开发的计算机应用程序,具有非凡的人类智慧和专业知识。
专家系统的特点
- 高性能
- 可理解的
- 可靠
- 响应速度快
专家系统的功能
专家系统能够 -
- 建议
- 指导和协助人类做出决策
- 展示
- 派生解决方案
- 诊断
- 解释
- 解释输入
- 预测结果
- 证明结论的合理性
- 建议问题的替代选项
他们无法 -
- 替代人类决策者
- 拥有人类的能力
- 为不足的知识库生成准确的输出
- 完善自己的知识
专家系统的组件
ES 的组件包括 -
- 知识库
- 推理引擎
- 用户界面
让我们一一简要地看一下——
知识库
它包含特定领域的高质量知识。
展示智慧需要知识。任何ES的成功主要取决于高度准确和精确的知识的收集。
什么是内识?
数据是事实的集合。信息被组织为有关任务域的数据和事实。数据、信息和过去的经验结合在一起被称为知识。
知识库的组件
ES 的知识库是事实知识和启发式知识的存储。
-
事实知识 - 它是知识工程师和学者在任务领域广泛接受的信息。
-
启发式知识 - 它是关于实践,准确的判断,一个人的评估能力和猜测。
知识表示
它是用于组织和形式化知识库中知识的方法。它以IF-THEN-ELSE规则的形式出现。
知识获取
任何专家系统的成功主要取决于存储在知识库中的信息的质量、完整性和准确性。
知识库由各种专家、学者和知识工程师的阅读材料形成。知识工程师是一个具有同理心、快速学习和案例分析技能的人。
他通过记录、采访和观察他的工作等方式从学科专家那里获取信息。然后,他以有意义的方式对信息进行分类和组织,以IF-THEN-ELSE规则的形式,供干扰机器使用。知识工程师还监视 ES 的开发。
推理引擎
推理引擎使用高效的程序和规则对于推断出正确、完美的解决方案至关重要。
对于基于知识的 ES,推理引擎从知识库中获取和操作知识以达到特定的解决方案。
在基于规则的 ES 的情况下,它 -
-
将规则重复应用于从早期规则应用中获取的事实。
-
如果需要,将新知识添加到知识库中。
-
解决多个规则适用于特定情况时的规则冲突。
为了推荐解决方案,推理引擎使用以下策略 -
- 正向链接
- 向后链接
正向链接
专家系统的一种策略是回答“接下来会发生什么?
在这里,推理引擎遵循条件和推导链,最终推导出结果。它考虑所有事实和规则,并在得出结论之前对其进行分类。
遵循此策略来处理结论、结果或效果。例如,预测股票市场状况作为利率变化的影响。
向后链接
通过这种策略,专家系统可以找到问题的答案,“为什么会这样?
根据已经发生的事情,推理引擎试图找出过去可能发生过哪些条件才能获得此结果。遵循此策略以找出原因或原因。例如,人类血癌的诊断。
用户界面
用户界面提供 ES 用户与 ES 本身之间的交互。它通常是自然语言处理,以便精通任务域的用户使用。ES的用户不一定是人工智能方面的专家。
它解释了 ES 如何得出特定建议。解释可能以以下形式出现 -
- 屏幕上显示自然语言。
- 自然语言的口头叙述。
- 屏幕上显示的规则编号列表。
用户界面使跟踪扣除的可信度变得容易。
高效 ES 用户界面的要求
-
它应该帮助用户以尽可能短的方式实现他们的目标。
-
它应该设计为适用于用户现有或期望的工作实践。
-
其技术应适应用户的要求;反之则不然。
-
它应该有效地利用用户输入。
专家系统限制
没有任何技术可以提供简单而完整的解决方案。大型系统成本高昂,需要大量的开发时间和计算机资源。ES 有其局限性,包括 -
- 技术的局限性
- 知识获取困难
- ES 难以维护
- 开发成本高
专家系统的应用
下表显示了可以应用 ES 的位置。
应用 | 描述 |
---|---|
设计领域 | 相机镜头设计,汽车设计。 |
医疗领域 | 诊断系统,从观察到的数据中推断疾病的原因,对人类进行医疗手术。 |
监控系统 | 将数据与观察到的系统或规定的行为(例如长石油管道中的泄漏监测)连续比较。 |
过程控制系统 | 基于监视控制物理过程。 |
知识领域 | 找出车辆、计算机中的故障。 |
金融/商业 | 检测可能的欺诈,可疑交易,股票市场交易,航空公司调度,货物调度。 |
专家系统技术
有几个级别的 ES 技术可用。专家系统技术包括 -
-
专家系统开发环境 - ES 开发环境包括硬件和工具。他们是——
-
工作站、小型机、大型机。
-
高级符号编程语言,如 LISt Programming (LISP) 和 PROgrammation en LOGique (PROLOG)。
-
大型数据库。
-
-
工具 - 它们在很大程度上减少了开发专家系统所涉及的工作量和成本。
-
具有多窗口的强大编辑器和调试工具。
-
它们提供快速原型制作
-
具有模型、知识表示和推理设计的内置定义。
-
-
外壳 - 外壳只不过是一个没有知识库的专家系统。shell 为开发人员提供了知识获取、推理引擎、用户界面和解释工具。例如,下面给出的炮弹很少 -
-
Java Expert System Shell (JESS),提供完全开发的 Java API 用于创建专家系统。
-
Vidwan,1993年在孟买国家软件技术中心开发的外壳。它支持以 IF-THEN 规则的形式进行知识编码。
-
专家系统的开发:一般步骤
ES 开发的过程是迭代的。开发 ES 的步骤包括 -
识别问题域
- 问题必须适合专家系统来解决。
- 查找 ES 项目任务域中的专家。
- 建立系统的成本效益。
设计系统
-
确定 ES 技术
-
了解并确定与其他系统和数据库的集成程度。
-
了解这些概念如何最好地代表领域知识。
开发原型
从知识库:知识工程师的工作是 -
- 从专家那里获取领域知识。
- 以 If-THEN-ELSE 规则的形式表示它。
测试和优化原型
-
知识工程师使用示例案例来测试原型是否存在任何性能缺陷。
-
最终用户测试 ES 的原型。
开发和完成 ES
-
测试并确保 ES 与其环境的所有元素(包括最终用户、数据库和其他信息系统)的交互。
-
很好地记录 ES 项目。
-
培训用户使用 ES。
维护系统
-
通过定期审查和更新使知识库保持最新。
-
随着其他信息系统的发展,迎合这些系统的新接口。
专家系统的优势
-
可用性 - 由于软件的批量生产,它们很容易获得。
-
生产成本低 − 生产成本合理。这使得它们负担得起。
-
速度 - 它们提供极快的速度。它们减少了个人投入的工作量。
-
错误率更低 − 与人为错误相比,错误率较低。
-
降低风险 - 它们可以在对人类有害的环境中工作。
-
稳定的反应 - 他们稳定地工作,不会运动、紧张或疲劳。