人工智能结课报告

  • 格式:doc
  • 大小:50.50 KB
  • 文档页数:6

内蒙古科技大学2015/2016 学年第一学期 《人工智能》结课报告

课程号:76807376-01 考试方式:结课报告 使用专业、年级:计算机应用2013-3,4 任课教师:陈淋艳 班级:计算机三班 学号:1376807326 姓名:周旭 医学专家系统 ——MYCIN MYCIN系统是美国斯坦福大学研发的用来针对细菌感染性疾病进行诊断和治疗的专家系统,它的功能是帮助内科医生诊断细菌感染疾病,并给出相应的建议性的诊断结果及处方。 MYCIN系统是将产生式规则从通用问题求解的研究转移到解决专门问题的一个成功典范, 在专家系统的发展史中占很重要的地位,许多专家系统都是在它的基础上建立起来的。 (1)MYCIN系统的概况 MYCIN系统使用INTERLISP语言编写的,知识库中大约有200多条关于细菌血症的规则,可以识别约50种细菌。整个系统占245KB,其中INTERLISP系统占160KB,编译后的MYCIN系统占50KB,知识库8KB,其余27KB存放临床参数和作为工作空间。该系统具有咨询解释功能。 MYCIN系统的咨询过程与细菌感染疾病专家解决此问题时相同。一般细菌感染疾病专家在诊断时,大致分一下4个步骤: ①确定病人是否患有需要治疗的细菌感染疾病。因为人体通常寄生各种细菌,所以首先必须从人体取临床样本,通过微生物实验室培养出细菌,然后诊断。 ②确定疾病可能是由哪种病菌引起的。 ③判断哪些药物对抑制这种病菌可能有效。 ④根据病人的情况,选择最适合的药物。 MYCIN系统处理一个患者的咨询过程如图1.1所示。这个过程是系统控制的主线,每一步都包含着规则的调用,通过人机对话,从询问中取得疾病状态、化验参数等直接观察的数据。MYCIN系统的结构如图1.2所示。

图1.1 MYCIN系统的咨询过程 咨询 确定病人是否患有需要治疗的细菌感染疾病 确定细菌类型 确定用于治疗的抗菌药物

优选治疗处方 处方

用户 咨询模块 知识库

动态数据库(推理记录) 解释模块

知识获取模块

患者数据 (推理记录)

感染病专家 知识工程师 图1.2 MYCIN系统结构图 从图1.2看出,MYCIN系统主要由咨询模块、解释模块和知识获取模块3个模块和知识库、动态数据库组成。 ① 咨询模块。 相当于推理机和用户接口,当医生使用MYCIN系统时,首先启动这一子系统,此时MYCIN系统给出提示,需要医生输入相关的信息,例如病人的姓名、年龄、症状等,然后利用知识库中的知识进行推理,得出患者所患的疾病及治疗方案。MYCIN系统采用反向推理的控制策略。推理过程形成由若干规则链构成的“与/或”树,MYCIN系统采用“深度优先”法进行搜索。在MYCIN系统中,还使用了基于“可信度”的不精确推理,这一点在不精确推理中已做过介绍。 ②解释模块。用于回答用户(医生)的询问,在咨询子系统的运行过程中,可以随时启动解释子系统,要求系统回答“为什么要求输入这一参数”、“结论是怎样得出的?”等问题。MYCIN系统通过记录系统所形成的“与/或”树来实现其解释功能。 ③知识获取模块。用于从专家处获取知识,丰富知识库的内容。当发现有规则被遗漏或不完善时,知识工程师和专家可以利用该模块来增加和修改规则。 ④知识库,又称静态知识库。用于存放诊断疾病的知识,本系统中用产生式规则表示。知识库是在系统建成时一次性装入的,在应用过程中通过知识获取模块进行扩充和修正。 ⑤动态数据库。 用于存放患者的有关数据、化验结果以及系统推出的结论等动态变化的信息,故称为动态数据库。 (2)动态数据库中数据的表示。 动态数据库中的数据按照它们之间的关系组成一颗上下文树。上下文树是在咨询过程中形成的,树中的节点称为上下文,每个节点对应一个具体的对象,描述该对象的数据都在该节点上。上下文树构成了对病人的具体且完整的描述。 MYCIN系统提供了以下10种上下文类型: ①PERSON (病人)。 ②CURCULS (当前培养物),当前从病人身上提取的培养物。 ③PRIORCULS (先前培养物),先前从病人身上提取的培养物。 ④CURORGS (当前机体),从当前培养物中分离出的有机体。 ⑤PRIORORGS (先前机体),从先前培养物中分离出来的有机体。 ⑥OPERS(手术),已对病人实施手术。 ⑦PODRGS(手术药物),在手术期间给病人使用的抗菌素药物。 ⑧CURDRUGS(当前药物),当前对病人使用的药物。 ⑨PRIORDRUGS(先前药物),先前对病人的使用的药物。 ⑩REGIMEN(方案),推荐的治疗方案。 上下文树的类型能够指示哪些规则可能被调用,可以依据上下文对规则进行分类。每一规则能且只能属于某一类。 图1.3为上下文的实例。图中每个节点旁边注明其节点名,括弧中为该节点的上下文类型。 图1.3的实例表明从病人PATIENT-1身上当前提取了两种培养物CULTURE-1和CULTURE-2,先前曾提取过一种培养物CULTURE-3,从培养物中分别分离出相应的有机体,ORGANISM-2和ORGANISM-4有机体有相应的药物进行治疗,对病人进行手术时使用过药物DRG-4。通过该上下文树,很明确的描述了与病人有关的培养物,对那种有机体使用了那种药物。 (3)MYCIN系统的知识表示 MYCIN系统的知识库主要存放诊断和治疗感染性疾病的专家知识,同时还存放一些为便于推理的所需的静态知识,如临床参数的特性表。字典等。

PATIENT-1

图1.3 一个上下文树实例 ①领域知识的表示。领域知识由规则表示。规则的一般形式是:

RULE * * *(规则编号,该规则表示:当前提成立时,则执行行为所描述的动作。) IF THEN 规则前提的一般形式是: ($ AND ......) 规则的行为部分用专门表示动作的行为函数表示,MYCIN中有3个专门表示动作为 函数:CONCLUDE,CONCLIST和TRANLIST。 ②临床参数的表示。 每个上下文与一组临床数据相联系,这些数据完全的描述 相应的上下文。每个临床参数表示上下文的一个特征,如病人的姓名、培养 物的地点、有机体的形态、药物的剂量等。 临床参数可用三元组(上下文,属性,值)来表示。 临床数据按其取值方式可分为单值、是非值和多值三种。 MYCIN系统中有65个临床参数,为搜索方便,将他们按照参数相对应的上下文分类。 对每个临床参数,在静态知识库中又各存有一组属性,以便被咨询模块程序和解释模块所调用。 (4)MYCIN系统的推理策略 MYCIN系统采用反向推理及深度优先的搜索策略。 当MYCIN系统被启动后,系统首先在数据库中建立一颗上下文树的根节点,

CULTURE-1

CULTU

RE-2

CULTURE-3 OPERATION

-1

DRUG-4 DRUG-3 ORGANISM-4 ORGANISM-1 DRUG-1 DRUG-2 ORGANISM-3 并为该根节点指定一个名字PATIENT-1(病人1),其类型为PERSON。PERSON的属性有NAME,AGE,SEX,REGIMEN,其中NAME,AGE,SEX时LABDATA参数,即可通过向用户询问得到其值。于是系统向用户提出询问,要求用户输入病人的姓名、年龄和性别,并以三元组形式存入数据库。REGMIN表示对病人建议的处方,它不是参数,必须由系统推出。 (5)治疗方案选择 当目标规则的前提条件被确认,即诊断“病人患有细菌感染”后,MYCIN系统开始处理目标规则的结论部分,即选择治疗方案。选择最佳治疗方案分以下两步,首先生成可能的“治疗方案表”,然后从表中选择对病人的最佳用药方案。 ①生成可能的“治疗方案表” MYCIN系统根据诊断出的细菌特征,选择用药方案。 在知识库中存有相应的规则,指示对各种细菌的用药方案。 ②选择最佳用药配方 MYCIN系统根据下列原则从治疗方案表中选择相应的用药配方: •该药物对细菌治疗的有效性。 •该药物是否已用过。 •该药物的副作用。 (6)知识获取 知识库是MYCIN系统知识的主要形式。每条规则是医生的一条独立的经验,规则库可以不断扩大、补充。当输入一条 新规则到规则库里时,必须对原有规则进行检查、修改,并修改参数性质表。下面是系统获得一条规则的过程: ①告诉专家新建立的规则的名字(实质上是规则序号)。 ②逐条获取前提,把前提从英语翻译成相应的LISP表达。 ③逐条获取结论动作,把每一条英语翻译成相应的LISP表达。当有必要时要求得到相应的规则可信度。 ④用LISP-English子程序将规则再翻译成英语,并显示给专家。 ⑤提问专家是否同意这条翻译的规则;如规则不正确,允许专家进行修改并回到步骤④。 ⑥检查新规则与其他早已在规则库中的旧规则之间的矛盾、不一致包含性。 如有必要可以与专家交互来澄清指出的问题。 ⑦如有必要可调用辅助分类规则对新规则分类。 ⑧把规则加入到新规则前提中提及的临床参数性质的LOOKAHEAD表中。 ⑨把规则加入到新规则结论中提及的所有参数的CONTAINED-IN表和UPDATED-BY表中。 ⑩告诉专家新规则已是系统的规则库中的一部分了。

MYCIN系统的学习功能是有限的。例如,新规则输入时涉及的参数和节点类型要求不超越系统的已有的种类。另外,对新旧规则之间的矛盾、不一致处理也是不全面的。 为了防止不熟练的用户随意输入知识而引起知识的混乱,系统采用二级存储的方法。只有新知识经试运行后证明其可靠,才能并入规则库中。 ------参考资料 人工智能教程 (王士同 主编)(第二版)