首页 理论教育 知识建模方法

知识建模方法

时间:2022-03-04 理论教育 版权反馈
【摘要】:知识识别要识别出对知识建模有用的信息源。在第二阶段,知识工程师构建知识模型的规范说明。我们强烈推荐选择已有的模板进行知识建模,这种方法既能提高效率又能保证模型的质量,然而,这一切都取决于应用任务模板的质量和该任务模板和应用任务的匹配程度。仿真的结果会指示出这个知识模型是否能产生预期的问题求解行为。

3.4.4 知识建模方法[46]

知识模型的构建一般可分为三个阶段:知识识别、知识规范说明和知识精化,其中每个阶段都执行特定的活动,每个活动都需要若干技术。

img19

图3-10 雪花模型实例

1.知识识别

知识识别要识别出对知识建模有用的信息源。对于实际的知识模型规范说明来说,这是一个准备阶段。在这个阶段需要建立领域的术语表或者词典。对已有的模型组件(例如任务模板和领域模式)进行考察,使可重用的模型组件在这个项目中可用。一般来讲,在组织模型中对知识项的描述以及对任务模型中应用任务的特征描述是知识识别的起始点。事实上,如果组织模型和任务模型描述完整而且准确,那么识别阶段将在短期内完成。

下面是知识识别阶段的典型活动。

活动:在开始构建知识模型的时候,我们假设已经选择好了知识密集型任务,并且已经识别了任务中主要的知识项。一般而言,应用任务已经被划分为一定的类型,例如,评估,配置设计。

知识识别的目的是考察知识项并且为它们能够应用到第二阶段的知识建模规范说明中作准备。

首先对任务的信息源进行搜索和结构化,并将它们列于知识项目表中。在这个过程中,为领域创建辞典和术语表。

熟悉领域是知识识别的前提。

信息源的本质:信息源的本质决定了知识建模过程中所需要的方法类型。已进行很好开发的规范领域的建模通常要比有许多不正式的或者松散的信息源领域的建模容易。

信息源的多样性:如果信息源本质各不相同,没有单一信息源(例如:一本教科书或手册)起着决定性作用,那么知识建模需要更长的时间。即使是相同类型的信息源也会发生相互冲突。所以,拥有许多专家的风险也是很大的。

本项活动中所应用到的技术通常是比较简单的:对于关键信息源(例如:教科书或者手册)进行文本标记,进行一两次面谈来对于领域有较好的了解。对于知之甚少的领域,因为它们存在潜在风险,所以需要对它进行更加详细的考察。知识工程师要了解相应的领域但是要避免成为该领域专家,必须在这两者之间找到平衡点。然而不要在这个活动中花过多的时间。除非遇到及其罕见的特别复杂的情况。

得到的有形的结果应该包括:

●领域知识源的列表,包括简短的特征描述。

●所选关键文本的总结。

●所构建场景的描述。

2.知识规范说明

在第二阶段,知识工程师构建知识模型的规范说明。首先,利用在上一个阶段中获得的有形结果,构建初始的领域模式。然后,知识工程师们将在知识模型中“填空”。有两种方法完成知识模型的规范说明,它们开始于推理知识,然后移到相关的领域知识和任务知识,或者开始于领域知识,或者是任务知识,然后将它们通过推理连接起来。具体选择哪种方法取决于所选的任务模板(如果存在模板)的质量和详细程度。

下面是知识规范说明阶段的典型活动。

(1)活动一:选择任务模板

我们强烈推荐选择已有的模板进行知识建模,这种方法既能提高效率又能保证模型的质量,然而,这一切都取决于应用任务模板的质量和该任务模板和应用任务的匹配程度。

(2)活动二:构建初始领域模式

本项活动的主要目标是构建一个与所要解决的应用问题无关的或者与所选择的任务方法无关的初始数据模型。在这一步,需要借助一定的软件来完成,这样可以提高效率。通常,一个知识密集型应用的领域模式至少包含两个部分:

①特定领域的概念化:这些是我们直接从领域中识别出来的领域结构,它可以在任何应用中表示出来而与它的应用方式无关。

②特定方法概念化:我们引入第二种领域的构想是因为我们需要通过它们特定的方法解决特定的问题——这个活动的主要目的是描述特定领域概念化的初始版本,这只是一个开端,因为这些定义在开发过程中是相当稳定的。如果在此领域中存在系统,尤其是数据库系统,那么要选择这些系统作为我们工作的起始点。

(3)活动三:知识模型的完整规范说明

一旦已经选择好任务模板并且构建了初始的领域模式,那么我们就有两种途径完成知识模型的构建。

途径1:由内而外。开始于推理知识,然后完善任务知识和领域知识,包含推理和领域的角色映射。一般推荐使用的方法,要求选择的任务模板提供一个足够的详细任务分解以作为推理结构的一个很好的近似。

途径2:由外而内。在通过一组连续的方法应用来分解任务的同时,精练领域知识来处理方法所提出的领域知识假设。这两端(即任务和领域知识)通过推理及领域映射而相互结合。这意味着我们已经得到这些推理(即功能分解的最低层次)。这种方法需要耗费更多的时间,但是当任务模板的粒度太粗而不能作为推理结构的时候还是有用的。

由外而内的方法只有在任务模板的推理结构已经足够详细的时候才能应用。如果没有必要进行分解,那么这个过程就变成了由外而内的过程。所以判断推理结构是否合适是一个重要的判别标准。对于推理是否足够详细,有两个标准可以衡量,一是看推理结构提供给我们的有关推理过程的解释是否足够详尽;二是看对于每个推理是否都可以找到一类领域知识作为推理的静态角色。

3.知识精化[47]

在最后一个阶段,尽可能地验证知识模型,通过插入一组知识实例来完成知识库(例如,插入规则的实例),验证前一个阶段得到的初始规范说明的一个重要技术是对知识识别阶段收集的场景进行仿真,这种仿真可以是纸上进行的,也可以是构建一个专门的原型系统。仿真的结果会指示出这个知识模型是否能产生预期的问题求解行为。只有当验证给出积极评价的时候,我们才有必要花费精力完善知识库。

这三个阶段可以互相交叉,有时需要反复进行,例如:验证将导致知识模型规范说明的修改。同样,完善知识库将需要更多的资源。通常的规则是,如果对于应用问题有比较好的理解,并且在以前的项目中类似的问题已经得到很好的解决,那么就不需要反馈。下面对这三个阶段进行更加详细的讨论,对于每个阶段,提出各自典型的活动、技术以及准则

下面是知识精化的典型活动。

活动:在知识精化过程中要执行如下两项活动。

①验证知识模型,通常采用仿真的技术。

②增加领域知识实例,完善知识库。

只有当活动(一)至少取得部分成功之后才会开始执行活动(二)。

活动一:验证知识模型。

验证的工作可以是内部的也可以是外部的,一些人用“检验”这个词来表示内部的验证(“模型正确吗?”),而将“验证”这个词表示对于用户需求的确认(“这是我们所需要的正确模型吗?”)。

检验模型内部的一致性可以采用多种技术。标准的、有组织的移动查询就是一种方法。可以用软件工具来检验语法。这样的工具能够指出模型的缺失部分。

通常情况下,外部验证更加困难,但是更加全面。这种验证的必要性根据具体应用的不同的阶段而定。有许多因素影响是否需要进行外部验证。例如,如果模型大部分是从为了完成相似任务而开发的现有模型中重用得到的,那么验证的必要性就比较低;对于任务模板理解越少,那么越易于出现错误和遗漏。

检验一个模型是否抓住了需要的问题求解行为的主要方法是仿真。仿真可以用两种方法进行:

●纸上仿真:这种方法和有组织的预排很相似。实现定义一组能够反映需要的系统行为的典型场景,按照知识模型的构建利用知识模型产生对于场景的纸面跟踪。

●通过仿真系统进行仿真:这样的环境必须有能够加载知识模型规范说明以及一段与特定实现相关的代码,这样我们可以在很短的时间内完成仿真。

仿真能够为以下问题提供答案:

①这个模型是否合适?

②预设的场景和模型之间是否存在可能的差异?

③模型哪里需要修改?

活动二:完善知识库。

在知识规范说明阶段,我们主要考虑领域模式。模式包含两种类型:

●包含作为某个特定案例一部分的实例的领域类型。我们可以把它看做是信息型,它们的实例与数据库的实例类似。

●包含作为某个知识库的实例的领域类型。我们可以把它看做是知识型,这些实例构成了知识的内容。

通常,在开发阶段就定义出一个完全正确的知识库是不现实的。我们需要在知识库的整个生命周期之中对它进行维护。系统在真实的应用中测试之前,知识库的定义过程很难全部完成,此外,知识实例随着时间的推移也会发生变化。

为了得到一个初步的但是相对完善的知识库,可采用多种技术。可以采用有效的与专家面谈的记录,然而这样做可能只得到一部分不完全的实例。可以和专家根据不同的知识类型来进行面谈,逐步建立相对完善的知识库。

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

我要反馈