什么是专家系统?专家系统是一种计算机程序,旨在解决复杂问题并提供像人类专家一样的决策能力。它通过根据用户查询使用推理和推理规则从知识库中提取知识来实现这一点。 专家系统是人工智能的一部分,1970年开发了第一台ES,这是人工智能的第一个成功方法。它通过提取知识库中存储的知识来解决专家最复杂的问题。该系统有助于解决复杂问题的决策事实和启发式都像人类专家一样。之所以这样称呼,是因为它包含了某一特定领域的专家知识,可以解决该特定领域的任何复杂问题。这些系统是为特定领域设计的,例如医学、科学、等。 专家系统的性能是基于知识库中存储的专家知识。知识库中存储的知识越多,系统的性能就越好。ES的一个常见示例是在谷歌搜索框中输入时提示拼写错误。 下图是专家系统工作原理框图: ![人工智能中的专家系统](https://static.javatpoint.com/tutorial/ai/images/expert-systems-in-ai.png) 注意:重要的是要记住,专家系统不是用来取代人类专家的;相反,它被用来帮助人类做出复杂的决定。这些系统不具备人类在特定领域的知识库基础上思考和工作的能力。下面是一些流行的专家系统的例子:
- DENDRAL:这是一个人工智能项目,作为一个化学分析专家系统。它被用于有机化学中,利用未知有机分子的质谱和化学知识基础来检测未知有机分子。
- 霉菌素:这是最早的反向链专家系统之一,旨在发现引起菌血症和脑膜炎等感染的细菌。它还被用于推荐抗生素和诊断凝血疾病。
- PXDES:这是一个专家系统,用于确定肺癌的类型和水平。为了确定疾病,它从看起来像阴影的上半身拍摄了一张照片。这个阴影识别伤害的类型和程度。
- 学员:CaDet专家系统是一个诊断支持系统,可以在早期发现癌症。
专家系统的特点
- 高性能:专家系统为解决特定领域的任何类型的复杂问题提供了高效、准确的高性能。
- 可以理解的:它以一种用户容易理解的方式响应。它可以接受人类语言的输入,并以同样的方式提供输出。
- 可靠:它对于产生高效和准确的输出是非常可靠的。
- 高度响应:ES可以在很短的时间内为任何复杂的查询提供结果。
专家系统组成专家系统主要由三个部分组成:
![人工智能中的专家系统](https://static.javatpoint.com/tutorial/ai/images/expert-systems-in-ai2.png) 1.用户界面在用户界面的帮助下,专家系统与用户交互,将查询作为可读格式的输入,并将其传递给推理引擎。从推理引擎获得响应后,它将输出显示给用户。换句话说,它是一个界面,可以帮助非专业用户与专家系统进行沟通,以找到解决方案。 2.推理机(引擎规则)
- 推理机是专家系统的主要处理单元,被称为专家系统的大脑。它将推理规则应用于知识库,从而得出结论或推断出新的信息。它有助于为用户提出的查询提供无错误的解决方案。
- 在推理引擎的帮助下,系统从知识库中提取知识。
- 有两种类型的推理引擎:
- 确定性推理引擎:从这种类型的推理机得出的结论被假定为正确的。它是基于事实和规则。
- 概率推理引擎:这种类型的推理引擎包含结论的不确定性,并且基于概率。
推理机使用以下模式推导解:
- 正向链接:它从已知的事实和规则出发,运用推理规则将自己的结论添加到已知的事实中。
- 反向链接:这是一种从目标出发,向后证明已知事实的逆向推理方法。
3.知识库
- 知识库是一种存储类型,用于存储从特定领域的不同专家那里获得的知识。它被认为是知识的大存储。知识库越多,专家系统就越精确。
- 它类似于包含特定领域或主题的信息和规则的数据库。
- 还可以将知识库视为对象及其属性的集合。比如狮子是一个物体,它的属性是它是哺乳动物,它不是家畜等。
知识库的组成
- 事实性知识:以事实为基础并为知识工程师所接受的知识属于事实性知识。
- 启发式知识:这种知识是建立在实践、猜测、评估和经验的基础上的。
知识表示:它用于使用If-else规则形式化知识库中存储的知识。 知识收购:它是对领域知识进行提取、组织和结构化,指定从不同专家处获取知识的规则,并将这些知识存储到知识库中的过程。 专家系统的开发在这里,我们将以MYCIN ES为例来解释专家系统的工作原理。以下是构建MYCIN的一些步骤:
- 首先,应为ES提供专业知识。对于MYCIN,细菌感染医学领域的专家会提供病因、症状和该领域其他知识的信息。
- 更新MYCIN知识库成功。为了检验它,医生给它出了一个新问题。问题是通过输入病人的详细信息来识别细菌的存在,包括症状、当前状况和病史。
- ES将需要患者填写一份问卷,以了解患者的一般信息,如性别、年龄等。
- 现在系统已经收集了所有信息,因此它将通过使用推理引擎应用if-then规则并使用存储在知识库中的事实来找到问题的解决方案。
- 最后,它将通过用户界面向患者提供响应。
专家系统开发的参与者 专家系统建设的主要参与者有三个:
- 专家:ES的成功很大程度上取决于人类专家提供的知识。这些专家是那些在某一特定领域具有专长的人。
- 知识工程师:知识工程师是从领域专家那里收集知识,然后根据形式主义将这些知识编入系统的人。
- 最终用户:这是一个特定的人或一群人,他们可能不是专家,并且在专家系统上工作需要针对他的查询的解决方案或建议,这是复杂的。
为什么是专家系统?![人工智能中的专家系统](https://static.javatpoint.com/tutorial/ai/images/expert-systems-in-ai3.png) 在使用任何技术之前,我们必须知道为什么要使用该技术,因此对于ES也是如此。虽然我们在每个领域都有人类专家,那么开发一个基于计算机的系统有什么必要呢?下面是描述ES需求的要点:
- 无内存限制:它可以根据需要存储尽可能多的数据,并且可以在应用程序时记住它。但对于人类专家来说,每次都记住所有的东西是有局限性的。
- 效率高:如果使用正确的知识更新知识库,那么它将提供高效的输出,这对于人类来说可能是不可能的。
- 专长:某一领域的专长:每个领域都有很多人类专家,他们都有不同的技能、不同的经验和不同的技能,所以要得到查询的最终输出并不容易。但如果我们把从人类专家那里获得的知识放入专家系统,那么它就会通过混合所有的事实和知识来提供有效的输出
- 不受感情影响的:这些系统不受人类情绪的影响,如疲劳、愤怒、抑郁、焦虑等。因此,性能保持不变。
- 高安全性:这些系统为解决任何查询提供了高安全性。
- 考虑了所有的事实:为了响应任何查询,它检查并考虑所有可用的事实,并相应地提供结果。但人类专家也有可能因为任何原因而不考虑某些事实。
- 定期更新提高性能:如果专家系统提供的结果存在问题,我们可以通过更新知识库来提高系统的性能。
专家系统的功能以下是专家系统的一些功能:
- 建议:它能够建议人们从特定的ES查询任何域。
- 提供决策能力:它提供了在任何领域做出决策的能力,例如做出任何财务决策、医学决策等。
- 演示一个装置:它能够展示任何新产品,如其功能,规格,如何使用该产品等。
- 解决问题:它有解决问题的能力。
- 解释问题:它还能够提供输入问题的详细描述。
- 解释输入:它能够解释用户给出的输入。
- 预测结果:它可以用来预测结果。
- 诊断:为医疗领域设计的ES已经内置了各种医疗工具,因此无需使用多个组件即可诊断疾病。
专家系统的优点
- 这些系统具有很高的可重复性。
- 它们可以用于人类存在不安全的危险地方。
- 如果知识库包含正确的知识,则错误可能性较小。
- 这些系统的性能保持稳定,因为它不受情绪、紧张或疲劳的影响。
- 它们提供了非常高的速度来响应特定的查询。
专家系统的局限性
- 如果知识库中包含错误的信息,专家系统的响应可能会出错。
- 就像人类一样,它不能为不同的场景产生创造性的输出。
- 它的维护和开发成本非常高。
- 设计知识的获取是非常困难的。
- 对于每个领域,我们都需要一个特定的ES,这是一个很大的限制。
- 它不能自我学习,因此需要手动更新。
专家系统的应用
- 在设计和制造领域
它可以广泛用于设计和制造物理设备,如相机镜头和汽车。
- 在知识领域
这些系统主要用于向用户发布相关知识。用于此领域的两个流行ES是顾问和税务顾问。
- 在金融领域
在金融行业,它被用来检测任何类型的可能的欺诈和可疑活动,并建议银行家是否应该为企业提供贷款。
- 在设备的诊断和故障排除
在医疗诊断中,使用了ES系统,这是这些系统使用的第一个领域。
- 计划与调度
专家系统还可以用于计划和调度一些特定的任务,以实现该任务的目标。
|