首页 理论教育 原型法开发过程_智能信息系统

原型法开发过程_智能信息系统

时间:2022-06-27 理论教育 版权反馈
【摘要】:原型法开发过程_智能信息系统7.3.2 原型法开发过程1.知识获取过程知识获取处理发生在整个系统设计的各个阶段。在概念设计中,要避免使用传统系统经验,例如基于个别实例或部分关系,企图画出一个决策处理的与/或树,这将导致失败。概念设计方法将知识工程师从“过分分析的陷阱”中解放出来,以便有效地设计原型系统。详细设计概念设计建立了系统的主架。

原型法开发过程_智能信息系统

7.3.2 原型法开发过程

1.知识获取过程

知识获取处理发生在整个系统设计的各个阶段。首先描述知识获取过程如下:

(1)知识模型的描述:描述知识领域,包括识别特定知识类、子领域、知识模型的表示、知识源等。

(2)知识源的识别:描述知识源或与知识模型相关的专知。知识源包括:人类专家、文献、指示过程、方法以及与知识模型有关的指南。知识源的识别不是一个简单的资源表,而是识别详细的知识类型内容。例如,专业领域中的专家很少是相同的,至少他们的子领域是不同的。在识别知识源的过程中,识别专家的子领域是重要的。(www.guayunfan.com)

(3)宏知识(macro knowledge)的析取:抽取、分析和综合关于知识模型的知识。它的结果包括一般的领域描述、主要信息处理方式与知识模型有关的对象/实体类的高级描述。本步骤不获取详细的对象描述或较低层的详细知识。

(4)知识的分类:检验、分析和分类高级的概念宏知识,将它们划分为知识模块。这些模块提供特定的、详细的知识结构。

(5)微知识(micro knowledge)的析取:识别、获取和描述组成知识库的详细知识。本步的结果是知识库的所有对象/实体的详细描述、解决问题的启发式知识(规则)、算法以及推理模式(它们形成知识库结构的基础)。

(6)知识形式化:将微知识转换为特定的知识表示模式(如规则、框架等),为软件编码作好准备。本步骤的结果是详细的知识数据结构、利用系统的形式化语言表达所有的微知识。

(7)知识编码:用软件方法实现知识库的数据结构,产生的结果是完整、真实的知识库。

2.领域问题的分析

(1)问题选择:确定系统的任务类型,识别和定义问题及包含的子问题,以及知识领域的描述。经验证明,识别子问题应分别从问题处理过程中识别。例如,系统的任务若是检索,问题被定义为查找信息源,产生所有满足用户需求的信息源子集。子问题容易从信息检索的处理过程中识别,它们是:知识源的分析和处理、检索推理机制的建立和用户信息需求的分析和表达。

(2)明确设计目标:在确定问题的过程中,明确系统的实现目标,包括系统的基本任务、系统元素及子系统之间的关系,构成系统模型。目标的设置要有利于系统的证实,它们可作为每个阶段评估和检测的基础。

(3)确定建造系统的条件:主要包括合理选择的领域专家及其他知识源、知识工程师、投入的经费、提供的软硬件环境以及完成任务的期限。此外,还应尽可能准确地描述系统用户,定义非专家用户的资格,使系统的成功不依赖于用户的专知水平,同时使在设计阶段较容易描述用户接口

(4)可行性分析:包括知识可用性与可存取性、技术可行性、经济可行性与效益,以及建立实用系统的可能性和计划安排的可行性。建立小型原型是评估可行性和系统发展性能的有效方法,因此,应清楚地定义原型实验的范围方法。

3.设计原型系统

原型设计阶段的目标是解决领域知识的形式化问题,定义事实、关系和专家的推理策略,建立原型模型。原型系统的设计分为以下三个阶段。

(1)识别和定义系统的概念模型

本阶段的主要任务是知识获取,识别系统的主要任务,识别和获取有关的重要的概念及其关系,定义概念模型。这些概念和关系对确定知识库的结构是很有用的。任务领域中的概念必须按照问题求解行为的具体例子抽象。专家的思考模式必须包含所有基本元素,并且能被修改和扩充。例如,在信息检索任务中,知识工程师应仔细观察检索专家实现信息检索的方法、主要活动及活动之间的关系和专家使用知识与专长(事实、推理策略)。本阶段除了采访专家获取知识之外,大量信息可从已存的手册、系统使用指南等重要文献中获取。

(2)概念设计

在建立概念模型之后,就可开始概念设计,选择合适的知识工程工具(如知识表示),正式地表示问题和解法。主要工作包括设计适合于专家智能活动的可执行的知识表示模式、推理机制和用户接口。知识工程师应尽快设计和建立一个原型系统,以便提供开始的侧重点。

①知识表示模式设计。所谓知识表示模式设计就是根据领域中知识类型及特征,选择合适的知识表示方法,描述知识模型。一般来说,系统控制知识和专家的决策知识表示为产生式规则;如果对象各要素间的关系可通过逻辑运算去体现,可采用谓词逻辑表示法;对于较复杂的结构对象可使用框架或语义网方法,如专业概念知识。为了有效地表示各种知识,系统可以综合使用多种知识表示方法。设计的结果是应用知识表示工具描述的知识模型。例如,可用与/或树来表示求解问题与子问题的知识结构。

②推理机设计。第三章中讨论了主要的推理方法。推理机设计包括根据应用领域选择推理方法,设计自动推理算法结构,以及其他控制结构和各部分之间的通信机制。它涉及知识的选择和应用问题。

概念设计中提供丰富的概念。各种概念隐含了程序设计方法及知识的表示形式。概念方法可以辅助知识工程师认清对象之间的关系,以便概念化专家决策处理中所使用的各种对象及属性。

在概念设计中,要避免使用传统系统经验,例如基于个别实例或部分关系,企图画出一个决策处理的与/或树,这将导致失败。概念设计方法将知识工程师从“过分分析的陷阱”中解放出来,以便有效地设计原型系统。

(3)详细设计

概念设计建立了系统的主架。详细设计阶段的目标是发展详细的信息处理模型,识别和获取与模型有关的微知识,例如概念、对象/实体的详细描述。主要的工作包括:识别逻辑命题、书写一些描述和过程的伪代码,画出语义网络图;将与/或树转换为自然语言规则;画出直接表示图或模型;识别和命名表示知识的框架及槽;识别和命名数据库的款目等。

详细设计应规定语法和语言的特殊限制,但不应开始实际编码,也就是说详细设计应独立于任何程序设计语言。

自然语言规则提供详细的编码描述规格。应用自然语言表达规则,使所有设计者能容易地明白知识表示结构,便于参加编码和检测。

4.实现原型系统

本阶段的主要任务是选择合适的开发工具,完成原型系统的程序设计,即编码、测试和修改。

(1)系统开发工具的选择

为选择合适的工具,需要考虑如下问题:

①开发工具的通用性。工具系统通用性越强,则在用其构造一个具体的专家系统时,知识工程师的编程任务越复杂,对知识工程师研制系统的能力及编程水平要求越高。例如LISP、OPS5,PROLOG等工具都是通用性较强的工具系统。

使用通用性工具设计的系统,其使用范围较广,便于移植和推广。另一方面,工具系统的通用性越强,一般说来其领域针对性也越差。对于某些专业领域,某一个通用性工具所生成的专家系统的效率往往很低。因此,在选择开发工具时,必须在通用性与方便性、通用性与对具体专业领域的针对性之间进行反复的权衡。

②开发工具的特性与专业领域特性的匹配程度。

●与专业领域的问题特性的比较:着重比较搜索空间的大小、数据的形式、问题的结构等。

●与求解问题的方法特性的比较。例如搜索类型、知识表示法、不确定性的处理方法、控制结构形式等的比较。

●与所构造的ES的功能、指标方面的要求的比较:主要包括系统行为的解释能力、对所处理问题的解释能力、ES学习能力的强弱、知识库维护能力、知识获取能力、人机接口的友善程度、系统的扩展性与协作适应性等。

目前大多数专家系统选用人工智能语言,如PROLOG,LISP。PROLOG的数据库能力较强。它们提供许多适于人工智能处理的功能。选用该类语言,系统设计的主要任务是设计知识库和人机接口。缺点是使用存储空间多、速度慢,因此,可部分使用C语言作为辅助工具。面向较窄专业领域的专家系统,多选用专家系统工具,可以迅速产生原型系统。专家系统工具已与强有力的数据库系统相连接,可用性越来越强,它们成为建造ES的合适工具。若系统设计对于存储空间和速度要求较高,并且知识工程师人力较充足,也可选用一般的程序设计语言,如C、PASCAL,尤其C语言与当前许多计算机的UNIX操作系统兼容,应用较广。

在选择开发工具的过程中,知识工程师起着主要作用,并应与领域专家密切协商,全面考虑硬件、软件、领域问题和上述原则,选出恰当的工具系统。

(2)编码

编码是应用选择的工具语言记录事件和知识。它将详细设计阶段产生的知识结构、推理规则、控制策略及其他部件的形式描述转换为工具语言形式。主要的工作是转换自然语言推理规则,构造知识库;转换推理算法为推理程序。尽管此项工作与非智能语言的编码没有区别,而这里一般使用的语言是LISP,PROLOG或专家系统工具语言。

在编码中,知识工程师经常发现详细设计中的问题,因此,详细设计和编码常是紧密相关的循环处理。编码中发现的问题也可能引起大范围的反复处理,例如,可能需要完全重新设计知识表示。

(3)测试与修改

测试阶段的主要任务是评价原型系统及其实现形式是否符合设计者、专家及用户的要求,应用各种各样的实例检测知识库和推理结构中的弱点,修改原型。

①检测推理,就是检查无效的推理,主要工作是检测机制细节,如接口和内部流程。知识工程师构造人工模拟实例检测系统的详细部分,当系统违背设计者的意愿,则发现错误。纠正无效推理中的错误,需要重新编码。产生无效推理的原因是程序员错误地转换知识。

②检测知识。在知识系统中,正确的编码并不意味着知识正确。知识检测是探测无效的和模糊不清的知识。除了人工实例,专家和知识工程师还可用真实实例来检测,让系统作合适的决策,并可保留这些检测实例以备后用。无效知识的产生,是由于专家没有正确地描述事实或没有完全理解事实。当系统违背专家的意愿时,可产生这类错误。模糊知识的产生是由于专家不能识别所有的蕴含关系,如组合条件太多。当系统选择不同的解法(而专家要求相同解法)时,可发现这类错误。检测知识,常需要查找较多的知识,可能引起一系列重复处理。例如重复执行概念识别,以便发现错误的知识;重复执行概念设计来重新评估知识表示的选择,这两种处理又引起重复执行详细设计。若知识是完整一致的,仅要求重复执行详细设计和编码。

若在检测推理机制中,专家发现了检测子问题的新条件,则重复执行问题定义、概念识别、概念与详细设计及编码。因而专家可用发现的新条件精练知识表示。

当专家对早期的知识检测不满意,将知识加入知识库时,发现一些错误,则他重新执行识别和定义概念,处理和发现新概念。为此,概念设计、详细设计、编码和检测推理均需重新执行,调整由定义新概念所引起的变化。

5.证实原型系统

若专家和知识工程师相信推理和知识是正确的,则执行本处理。这种处理用执行大量的真实实例检测隐含错误。知识工程师可将原型放入检查区域,工作一段时间,这种检测可能发现较少的小错误。

证实也可发现专家和知识工程师的偏见。专家和系统的交互中可能存在盲目的缺点。因此,应邀请其他多位专家指导证实处理。他们的新观点可能会发现新问题。最后的证实工作是并行执行系统检测和人工检测(人工检查活动不与系统交互)。然后按要求逐个比较结果,并做客观的记录。这些检测将提供大量的宝贵意见。

6.系统的发展与维护

检测工作完成后,原型可被进一步修改和扩充,发展成为实用系统。维护的目标是评价和扩展系统,改进系统执行。由于在发展中迅速设计原型可以避免和减少维护工作,如果系统中使用的规则和过程以常规变化为条件,则需要专家和管理者周期地检查系统的执行。一个知识系统模式化人类在特定领域中的专业知识,而专家和知识都不是静止不变的,因此系统中的知识库和推理模式必须继续检测和发展。这包括收集关于系统执行的知识、缺陷及定义。

这种设计方法适用于所有的知识系统,对于复杂的综合型系统,还要考虑与其他分系统的通信与协作。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈