基本本体数据结构的智能答疑系统算法设计与实现.docx
- 文档编号:7654050
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:32
- 大小:283.86KB
基本本体数据结构的智能答疑系统算法设计与实现.docx
《基本本体数据结构的智能答疑系统算法设计与实现.docx》由会员分享,可在线阅读,更多相关《基本本体数据结构的智能答疑系统算法设计与实现.docx(32页珍藏版)》请在冰豆网上搜索。
基本本体数据结构的智能答疑系统算法设计与实现
摘要
随着Internet技术的普及与发展,远程教育领域中智能答疑越来越受到人们关注。
传统的答疑系统主要是基于数据库的关键字查询,具有精度不高、信息不全等缺陷。
本系统利用本体表示领域知识的优势,提出基于本体的智能答疑系统研究方案,利用本体编辑工具protégé_3.1建立《数据结构》知识本体模型,生成owl格式文件映射到Mysql5.0数据库中,结合JENA进行规则的语义推理实现答疑功能,具有较好的查全率和查准率。
整个系统采用java语言实现基于B/S框架模式的用户界面。
关键字:
数据挖掘,本体,智能答疑,数据结构
第一章引言
1.1系统设计目的
一个答疑系统要实现其智能化首要解决两大问题:
1、知识库的瓶颈问题;
2、用户提问的语义理解问题。
目前现有答疑系统之间的越来越注重知识重用和分享,可是不同的系统描述问题时使用不同的概念和术语,所以很难从一个系统中提取知识运用到另一个系统中。
而在基于本体的课程答疑系统中,引入本体技术可以提供对该领域知识的共同理解,确定该领域内共同认可的词汇,并从不同层次的形式化模式上给出这些词汇(术语)和词汇之间相互关系的明确定义,从而在一定程度上解决了目前答疑系统现存的缺陷,提高了答疑系统的智能型。
1.2系统设计思想
本系统设计思想主要从本体的优势为出发点,从下面几个步骤中体现出系统的主要思想。
(1)本体的构建:
提取数据结构中核心概念,利用protégé软件对这些概念进行合理组织,用OWL语言描述。
(2)本体模型的持久化:
利用HP实验室语义网研究项目的开发资源Jena,将本体模型导入Mysql数据库。
(3)问题模式的匹配:
语义分析、关键字提取、问题模式匹配。
(4)基于规则的推理和查询:
利用Jena自带推理机制,与推理规则结合,通过Sparql查询语句对本体模型的推理查询。
(5)结果处理:
将推理查询的结果分析处理,显示答案。
1.3系统的设计框图
系统设计流程如图1-3-1,步骤如下:
步骤1:
本体模型的构建;
步骤2:
本体模型的持久化;
步骤3:
基于语义分析,规则和查询语句的编写的推理设计;
步骤4:
结果的处理设计;
图1-3-1总体的设计框图
系统功能与说明
系统模块分为2个模块
术语解释:
在此栏目中输入“单链表”,会显示对“单链表”的解释,特点,操作,举例,以及应用。
给出较为详细的解释。
推理查询:
在此栏目中可以查询推理固定模式下问题。
1.5普通答疑系统与基于本体的智能答疑系统的比较
不同的系统描述问题时使用不同的概念和术语,所以很难从一个系统中提取知识运用到另一个系统,便有必要提供对该领域知识的共同理解,给出明确的关系定义。
而本体(Ontology)的目标正是致力于解决以上问题,通过建立领域本体知识库,可以对知识进行扩展推理,完成隐性知识的挖掘并促进其显性化。
解决了诸如“A的父亲是B,B的父亲是C,A与C是什么关系”这一类需要推理才能给出正确答案的问题,提高了系统的智能性。
1.6国内外目前研究现状
目前,国内研究智能答疑系统的实现方法在不断呈现,国内外已出现了很多智能答疑系统,各大高校的网络学院也依靠自己的技术实力,设计实现了各自的智能答疑系统。
例如,上海交通大学的An-swerWeb、清华大学教育软件研究中心开发的基于WEB的远程答疑系统、西安交通大学的NL-WAS(基于自然语言的网络答疑系统)、北京师范大学现代教育技术研究所开发的智能答疑系统等。
然而他们大都基于传统的人工智能知识表示和搜索方法,所构建的智能答疑系统在知识共享、知识重用以及知识交流等方面存在一定的缺陷。
虽然一定的语法语义分析和问题归类可以在一定程度上提高系统的查准率,体现一定的智能性,但不能解决用户提问的语义理解问题。
国内目前关于基于本体的智能答疑系统的研究报道较少。
研究人员表示,他们希望这套“基于本体的智能答疑系统”经过进一步改善,能很快被广大人群使用。
1.7系统的科学性与先进性
1、基于本体的智能答疑系统的研制是本体技术在答疑系统设计领域中的新应用。
目前,现有答疑系统之间的知识重用和分享的兴趣愈来愈增大,可是不同的系统描述问题时使用不同的概念和术语,所以很难从一个系统中提取知识运用到另一个系统,便有必要提供对该领域知识的共同理解,给出明确的关系定义。
而本体(Ontology)的目标正是致力于解决以上问题,通过建立领域本体知识库,可以对知识进行扩展推理,完成隐性知识的挖掘并促进其显性化。
解决了诸如“A的父亲是B,B的父亲是C,A与C是什么关系”这一类需要推理才能给出正确答案的问题,提高了系统的智能性。
,与传统的答疑系统相比,该作品具有很强的创新性。
2、由于本体具有良好的概念层次结构和对逻辑推理的支持,基于本体的检索,基本思想是使用本体技术来构建学习者所要检索资源的知识库,推理出学习者提问的问题,以达到提高查全率和查准率的目的。
如果检索系统不需要太强的推理能力,知识本体可用概念图的形式表示并存储,数据保存在关系数据库中,采用图的匹配技术来完成信息检索。
如果检索系统要求比较强的推理能力,就需要用一种描述语言表示本体,数据保存在知识库中,应用描述语言的逻辑推理能力来完成信息检索。
3、基于WEB开发,在B/S模式下实现了基于本体的智能答疑系统,实用性强。
1.8系统的经济效益与推广价值
智能答疑系统将会成为具有发展活力的专业学科,在教育领域发挥更大的作用。
知识本体作为先进的知识表示和知识组织正是现阶段AI领域中最为热点的研究之一。
所以基于本体的智能答疑系统侧重于研究和开发出系统而完备的知识组织体系,以及基于本体的推理机制,加强教学领域中答疑系统进行更好的知识组织和知识挖掘,提高向学习者解决疑难问题的能力。
由本系统的用途知道,智能答疑系统使用方便,无额外消费。
作为构建系统的技术,JSP技术、MYSQL数据库、Tomcat6.0应用服务器架构的研究先已很成熟。
作为基于本体的智能答疑系统尚未国内流行,因为国内对本体的研究较少,本体的架构不是很容易。
但总体来说,该系统得应用价值相比传统的智能答疑系统有了很大提高,相信它将会走向智能教学的前沿。
第二章本体概述
本章主要介绍本体的定义、类型、国内外研究现状、主要技术方法、描述语言和编辑工具,最后分析了和语义网络的区别。
2.1本体的定义和类型
(1)本体定义
“Ontology”(以下统称本体)的概念起源于哲学领域,17世纪,“Ontology”一词由德意志哲学家郭克兰纽(R.Goclenius)首次提出,但具有“Ontology”内涵之哲理的创建却可远溯至古希腊时代,那时的哲学家以探究世界的本源来构成他们的本体理论,米都利学派便提出了西方哲学史上第一个哲学范畴始基说,由此演变出“本体”、“本质”和“基质”等概念范畴。
“Ontology”作为一种哲学理念和哲学型态,在苏格拉底提出“始基”问题中萌芽,在柏拉图和亚里士多德那里奠定雏形,而最终在中世纪经院哲学中成熟的。
AI领域将本体的概念引入,用于知识表示和知识组织,其内涵也因此发生了改变。
国内外学者持有不同的观点。
外国学者的观点:
斯坦福大学的Gruber[1](1993)最早提出本体的定义,其后BorstPim博士[2](1997)对Gruber的定义作了少许修正。
两个定义合并以后,表达如下:
“Itisanexplicitformalspecificationofasharedconceptualization.”译为中文即,本体是一套得到大多数人认同的、关于概念体系的明确的、形式化的规范说明。
德国卡尔斯鲁厄大学的Studer等学者[3](1998)认为本体有四大特征:
明确的(Explicit),形式化的(Formal),共享的(Shared)、概念化的(Conceptual)。
使用最广泛的本体定义是波音公司MichaelUschold博士等人[4](1996)提出的:
“Itisavocabularyoftermsandsomespecificationoftheirmeaning”,译为中文即,本体是一套术语词表以及术语含义的规范说明。
AI领域的文献中有许多关于本体的定义,其中很多大同小异。
斯坦福大学的NatalyaF.Noy和DeborahL.McGuinness[5]认为,一个本体其实就是一套关于某一领域概念的规范而清晰的描述,它包含类(classes,有时也被称作概念concepts),每一个概念的属性(properties)描述了有关概念的各种特征和属性(又称slots,有时也被称为roles或attributes),还有属性的限制T条件(restrictions,即分面facets,有时也被称作rolerestrictions或constraints)。
中国学者的观点:
中国社会科学院哲学研究所的杨学功先生在“Ontology”的研究方面,有自己独到的见解。
他不同意将“Ontology”,译为“本体论”,从而也不把它作为哲学的一个分支学科来看待,而是把它当作一种特殊的哲学理论形态来看待。
在Al研究领域,对于“ontology”的理解和称谓也是仁者见仁,智者见智。
中科院李景博士[6,7]认为,本体是一个关于某些主题的、层次清晰的规范说明。
它是一个已经得到公认的形式化的知识表示体系,它包含词表(或名称表/术语表),词表中的术语全是与某一专业领域相关的,词表中的逻辑声明全部是用来描述那些术语的含义和术语间关系的,即它们是怎样和其它术语相关联的。
综合上述,作者认为本体在智能答疑系统中就是为教学领域提供了一个用来表达和交流某些领域知识的词表和一个关系集,关系集是领域词表中术语间关系的集合。
⑵本体类型
本体类型按照应用领域的不同可大致划分为四大类,图2-1为本体应用的三个主要领域。
图2-2-1三个主要领域
具体来讲:
①表示本体(元本体,Representationontology或Meta-ontology),是指在一个特定的知识表示体系中,用来获取对知识进行形式化的表达元词(即词根)的本体。
②上层本体或通用本体、顶级本体(GeneralorUpper-ontology),划分了存在于客观世界的实体的不同种类。
具有普遍意义的观念在这类本体中得到了表示,这些观念不依赖于特定的问题或学科领域。
③领域本体(Domainontology)是专业性的本体。
在这类本体中被表示的知识是针对特定学科领域的。
④应用本体(Applicationontology),描述了既依赖于某个特定领域又依赖于某项课题的知识。
因此,这类本体与解决问题的方法相关联。
一个应用本体与用来描述专业领域的概念相关联,这些概念是解决问题方法体系的组成部分。
2.2主要研究现状
⑴国外主要研究现状
20世纪80年代末至90年代初,哲学领域的概念“Ontology”被AI领域所借鉴,知识本体的建模方法也初步确立。
近年来,国外对本体建模作了大量研究并将其运用于知识工程领域。
现做简单介绍:
①W3C的研究。
W3C是worldWideWebConsortium的简称,中文叫做“万维网联盟”。
W3C是一个关于信息、商业、通讯和共识的论坛。
它立足于开发交互技术(如规范、指南、软件和工具),使得Web得以发挥最大的潜能。
②AIFB的研究。
德国卡尔斯鲁厄大学(UniversityofKarlsruhe)的RudiStuder、AlexanderMaeche,和以他们为首的应用情报学和规范描述方法研究所(AIFB—instituteofAppliedInformaticsandFormalDescriptionMethods)对本体基础理论(ontologylearning)和本体的数学表达进行了深层次的研究。
③KSL的研究。
美国斯坦福大学的知识系统试验室(KSL—KnowledgeSystemsLaboratory,以下简称KSL),无论是在本体建模工具领域,还是在本体应用层面的研究方面,都站在了知识工程领域的最前沿。
⑵国内主要研究现状
与国外相比,国内无论是在理论研究、实践研究,还是在技术手段的实现和应用方面都相对落后,与国外高水平的研究相比存在很大差距。
国内对于本体的研究大约始于20世纪90年代初。
作者在CNKI中国期刊全文数据库中分别以Ontology为关键字,不限定学科查询,返回结果3849条、然后以本体为关键字,不限定学科查询,返回结果3102条。
这些数据表明知识本体在国内已成为研究热点。
2.3主要技术方法
在本节中,本体的构建方法、描述语言和编辑工具等关键性技术会得到具体的分析和比较。
2.3.1构建方法
从本体发展前景可以看出,本体的构建方法是当前研究热点。
由于本体的构建多是面向特定领域,如果没有好的方法路线指导,就难以在不同领域本体的构建中保持一致,也不利于本体规模化和规范的建设。
目前尚没有一套标准的本体构建方法。
一般认为,
Gruber[8]提出的5条规则是比较有影响的:
明确性和客观性:
本体应该用自然语言对术语给出明确、客观的语义定义。
完整性:
所给出的定义是完整的,能表达特定术语的含义。
一致性:
知识推理产生的结论与术语本身的含义不会产生矛盾。
最大单向可扩展性:
向本体中添加通用或专用的术语时,通常不需要修改己有的内容。
最少约束:
对待建模对象应该尽可能少列出限定约束条件。
下面介绍几种常见的本体构建方法路线[9]。
⑴TOVE法。
TOVE法又称Gruninger&Fox“评价法”。
TOVE是指多伦多虚拟企业(TOrontoVirtualEnterprise),专用于构建企业建模过程本体,由多伦多大学企业集成实验室(EnterpriseIntegrationLab)研制,使用一阶谓词逻辑进行集成。
⑵METHONTOLOGY法。
METHONTOLOGY法,专用于构建化学本体,该方法已被马德里大学理工分校人工智能图书馆采用。
⑶骨架法。
骨架法(MikeUscholddede&King.Usc95)用来构建企业本体,是商业企业间相关术语和定义的集合,该方法只提供开发本体指导方针。
⑷SENSUS法。
SENSUS法是开发用于自然语言处理的SENSUS语言本体的方法路线,由美国USC/ISI研制开发。
⑸IDEF5法。
IDEF5是美国KBSI公司开发的用于描述和获取企业本体的方法。
英文叫做“IDEF5ontologyDescriptionCaptureMethod”。
⑹七步法。
斯坦福大学医学院开发的七步法,主要用于领域本体的构建。
七个步骤分别是:
第一步确定本体的专业领域和范畴。
第二步考查复用现有本体的可能性。
第三步列出本体中的重要术语。
第四步定义类和类的等级体系。
第五步定义类的属性。
第六步定义属性的分面。
第七步创建实例。
本系统中,采用此方法构建《数据结构》本体模型。
综合上述六种方法体系,可以从中总结出本体的构建原则,总结如下:
⑴本体的构建要面向特定的应用目的。
⑵本体的构建应该基于一定的专业领域、学科背景或研究课题。
⑶本体中包含的概念数目应该尽可能的最小化尽可能地将冗余去除。
⑷本体的规模应该是有限增长的。
⑸本体中“类”的设计应当秉承独立性原则,即这个类可以独立存在。
⑹类的设计还应当秉承共享性原则,即类一旦被确立,就一定有被复用的可能和必要。
2.3.2描述语言
本体的标记语言,可称之为置标语言,又称本体的构建语言或者是表示语言。
作为表示本体的语言工具,应该具有如下的基本功能:
★为本体的构建提供建模元语(ModelingPrimitives)。
★为本体从自然语言的表示格式转化成为机器可读逻辑表达格式提供标引工具。
★为本体在不同系统之间的导入和输出提供标准的机读格式。
★形式化语言表示,利用机器可读的形式化表示语言表示本体,可以直接被计算机存储、加工、利用,或在不同的系统之间进行互操作。
本体可以用自然语言描述,也可以用框架(Framework)、语义网络或逻辑语言描述表示。
目前,比较著名的本体描述语言可以分为两类[10]:
基于AI的本体描述语言和基于Web的本体描述语言。
⑴基于AI的本体描述语言
自上个世纪90年代以来,一些基于AI的本体描述语言被提出,如KIF、Ontolingua、CycL、Loom、OCML、Flogic。
①KIF。
KIF(KnowledgeInterchangeFormat)是由斯坦福大学开发的,它是一种在不同知识库系统间交换知识的格式,是基于一阶逻辑的语言。
②Ontolingua。
Ontolingua是一种基于KIF的语言,它采用统一的规范格式来描述本体。
其特点是:
为构造和维护本体提供了统一的、计算机可读的方式;由其构造的本体可以方便地转换到各种知识表示和推理系统,从而将本体的维护与使用它的目标系统分离。
③CycL。
CycL是Cyc系统的描述语言,一种体系庞大而非常灵活的知识描述语言。
其特点是:
在一阶谓词演算的基础上扩充了等价推理、缺省推理等功能,具备一些二阶谓词演算的能力;其语言环境中配有功能很强的可进行推理的推理机。
④Loom。
Loom是一种基于一阶谓词逻辑的高级编程语言。
其特点是提供表达能力强的,声明性的规范说明语言;提供强大的演绎推理能力及多种编程风格和知识库服务。
⑤OCML。
OCML(OperationalConceptualModellingLanguage)是由英国开放大学KMI(KnowledgeMediaInstitute)开发的。
⑥Flogic。
Flogic(FrameLogic)是长尔斯鲁厄大学开发的,是基于框架逻辑和一阶逻辑的。
它可以表示概念,概念分类,二元关系,函数,实例,公理和规则。
(2)基于Web的本体描述语言。
近年来,随着互联网的发展,出现了一系列基于Web的本体描述语言,也称本体标记语言,如SHOE,XOL,RDF,RDF-Schema,DAML+Oil,OWL。
①SHOE。
SHOE(SimpleHTMLOntologyExtensions)是HTML的扩展,是由马里兰大学开发的。
它基于框架和规则,使用不同于HTML的一些标记,使得可以在HTML文档中插入本体
②XOL。
XOL(XML-BasedOntologyExchangeLanguage)是由SRI国际人工智能中心开发的。
它是一种简单通用的定义本体的语言。
③RDF。
RDF(ResourceDescriptionFramework),是W3C在XML的基础上推荐的一种标准,它提供一种框架用于描述资源的信息。
RDF的数据模型实质上是一种二元关系的表达,由于任何复杂的关系都可以分解为多个简单的二元关系,因此RDF的数据模型可以作为其他任何复杂关系模型的基础。
④RDF-Schema。
RDF-Schema是RDF的类型系统,它解决了RDF中的属性集存在的一义多词现象和一词多义现象。
⑤Oil+DAML。
Oil+DAML是DAML_ONT和Oil结合而产生的。
它的语法建立在RDF和RDFS基础上,并用更丰富的建模原语对这些语言进行了扩展。
⑥OWL。
OWL(WebOntologyLanguage)是W3C推荐的本体描述语言最新标准。
它是在DAML+Oil基础上发展起来的。
针对不同的应用需求,OWL提供不同的版本。
目前OWL有三个语言版本:
OWLLite,OWLDL和OWLFull。
本系统采用此语言描述本体。
综上所述的两大类共12种本体表示语言,可以得出以下结论:
(1)Loom是定义最完备、功能最齐全的本体表示语言,同时也是高级编程语言。
Loom还是一种框架式语言,对一般用户而言不易掌握。
(2)CycL仅次于Loom,也是一种较好的本体表示语言。
它的缺点在于它本身不是Web上的推荐标准,难以作为所有网络资源的标引规范使用。
(3)Ontolingua和OWL也是较好的本体表示语言。
Ontolingua具有较好的用户操作界面,但是它在推理功能上有欠缺。
(4)OWL语言在推理功能的定义方面稍逊与CycL,但由于本身是W3C的推荐标准,又具有与有多种本体语言的兼容性和交互性,所以对网络资源的标引和本体构建方面具有广阔的应用前景。
(5)RDF是W3C推荐的较早本体表示语言,RDF的数据模型实质上是一种二元关系的表达,语义很清晰,初学者易于上手。
2.3.3编辑工具
目前现有的本体构建工具(又称本体编辑工具,ontologyEditor)共有64种。
而其中,较为成熟、知名度较高、较为常用的工具不超过10种。
作者采用的是protégé_3.3构建工具。
Protégé_3.3[http:
//protege.standford.edu]由斯坦福大学医学院的医学情报学研究组(SMI-StanfordMedicalInformatics,一个跨学科研究小组)开发研制。
与其它系统相比,其优势在于:
⑴具有图形化的用户界面;
⑵对Unicode字符集输入的支持;
⑶可以免费下载系统安装软件与插件;
⑷可以用RDF、OWL等本体语言在系统外对本体进行编辑和修改。
2.4相关理论—与语义网络比较
智能答疑系统中,涉及知识表示和语义表达。
而本体与语义网络作为知识表示和语义表达的工具,非常相似。
它们均可以通过带标记的有向图来表示知识,并具有逻辑推理功能。
但就描述的对象与范畴而言,本体与语义网络又有所区别。
本体是共享概念体系的规范说明,其中的概念模型至少在某个领域里得到公认的。
一般情况下,本体是面向特定领域的,描述特定领域的概念模型。
见表2-4。
联系
它们都是知识表示的形式,均可以通过带标记的有向图来表示概念间的关系,并适合于逻辑推理。
区别
比较
本体(ontology)
语义网络(SemanticNetwork)
描述的对象和范围
是对共享概念模型的规范说明,即其概念在某个特定领域是公认的,是面向特定领域的概念模型。
是一种带标记的有向图,最初用于表示命题信息,现广泛用于专家系统表示知识。
其节点表示物理实体、概念或状态,边用于表示关系,但是对节点和边都没有特殊规定,所以描述的范围比本体广。
例子:
语义网络中可以表达诸如“我的汽车是红色的”这类断言,而本体则适合表达如“团体组织的内部构成”等整体内容。
知识表示的深度
有5个要素“元语,类,关系,函数,公理和实例”,它通过五个要素来严格、正确的刻画所描述的对象。
深度上不如本体,对建模没有特殊要求。
建模条件
建立必须有专家的参与,相对更加严格和困难,这也是本体目前的开发瓶颈之一。
不必有专家的参与。
备注
这里的语义网络早在20世纪70年代就已经在知识工程领域被提出来,作为一种知识表示的手段和工具,语义网络与W3C所提出的的语义网,是两个截然不同的概念。
表2-4本体与语义网络的联系和区别
语义网络是Quillian根据人类联想记忆的一个显示心理学模型提出的。
主张在处理问句时,将语义放在首位。
Simmon于1970年正式提出了语义网络的概念,并讨论了它和一阶谓词逻辑的关系。
按照数学的观点,语义网络是一种带有标记的有向图。
它最初用于表示命题信息,现已广泛用于专家系统的知识表示。
语义网络上的节点表示物理实体、概念或状态,连接节点的“边”用于表示实体间的关系。
语义网络中对节点和边没有其它特殊规定,因此语义网络描述的对象或范围比本体更广[11]。
语义网络的主要特点:
⑴重要的相关性得以明确地表示。
⑵相关事实可以从直接相连的节点推导出来,不必遍历整个庞大的知识库。
⑶能够利用“is-a”和“Subset”链在语义网络中建立属性继承的层次关系。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基本 本体 数据结构 智能 答疑 系统 算法 设计 实现