王朝百科
分享
 
 
 

KIF

王朝百科·作者佚名  2009-11-25  
宽屏版  字体: |||超大  

1.一阶逻辑

数学家用来描述问题的通用工具是逻辑学。早在维特根斯坦时代,许多数学家、哲学家和计算机科学家都试图使用数理逻辑来清晰而无歧义地定义和描述感兴趣的事情,结果简单逻辑学(如一阶逻辑FOL - First Order Logic)在描述事情方面表现出极大的威力。有些数学家和计算机科学家发现相对简单的逻辑足以用来向人和其它的智能代理描述表示感兴趣的事情和应用,比如简单的具体事实、定义、摘要、推理规则、限制和元知识(关于知识的知识) 等。

一阶逻辑是用来表示知识的重要方法。一阶逻辑是一种形式语言系统,研究的是假设与结论之间的蕴含关系,即用逻辑的方法研究推理的规律。它可以看成自然语言的一种简化形式。由于它精确、无二义性,所以容易为计算机理解和操作,同时又与自然语言相似,故一阶谓词逻辑系统可以用来表示人类的某些知识。

一阶逻辑作为形式语言存在局限性,其远远不能表示人类自然语言所能表达的全部知识,而人类所认识的知识类比自然语言所能表达的知识类还多。因此一阶逻辑所能表示的知识范围十分有限。从思维推理的角度看,一阶谓词逻辑所体现的逻辑推理规律,只能用来模拟人类的部分逻辑思维现象,也远远不能代表人类逻辑思维的全部。因此各种非规范逻辑的研究很有必要。

2.KIF的作用

KIF(Knowledge Interchange Format)是一种基于一阶逻辑的形式语言,用于各种不同计算机程序之间进行知识交换,由斯坦福大学建立,已经成为建议标准。目前KIF被普遍用在专家系统、数据库和智能代理等领域,其构思不是用来实现人与机器的交互,不同的程序以自身适当的方式将信息展现给用户,如框架、图表和自然语言等。KIF的目的也不在于实现机器内或联系紧密的计算机集群中的知识的内部表示,即使KIF也能够用于上述目的。尤其KIF起到了两种其它语言间的连结纽带和中间语言的作用,例如可以开发翻译程序实现STEP/PDES表示到KIF相应表示的映射,或者相反,当STEP/PDES读取KIF表示的知识库KB时,需要将数据转换成自身内部结构(如特殊的指针结构、数组等),所有计算工作就是以该种结构完成的。如果STEP/PDES程序与其它程序通信,必须将内部数据结构转变成KIF。假设使用语言MSEC开发电子商务应用能为广大用户认识使用,那么就必须同时开发一种翻译程序实现与KIF的互通,这样就可以使用KIF来实现STEP/PDES和MSEC间的通信。为增强知识库中知识的共享与交换,降低通用工具的开发难度,各种知识表示标准和交换协议被先后提出,KIF的作用显得更加重要。

3.KIF中的定义

KIF的定义是极其详细,其中有些细节内容是必须的,而有些是任意的。KIF定义的主要特点:

①KIF语言具有宣布语义 KIF表达式的语义是可以理解的,不需要求助解释程序。在这点上。KIF不同于基于特定以解释程序的语言,如Emycin和Prolog。

②KIF语言是逻辑可理解的 KIF以谓词演算的形式提供任意句子的表达式,其与关系数据库语言和类Prolog语言存在不同。很多关系数据库语言只提供基本元句子,类Prolog语言却必须作用于Horn子句。

③KIF语言提供关于元知识的支持 这样就可以清楚地进行知识表示。并且在不修改语言的情况下引进新的知识表示结构。

4.KIF语义及OKBC

KIF语言基于一阶逻辑,增加了对非单调推理和定义的支持,其语言描述包括语法规范和语义规范。特别需要指出的是,,KIF提供简单数据表示。

KIF核心语义(即没有规则和定义的KIF)与一阶逻辑语义相似,增加了处理非标准运算符的功能,但是通过其格式对基本词汇赋予语义要求模型应适应多种公理模式。尽管KIF核心对一阶逻辑进行了扩展和限制,但是依然保留了一阶逻辑的基本特点,包括简洁和半决定性。KIF(Knowledge Interchange Format)是一种用于在不同计算机系统之间交换知识的面向计算机的一阶语言。当一个计算机系统需要和其它的系统通信时,可通过将其内部的数据结构转换成KIF来实现。作为纯粹的表示语言,KIF并没有包含知识库存取和操作的命令。由斯坦福大学知识系统实验室提出的OKBC(Open Knowledge Base Connectivity)是为存取知识库而设计的协议,它为知识库的操作提供了通用接口。这一接口使应用程序独立于特定的知识表示形式,使开发知识表示系统通用工具成为可能(如图形浏览器和编辑器等)。这是通过定义一套“知识模型”(OKBC Knowledge Model)作为知识表示的中间语言(Interlingua)及其存取操作而实现的。OKBC是对KIF的补充,它侧重于能被大多数知识库支持并具有普遍性的操作,如对框架、槽的操作等。

5.KIF语法简介

和许多计算机为主的语言一样,KIF可比描述为三层结构。第一:基本的语言符号;其次,这些符号可以组成词语;最后,词语可以组成合法的表述。虽然KIF不要求必须以这种方式定义,这种方式却简化了句法描述并在词语的层次上完成了对空格的处理。

nonterminal*表示符号出现零或更多次。nonterminal+表示符号出现一或更多次。space, tab, return, linefeed和page转换为相应的ASCII编码32, 9, 13, 10和12。所有符号使用ASCII字符集的128个字符。

KIF字符使用7位来存储。包括大写字母,小写字母,数字,符号,空格和其他字符。

upper ::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

lower ::= a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z

digit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

special ::= ! | $ | % | & | * | + | - | . | / | < | = | > | ? | @ | _ | ~ |

white ::= space | tab | return | linefeed | page

initialchar ::= upper | lower

wordchar ::= upper | lower | digit | - | _ | special

character ::= upper | lower | digit | special | white

KIF语言基本内容包括对象、关系和函数等,对象可以是常量和变量,这里常量用小写英文字母a,b,c等表示。KIF中的单个变量通常表示为?x,?y等,x,y是变量名,而序列变量表示@y,y变量名。其关系和函数对应着一阶逻辑中的谓词。KIF中关系函数表达式的格式是(< 关系或函数名> < 参数> *),其中“*”意指可以有多个或没有参数。

关系定义 (Profession ?x a)指x(某人)的身份为a,a是常量,可以是教师、学生等;(Age ?x b)指x(某人)的年龄为b,b为某个整数;(Sex ?x c)指x(某人)的性别c,c取值男或女;(Yearonduty ?x d)指x(某人)的工龄为d,d为某个整数;(Education ?x e)指x(某人)的文化程度为e,e分为大学、中学和小学三档;(Retire ?x)指x已退休。

函数定义 (Great Even ?x ?y)指x >= y。(Add ?x ?y)下面用到此函数,不需要用户定义,KIF语言库已经进行了定义。

6.KIF应用展望

目前为了使计算机程序更好地为人类提供信息等方面的服务,已经开发出了许多关于知识库的应用,就是在网络界也提出了语义Web的概念,实现网络内容的计算机可理解性,所有这些应用的实施都离不开本体的创建,它们可能是使用各自工具通过不同本体语言实现的。正如前所论,这些应用间的通信是借助知识交换格式KIF 来达到的,并且基本上所有的本体语言,如RDF/S和DAML+OIL都提供程度不同的逻辑推理机制以及与一阶逻辑的映射,都提供了对KIF的支持。有理由相信,KIF将在今后的网络应用方面发挥更加巨大的作用。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有