《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于属性坐标系框架下的Freebase语义库研究
基于属性坐标系框架下的Freebase语义库研究
来源:微型机与应用2013年第21期
王 斌,冯嘉礼
(上海海事大学 信息工程学院,上海 201306)
摘要: 属性坐标系是由n个不相关的属性组成的一个n-1维坐标系。第n+1个属性,可以由这n个属性做合取运算得到;这样在这个n-1维坐标系中,就形成一个唯一点来表示这第n+1个属性。2007年Freebase数据库的建立,使得该属性坐标系理论得以验证,并为属性坐标系的建立提供可能,而且将在语义相关度计算中发挥重要作用。
Abstract:
Key words :

摘  要: 属性坐标系是由n个不相关的属性组成的一个n-1维坐标系。第n+1个属性,可以由这n个属性做合取运算得到;这样在这个n-1维坐标系中,就形成一个唯一点来表示这第n+1个属性。2007年Freebase数据库的建立,使得该属性坐标系理论得以验证,并为属性坐标系的建立提供可能,而且将在语义相关度计算中发挥重要作用。
关键词: 属性坐标系;Freebase;语义相关度计算

 哲学上讲,事物的质是事物的内在规定性,是区别于其他事物的规定性;质通过属性表现。在此引入集合论的概括公理可知:任给一个属性,存在一个由所有具有该属性的元素构成的集合。若引入特征公理可知:任何两不同事物,至少存在一属性,使得它是一事物区别于另一事物的特征。可证明:一个事物(或系统)可由它所具有的特征予以确定(或定义)。此处,特征包括事物的关系和结构。可见,“给定一(组)特征可确定其对应(或定义)的事物”是人类识别事物的基本原则[1-2]。



2 语义数据库Freebase
 Graphd与关系数据库以表的形式存储数据完全不同,Graphd以节点以及节点之间的关系所形成的图结构来组织数据,以数组的方式对节点和其关系的元数据进行建模,以表格形式存储,表格中的每条数据对应一个节点关系数组,数组由源节点、属性、目标节点、源节点值组成。使用MQL语言作为查询语言,并通过HTTP标准的“请求/应答”机制发送请求[4-5]。
2.1 Freebase知识表示和组织机制
 Freebase的结构分为3层:Domain->Type->Topic。以Arnold Schwarzenegger为例,解释Freebase中的知识结构。如图2所示。其中,椭圆框表示Topic,方形框表示Type[6]。

 以Arnold Schwarzenegger为原点进行讨论,首先是一个Topic,对应于现实中的一个对象。它有4个Type(可理解为定义):Person、Body Builder、Actor、Politician。
 Type:Person下有一个属性:country of birth,其值为Topic:Austria。这样,就把Arnold Schwarzenegger(对象)与Austria(对象)建立了联系。以此类推。
 同样反过来看Topic:Terminator有一个Type:File,其下有一个属性cast,其值为:Schwarzenegger。这样反向也建立了联系[6]。
2.2 MQL查询语言
 由于Freebase后台使用自己设计的Graphd,所以也摒弃了传统的select等SQL语言。设计GQL(graph query language)作为请求处理语言;为了用户使用方便,在此基础上,设计MQL(Metaweb Query Language)作为数据查询语言。其完全符合HTTP协议标准的“request/response”机制,可在浏览器地址栏,直接输入MQL查询语句。例:
 https://api.freebase.com/api/service/mqlread?query={"query":{"type":"/music/artist","name":"The Police","album":[]}}
 该例可在地址栏中直接输入并在页面中返回结果[7]。
3 属性坐标系框架下的Freebase研究
 通过对Freebase的数据组织机制、知识表示的再研究,发现其暗含了属性坐标系的建库理念。从侧面证明了“属性论”及“属性坐标系”等理论在知识处理领域的独到性、前瞻性和实用性。
3.1 Freebase中对对象的定义
 还是以Arnold Schwarzenegger为例,对人脑思维来说,首先该对象是一个人,对应在Freebase存在一个Type:person;以此类推其他(比如Type:actor)。
 如一个谜语:有一个人,是健美先生,是演员,演过《终结者》,这个人是谁?如果人们脑中有这个定义,马上就能得到谜底,也就是该对象Arnold Schwarzenegger。
综上所述事实,恰好印证了属性论中阐述:一个事物(或系统)可由它所具有的特征予以确定(或定义);人脑感觉则仅对其敏感的事物属性作出反应。用属性坐标系表示,如图3所示。

 不难看出P(A)=P1∧P2∧P3。这正是人们人脑中的反应。
3.2 对象属性坐标的建立及相关度计算
 Freebase在对象的定义、上下位关系的定义过程中有独到的见解,提供了一个有效地途径。比如Arnold Schwarzenegger对象和Austria、Terminator、Republican等对象之间的关系,不难看出,这些对象之间有明显的包含和被包含关系。
 但是,同级对象之间的关系比较,比如Arnold Schwarzenegger和Sylvester Stallone之间关系的定义,Freebase就稍显不足。可不妨换一种思路,通过建立对象的属性坐标,对象坐标做笛卡尔积,从而得到两个同级对象之间关系。
 首先建立Arnold Schwarzenegger的对象坐标,根据上文的图示坐标可得(该对象有很多属性,但该部分属性已可以定义该对象):
Arnold Schwarzenegger=[
{person[{nationality:Austria,USA}…]},
{actor[{film:Terminator},…]},
{bodybuilder[]},…
]……V1
 这里采用二级坐标表示:person表示对象特征定义;nationality表示特征属性;Austria表示特征属性值。因为nationality等一些列特征属性合取可得到person这个定义。
再来建立Sylvester Stallone的对象坐标,根据前文的构造语句,可以得到Stallone的Type及属性。
Sylvester Stallone=[
{person[{nationality:USA},…]},
{actor[{film:The First Blood},…]…},
]……V2
 然后将两个向量相乘,首先:
 person*person=1
 表示这两个对象有特征定义person,可以进一步比较特征属性nationality:
 Austria*USA=0
 USA*USA=1
 综上可认为:nationality*nationality=0.5
 表示,这两个对象的特征属性nationality有部分相关,都有USA这个特征属性值。
 其次,person*actor=0,表示这两个对象的特征定义不存在相关关系。
 再次,actor*actor=1,表示这两个对象有相关的特征定义actor,进一步比较特征属性film,由前文提供计算方法可得film*film=0,表示没有特征属性值的相关关系。
 综上计算方法及结果,可得如下结论:Arnold Schwarzenegger和Sylvester Stallone两个对象存在相关关系。即:这两个对象是person,国籍都是USA,都是actor,但是没有合演过电影。这个结论与现实相符。
前文所述的对象相关度计算方法,仅是表面上粗浅的计算,也仅是对语义相关度问题提供一种方法参考,但计算结果让人满意,实际意义值得期待。而且完全可以对该方法进一步加以研究,比如:每一个对象按特征定义的贡献度,为特征定义赋予相关权值;细化计算粒度,可以用小数表示相关度;为结果定义实际意义,例如两个向量的乘积等于1有什么意义,等于0.5时有什么意义。
 人工智能发展至今,最根本的问题是知识的表示问题。各种知识库如WordNet、Freebase数据库、各种本体数据库,都力求将大千世界中的对象有机组织起来。但是,不管是本体数据库还是Freebase数据库,都是利用了对象之间天然的上下位关系进行层次关系定义,而且经验证,这种方法是可行的,但仅是在纵向关系研究中。但是属性坐标系理论以其独到性,提出了一种对象横向关系(相关性)的表示方法,对本体数据库或是Freebase数据库中的对象横向关系研究提供了宝贵的理论基础。
参考文献
[1] 冯嘉礼.思维智能与属性论方法[J].广西师范大学学报(自然科学版),1997,15(3):1-6.
[2] 冯嘉礼.思维智能与属性论方法(续)[J].广西师范大学学报(自然科学版),1997,15(4):1-6.
[3] 冯嘉礼,冯嘉仁,詹增修.以属性为基础的知识库建库原则[J].计算机研究与发展,1987,24(11):56-61.
[4] 李俊.语义数据库Freebase研究[J],现代图书情报技术,2011(10):18-23.
[5] A Brief Tour of Graphd[EB/OL]. http://wiki.freebase.com/wiki/Graphd.
[6] 阮一峰.Freebase再研究[EB/OL]. http://www.ruanyifeng.com/blog/2008/04/freebase_reloaded.html.
[7] Query Editor[EB/OL]. http://www.freebase.com/view/queryeditor/.

此内容为AET网站原创,未经授权禁止转载。