人工智能(AI) - 专家系统

  • 简述

    专家系统(ES)是人工智能的主要研究领域之一。它是由斯坦福大学计算机科学系的研究人员介绍的。
  • 什么是专家系统?

    专家系统是为解决特定领域的复杂问题而开发的计算机应用程序,具有非凡的人类智能和专业知识。

    专家系统的特点

    • 高性能
    • 可以理解
    • 可靠的
    • 反应灵敏
  • 专家系统的能力

    专家系统能够 -
    • 建议
    • 指导和协助人类决策
    • 演示
    • 得出解决方案
    • 诊断
    • 解释
    • 解释输入
    • 预测结果
    • 证明结论
    • 提出问题的替代方案
    他们无法 -
    • 替代人类决策者
    • 拥有人类能力
    • 为不充分的知识库生成准确的输出
    • 提炼自己的知识
  • 专家系统的组成部分

    ES 的组成部分包括 -
    • 知识库
    • 推理引擎
    • 用户界面
    让我们一一简要介绍 -
    专业系统
  • 知识库

    它包含特定领域和高质量的知识。
    展示智慧需要知识。任何 ES 的成功主要取决于对高度准确和精确的知识的收集。

    什么是知识?

    数据是事实的集合。信息被组织为有关任务域的数据和事实。Data, information,past experience组合在一起称为知识。

    知识库的组成部分

    ES 的知识库是事实和启发式知识的存储。
    • Factual Knowledge− 它是任务领域的知识工程师和学者广泛接受的信息。
    • Heuristic Knowledge− 它是关于实践、准确判断、一个人的评估和猜测的能力。

    知识表示

    它是用于组织和形式化知识库中的知识的方法。它采用 IF-THEN-ELSE 规则的形式。

    知识获取

    任何专家系统的成功主要取决于存储在知识库中的信息的质量、完整性和准确性。
    知识库是由各种专家、学者和专家的阅读形成的。Knowledge Engineers. 知识工程师是具有同理心、快速学习和案例分析能力的人。
    他通过记录、采访、观察他的工作等方式从学科专家那里获取信息。然后他以有意义的方式对信息进行分类和组织,以IF-THEN-ELSE规则的形式,供干扰机使用。知识工程师还监控 ES 的开发。
  • 推理引擎

    推理引擎使用有效的程序和规则对于推断出正确、完美的解决方案至关重要。
    在基于知识的 ES 的情况下,推理引擎从知识库中获取和操作知识以得出特定的解决方案。
    在基于规则的 ES 的情况下,它 -
    • 对从较早的规则应用中获得的事实重复应用规则。
    • 如果需要,将新知识添加到知识库中。
    • 当多个规则适用于特定情况时,解决规则冲突。
    为了推荐解决方案,推理引擎使用以下策略 -
    • 前向链接
    • 反向链接

    前向链接

    回答问题是专家系统的策略,“What can happen next?”
    在这里,推理引擎遵循条件和推导链,并最终推断出结果。它考虑所有事实和规则,并在得出解决方案之前对其进行排序。
    遵循此策略以得出结论、结果或效果。例如,将股票市场状况预测为利率变化的影响。
    前向链接

    反向链接

    通过这种策略,专家系统可以找出问题的答案,“Why this happened?”
    根据已经发生的情况,推理引擎会尝试找出过去可能发生过哪些条件以实现该结果。遵循此策略以找出原因或原因。例如,人类血癌的诊断。
    反向链接
  • 用户界面

    用户界面提供 ES 的用户和 ES 本身之间的交互。它通常是自然语言处理,以便被精通任务领域的用户使用。ES 的用户不一定是人工智能方面的专家。
    它解释了 ES 如何得出特定的建议。解释可能以以下形式出现 -
    • 自然语言显示在屏幕上。
    • 自然语言中的口头叙述。
    • 屏幕上显示的规则编号列表。
    用户界面使追踪扣除的可信度变得容易。

    高效 ES 用户界面的要求

    • 它应该帮助用户以最短的方式完成他们的目标。
    • 它应该被设计为适用于用户现有的或期望的工作实践。
    • 其技术应适应用户的要求;不是相反。
    • 它应该有效地利用用户输入。
  • 专家系统限制

    没有任何技术可以提供简单而完整的解决方案。大型系统成本高昂,需要大量的开发时间和计算机资源。ES 有其局限性,包括 -
    • 技术限制
    • 知识获取困难
    • ES很难维护
    • 开发成本高
  • 专家系统的应用

    下表显示了可以应用 ES 的地方。
    应用 描述
    设计领域 相机镜头设计,汽车设计。
    医疗领域 诊断系统从观察到的数据中推断疾病的原因,对人类进行医疗操作。
    监控系统 将数据与观察到的系统或规定的行为(如长石油管道的泄漏监测)进行连续比较。
    过程控制系统 基于监视控制物理过程。
    知识领域 找出车辆、计算机的故障。
    金融/商业 检测可能的欺诈、可疑交易、股票市场交易、航空公司调度、货物调度。
  • 专家系统技术

    有几个级别的 ES 技术可用。专家系统技术包括 -
    • Expert System Development Environment− ES 开发环境包括硬件和工具。他们是 -
      • 工作站、小型机、大型机。
      • 高级符号编程语言,例如LISP编程(LISP)和PRO克一LOGic(序言)。
      • 大型数据库。
    • Tools− 它们在很大程度上减少了开发专家系统所涉及的工作量和成本。
      • 具有多窗口的强大编辑器和调试工具。
      • 他们提供快速原型
      • 具有模型、知识表示和推理设计的内置定义。
    • Shells− shell 只不过是一个没有知识库的专家系统。外壳为开发人员提供知识获取、推理引擎、用户界面和解释工具。例如,下面给出了几个外壳 -
      • Java 专家系统外壳 (JESS),它提供完全开发的 Java API 来创建专家系统。
      • Vidwan是 1993 年在孟买国家软件技术中心开发的 shell。它支持以 IF-THEN 规则的形式进行知识编码。
  • 专家系统的开发:一般步骤

    ES开发的过程是迭代的。开发 ES 的步骤包括 -

    识别问题域

    • 该问题必须适合专家系统来解决。
    • 为 ES 项目寻找任务领域的专家。
    • 建立系统的成本效益。

    设计系统

    • 识别 ES 技术
    • 了解并确定与其他系统和数据库的集成程度。
    • 了解概念如何最好地代表领域知识。

    开发原型

    从知识库:知识工程师致力于 -
    • 从专家那里获得领域知识。
    • 以 If-THEN-ELSE 规则的形式表示它。

    测试和改进原型

    • 知识工程师使用示例案例来测试原型是否存在任何性能缺陷。
    • 最终用户测试 ES 的原型。

    开发和完成 ES

    • 测试并确保 ES 与其环境的所有元素(包括最终用户、数据库和其他信息系统)的交互。
    • 很好地记录 ES 项目。
    • 训练用户使用 ES。

    维护系统

    • 通过定期审查和更新使知识库保持最新。
    • 随着这些系统的发展,迎合与其他信息系统的新接口。
  • 专家系统的好处

    • 可利用性− 由于软件的大规模生产,它们很容易获得。
    • 减去生产成本− 生产成本合理。这使他们负担得起。
    • 速度− 它们提供极快的速度。它们减少了个人投入的工作量。
    • 减少错误率− 与人为错误相比,错误率较低。
    • 降低风险− 它们可以在对人类有害的环境中工作。
    • 稳定响应− 他们工作稳定,不会动摇、紧张或疲劳。