Computer Science and Applicatio n
计算机科学与应用
, 2011, 1, 91-96
http://dx.doi.org/10.12677/csa.2011.13019
Published Online December 2011 (//www.abtbus.com/journal/csa)
Copyright © 2011 Hanspub
CSA
An Approach of Knowledge Extraction Restrained
by Ontology
Guojie Li
*
, Dengfeng Xu
Dalian Hengyi Technology Incorporated Company, Dalian
Email:
ligj@hengyi.ln.cn
Received: Sep. 1st, 2011; revised: Sep. 25th, 2011; accepted: Oct. 9th, 2011.
Abstract:
In terms of knowledge view, an approach of knowledge extraction restrained by ontology is pro-
posed in this paper. At first, translate a domain ontology into a model expressed by Alloy language and use
the form of solution space to expre
ss the recognized entities and the recognized entity-relations which can be
got when applying named entity rec
ognition technology and entity relationextraction technology to coarse
text block in turn. And then
translate every solution of solution space into an assertion sentence which will be
included in Alloy model. Next, reduce solution space by applying Alloy analyzer to the Alloy model. At last,
a whole knowledge instance will be obtained.
Keywords:
Knowledge Extraction; Ontology; Alloy
一种基于本体约束的知识抽取方法
李国杰
*
,许登峰
大连恒宜科技有限公司,大连
Email: ligj@hengyi.ln.cn
收稿日期:
2011
年9月1日;修回日期:
2011
年9月25日;录用日期:
2011
年10月9日
摘
要:从知识的角度出发,提出一种基于本体约束的知识抽取方法:将领域本体中蕴含的逻辑信息
转换为一个
Alloy
语言表示的模型,将命名实体识别和实体关系抽取的成果映射为解空间,接着将解
空间里的每一个解转化为
Alloy
语言表示的断言语句,然后使用Alloy分析器来约简解空间,最终得到
一个具有明确语义的完整知识实例。
关键词:
知识抽取;本体;Alloy
1.
引言
在信息抽取领域,命名实体识别方法可以为实体
赋予正确的语义,实体关系抽取则可以明确两个实体
间的关系语义。但从知识的角度来看,无论是命名实
体识别还是实体关系抽取都属于
“小粒度”(知识片段)
的抽取,抽取结果并非独立完整的知识实例。命名实
体识别和实体关系抽取的成果只有经过知识合成才能
成为独立完整的知识实例。但由于知识体系的复杂性
和多样性,合成“知识片段”往往是非常困难的。此
外,传统的信息抽取主要采用基于规则的方法,这种
方法会导致在抽取信息时因无法克服不同的信息项满
足同一或具有包含关系抽取规则时无法确定信息项类
型的问题。
本体是共享的、规范化的概念模型,是对某一领
域中知识结构的系统描述,因此从知识的角度来看,
领域本体是知识抽取最有效的工具之一。但从目前来
看,基于本体信息抽取和知识抽取的研究工作对领域
本体的利用非常有限,且主要集中在一些信息本身格
式和信息上下文格式的利用;而领域本体中蕴含的逻
辑知识以及推理能力很少被利用,因此这类方法在抽
取结构比较复杂的知识时抽取效果就明显下降了。
本文研究的思路是:将领域本体中蕴含的逻辑知
识转换为一个
Alloy
语言表示的模型,在完成命名实
李国杰 等
一种基于本体约束的知识抽取方法
92
体识别和实体关系抽取的基础上,使用约束逻辑求解
方法
(Alloy
分析器)来对领域内的信息进行更为精确
的定位,最终得到一个具有明确语义的知识实例。本
文的组织如下,第二节给出两个引例,明确本文要解
决的问题;第三节介绍相关的概念;第四节是本文的
重点,介绍知识抽取的算法;第五节是实验;最后是
相关工作和结论。
2.
本文要解决的问题
2.1.
两个引例
本小节通过两个简单的案例来直观地阐述本文要
解决的问题。假设有文本片段:“周恩来总理出生于
1898
年
3月5日,逝世于1976
年
1月8日”。使用
命名实体识别技术可以将“
1898
年3月5日”和“
1976
年
1
月
8日”标识为一个“日期时间”实体类型的实
例,但不能确定“
1898
年3月5日”和“1976年
1
月
8
日”是“出生时间”还是“逝世时间”。使用实
体关系抽取技术可以确定“
(周恩来,
1898
年3月5
日
)
”是“出生(人物,时间)”关系的实例,“(周恩来,
1976
年
1月8日)”是“逝世(人物,时间)”关系的实
例。通过确定实体的关系,“
1898
年
3
月5日”和“1976
年
1月
8日”两个实体就有了更为明确的语义。
但在某些情况下,二元实体关系抽取的结果也不
能保证实体的语义完全明确。假设有文本片段:“英
华公司
2008
年实现销售收入20.1亿元,而2009年则
达到
22.3
亿元”。使用命名实体识别技术可以将“英
华公司”、“
2008年”、“20.1亿元”、“2009年”
和“
22.3
亿元”分别标识为“组织”、“日期”、“销
售收入值”、“日期”和“销售收入值”实体类型的
实例;进一步,使用实体关系抽取技术可以确定“
(英
华公司,
20.1亿元
)”和“
(英华公司,22.3亿元)”是
“销售收入
(组织,销售收入值
)”的两个关系实例。
显然,这两个关系实例的语义由于缺乏日期实体支持
而变得模糊。
笔者认为,使得一个实体具有明确语义的关键在
于能够确定该实体在领域中的“位置”。如果使用领
域本体来描述一个领域里的规则,那么知识抽取的问
题就转换为:在领域本体中找到一个最合适的概念作
为实体的类型。
2.2.
相关概念
首先我们给出同问题描述相关的几个概念。
定义
1
:本体
O是一个五元组,
O =
{
C,R,H
C
,
Rel,Ao}[1],其 中C是概念的集合;R是
非分类关系的集合;
HC⊆C×C是分类关系的集合;
Rel
:R
→
C
×
C
是一个函数,表示两个概念之间的特定
关系;
Ao
是公理集,通常使用逻辑语言来表示。表示
本体的语言有多种,本文中提到的领域本体是使用
OWL DL
表示的本体。
为了描述问题的方便,我们引入约定
1
。
约定
1
:使用O.C
、O.R、O.HC、O.Rel和O.Ao来
表示本体
O
的相应元组;
∀
c
∈
O.C
使用
instconc(c
)
表示
c
的所有实例,即实体;
∀
r
∈
O.Rel使用instrela(r)
表示
r的所有实例,即实体对。
基于领域本体约束的知识抽取方法是在命名实体
识别和实体关系抽取的基础上完成的,因此我们首先给
出命名实体识别和实体关系抽取的定义及其相关约定。
定义
2
:命名实体识别主要是要识别出文本中出
现的专有名词和有意义的数量短语的实体类型。命名
实体识别中的实体类型同领域本体中的概念在语义上
是一致的。
一般来说,在进行命名实体识别时往往会使用一套
实体识别规则。为了描述问题的方便,我们引入约定
2。
约定
2:对于一个给定的领域本体
O,
∀
c
∈O.C
都对应一个抽取规则集
c.PAT,
∀
I
∈
instconc
(
c)使
得
∃
p
∈
c.PAT
,概念实例
i满足抽取模式p。称i是c
的实例,记为
instofconc(i,c)。
定义
3
:实体关系抽取是指从文本语料中自动识
别出具有语义关系的实体对。实体关系抽取中的实体
关系同领域本体中的
Rel
元组在语义是一致的。
一般来说,在进行实体关系抽取时往往会对应着一
套抽取规则。为了描述问题的方便,我们引入约定
3。
约定
3:对于一个给定的领域本体O,
∀
r
∈
O.Rel
都对应一个抽取规则集
r.PAT,
∀
I
∈
instrela
(r)使得
∃
p
∈
r.PAT
关系实例i满足抽取模式p。称i是r
的实例,记为
instofrela(i,r)。
2.3.
问题的一般形式
图
1
所示的是一个非正式的领域本体O的示意
Cop
yright © 2011 HanspubCSA
李国杰
等
一种基于本体约束的知识抽取方法
Copyright © 2011 Hanspub
CSA
93
那
么就可以确定e1∈instconc(c1),e2∈instconc(c2)。
但如果同时又有
∃p6∈r2.PAT,使得(e1,e2)满足抽取
模式
p6
,那么有(e1,e2)∈instrela(r2)
成立,这样e1
和
e2所属的概念仍不明确。
但如果有实体
e3
,且已知①e3∈instconc(c3);
②
(e1,e3)∈instreal(r3);③O.Ao中有规则
e1∈instconc(sc1)∧e3∈instconc(c3)∧(e1,e3)
∈instreal
(r3
)→e1∈instconc(c1);
④
O.Ao
中有规则
e1
∈instconc(c1)∧((e1, e2)
∈instrela
(r1
)∨(e1,e2)
∈instreal
(r2
))→e2∈instconc(c2);
那么进而可以确定
e1∈instconc(c1)和
e2
∈instconc(c2)。
Figure 1. A diagram about ontology
O
图
1.
领域本体O示意图
图,已知:
①c1,c2,c3,c4,c5,c6∈O.C;
②
r1
(c1,c2),r2(c4,c5),r3(c1,c3),r4(c5,c6)
∈
O.Rel,r1(c1,c2)
表示
c1和c2存在语义关系r1,r2(c4,c5)、r3(c1,c3)和
r
4
(c5,c6)的含义类似;
③
(c1,sc1), (c4,sc1), (c2,sc2), (c5,sc2)∈O.HC, (c1,sc1)表
示
c1
是sc1的子概念,(c4,sc1)、(c2,sc2)和(c5,sc2)的含
义类似;
④
instconc(c1)∩instconc(c4)
≠∅∧i nstconc(c2)∩i nstconc(c5)≠∅;
⑤
instprop
(
r1)
∩instprop(r2)≠∅。
从图
1
我们可以得到一个启示:在经过命名实体
识别和实体关系抽取之后,我们可以借助本体中已有
的规则和本体提供的逻辑推理机制来进一步缩小实体
所属概念的范围。下面我们将围绕这一思想给出基于
领域本体约束的知识抽取算法。
对于两个
实体e1和e2,如果∃p1∈c1.PAT,使
得
e1满足抽取模式p1,那么有e1∈instconc(c1)成立。
类似地,如果
∃p2∈c4.PAT,使得e1满足抽取模式
p
1,那么有e1∈instconc(c4)成立。如果∃p3∈c2.PAT,
使得
e2
满足抽取模式p3,那么有e2∈instconc(c2)成
立。
∃
p4∈c5.PAT,使得e2满足抽取模式p4,那么
有
e2∈instconc(c5)成立。
3. Alloy
语言与基于本体的知识抽取方法
基于领域本体约束的知识抽取流程如图
2所示。
因为流程中用到了
Alloy
语言和
Alloy
分析器,因此
我们首先对
Alloy语言和
Alloy
分析器作简要的介绍。
3.1. Alloy
语言与
Alloy分析器[2-4]
从上述分析可以得出结论
1)e1∈instconc(sc1)和
结论
2)e2∈instconc(sc2),但无法具体确定e1和e2
所属的概念。进一步,如果
∃p5∈r1.PAT,使得
(e1,e2)
满足抽取模式
p5
,那么有(e1,e2)∈instrela(r1)成立,
Alloy
语言是基于关系逻辑的结构化建模语言,用
于对具有复杂结构和行为的系统进行建模。
Alloy语言
用于描述的对象是原子和元组
(原子序列
)。下面通过
一个简单的例子简要地介绍
Alloy
语言。如图3所示:
Figure 2. An approach of kn owledge ex traction restrained by ontology
图
2.基于领域本体约束的知识抽取方法
李国杰 等
一种基于本体约束的知识抽取方法
Copyright © 2011 Hanspub
CSA
94
Figure 3. A case about animal
图
3.一个描述动物呼吸的案例
fish
和
dolphin都是animal的子类,fish用gill呼吸,
dolphin
用
lung呼吸,gill和lung都是organ的子类,
animal
使用
organ呼吸。可以使用Alloy语言(图4所
示
)
来形式化地表示上述事实。在图4中,行1表示模
型的名字是“
animal
”,“module”是Alloy语言中的
关键字;行
2
表示“animal”集合是“Class”集合的
子集,“
sig”关键字用于定义一个集合;类似地,行
3
至行5
分别定义了“gill”、“fish”和“breathe”集
合,
其中“gill”和“fish”是Class的子集,“breathe-by”
是“
Property
”的子集;行
6陈述事实(fact):“fish”
是“
animal
”的子集;行
7
陈述事实:所有的“fish”
用“
gill
”呼吸
(breathe)
;行
8表示lung是Class的子
集;行
9表示
lung
与gill
的交集为空;行10表示do lphin
是
Class
的子集;行11表示dolphin是animal的子集;
行
12
表示所有的dolphin都用lung呼吸(breathe);行
13
陈述一个断言
dolphinIsFish:dolphin是fish的子集;
行
14
根据已知的事实和前提来验证断言dolphinIsFish
的正确性。将图
4
的代码调入到
Alloy
分析器并设定
相关的参数后,
Alloy分析器输出对断言dolphinIsFish
的验证结果。
3.2.
本体与
Alloy[5]
以描述逻辑为基础的本体描述语言
OWL DL所
表达的本体信息可以用一个
Alloy
模型来描述。一个
领域本体可以映射为
Alloy
语言的一个模型,本体中
的概念可以映射为
Alloy
语言中的集合;本体中关系
可以映射为集合间的关系;本体中的概念层次可以映
射为
Alloy
语言中的子集关系;本体中的公理则完全
可以用
Alloy
语言中的fact来陈述。
3.3.
基于领域本体约束的知识抽取方法
第一步:将
OWL DL
语言描述的本体转换为一个
用
Alloy语言表达的模型M*。
第二步:借助命名实体识别技术确定原始文本片
段的初次解集。
记
12
,, ,
n
Eee e
为原始文本片段中所有待识
别的实体集合;
∀
e
∈
E
使用命名实体识别技术可以
得到
e所有可能的实体类型,这些类型称为
e
的实体
目标域。形式化地,我们给出实体目标域和初次解集
的定义。
定义
4:
∀c
∈O.C,称
e.c
= {
c|c∈O.C,instofconc(e,c)}为实体e的实体目
标域。
定义
5
:称
1
12
.. .
n
s
paceEe cecec
为E的
初次解集。
第三步:在实体关系抽取的基础上,使用图
5所
示的算法约简初次解集得到二次解集
space(E)2。
定义
6:
∀(ca,cb)∈O.R,称
(
e1,e2).r
=
{(
ca,cb) | (ca,cb)∈O.R,instofprop((e1,e2), (ca,cb))}
为实体对
(
e1,e2)
的关系目标域。
Figure 4. A case for Alloy model
图
4. Alloy模型示例
李国杰 等
一种基于本体约束的知识抽取方法
95
Figure 5. The algorithm for solving second answers set
图
5.求二次解集算法
第四步:将二次解集中的每一个解转换为
Alloy
模型下一组断言语句,然后将这组断言语句补充到
M
×
;如果Alloy分析器输出每一个断言都是有效的,
那么认为这组断言对应的解是一组有效解;否则是无
效解。算法如图
6所示。
4.
实验
4.1.
实验数据
为了验证算法的有效性,我们以人物讣告主题的
文本片段作为实验对象。首先我们定义了如下的本体
O
,其中
C= {Person,Deceased Person,Relative,Age,Birth
Date
,Death Date
,Death Address,Birth Address,
Date
,
Address},Person代表“人”,Date代表“日
期”,
Address
代表“地点”;Deceased Person代
表“死者”,
Relative代表“亲属”,Age代表“卒
年”,
Birth Date表示出生日期,Deat h Dat e代表死
亡日期,
Death Address代表死亡地点,Birth Address
代表出生地点;
O.R= {born in address,die at the age of,born in
date
,
die in date,die in address,is related to};
O.HC= {(Deceased Person,Person), (Relative,
Person
), (Birth Address
,
Address
), (Death Address,
Address
), (
Birth Date,Date), (Death Date,Date
)};
O.Rel= {born in address
(Deceased Person,Birth
Address
),
die at the age of
(
Deceased Person,Age),
born in date
(
Deceased Person,Birth Date),die in
date
(
Deceased Person,Death Date),die in address
(
Deceased Person,Death Address),is related to
(
Deceased Person,Relative)};
O.Ao= {e1∈instconc(Deceased Person)∧e2∈
instconc
(
Date
)∧(
e1,e2)∈instreal(born in date)
→
e2∈instconc(Birth Date),e1∈instconc
(
Deceased Person)∧e2∈instconc(Date)∧(e1,e2)
∈
instreal(die in date)→e2∈instconc(Death
Date
),
e1∈instconc(Deceased Person)∧e
2
∈
instconc
(
Address)
∧(
e1,e2)∈instreal(born in
Address
)
→
e
2
∈instconc(Birth Address),e
1
∈
instconc
(
Deceased Person
)∧e2∈instconc
(
Address)∧(
e1
,e2)∈instreal(die in Address)→
e
2
∈instconc(die Address),e∈instconc
(
Deceased Person)→e2∉instconc(Relative),e1∈
instconc
(
Deceased Person)∧e2∈instconc
(
Deceased Person)→e1= e2}
然后我们从
Salt Lake Tribune(www.sltrib.com)和
Arizona Daily Star(w
ww.azstarnet.com)下载了30篇讣
告进行测试。
4.2.
实验结果
从前三节的描述里不难发现,最终解集中解的数
量越少,说明实验结果越精确;反之则实验的不确定
性越高。理想化地,对于每次抽取结果,最终解集中
解的数量应为
1
。而从实验结果(如图7所示)来看,只
有
6
篇讣告最终解集中解的数量大于1,其余24篇都
获得了明确抽取结果。因此,实验结果验证了新方法
的有效性。
Figure 6. The algorithm for solving final answers set
图
6.求最终解集算法
Cop
yright © 2011 HanspubCSA
李国杰
等
一种基于本体约束的知识抽取方法
Copyright © 2011 Hanspub
CSA
96
提供的概念以及概念间的关系来构造本体,使用最大
熵模型
和CRF
来对语句中包含的信息进行识别。由于
该系统使用统计的方法来进行信息抽取,因此对于缺
乏足够训练样例的情况抽取效果较差。
6.
结束语
本文提出了一种基于本体约束的知识抽取的方
法。不同于传统的基于规则的信息抽取方法,我们从
知识的角度出发,将知识抽取转换为一个约束逻辑程
序求解问题,不仅合成了已有的知识片段,获得了完
整的知识实例,而且利用本体中定义的逻辑规则,克
服了不同的信息项满足同一或具有包含关系抽取规则
时无法确定信息项类型的问题。
Figure 7. Experiment result
图
7.实验结果
5.
相关工作
[6]
提出一种由
Record Extractor、Constanst/Key-
word Recognizer
、
Ontology Parser、Database-Instance
Generator
四大部件构成的信息抽取系统。系统的工作
原理是首先使用
Record Extractor
从原始网页中提取
含有待抽取信息项的记录条;然后使用
Ontology
Parser
从领域本体中获取信息项的特征知识;根据信
息项的特征知识和
Constanst/Keyword Recognizer中包
含的约束信息从记录条中抽取信息项,最后依使用
Database-Instance Generator
将信息项存到数据库中。
系统的关键部件是
Constanst/Keyword Recognizer和
Ontology Parser
,它们提供了信息抽取的规则,这些规
则都是基于启发式或者预定义的语法格式抽取规则,
因此该方法缺乏通用性。此后,
[7,8]从不同的应用背
景出发开发了各自的基于本体的信息抽取系统,但其
指导思想同
[6]相比基本一致。
[7]以商务智能领域作为
背景,在领域本体的支持下,使用基于语言学模式的
的方法进行信息抽取。
Kylin system[8]
以Wikipedia
pages
中包含的信息作为抽取对象,利用WordNet中
参考文献
(References)
[1]
L. Stojanovic. Methods and tools for ontology evolution. Univer-
sity of Karlsruhe, 2004.
[2]
D. Jackson, I. Schechter and I. Shlyakhter. ALCOA: The alloy
constraint analyzer. Proceeding of 22nd International Conference
on Software Engineering (ICSE), 2000. ACM Press, 2000: 331-
347.
[3]
D. Jackson. Micromodels of software: Modelling and analysis
with Alloy. http://sdg.lcs.mit.edu/alloy/book.pdf.
[4]
D. Jackson. Alloy: A lightweight object modeling notation. ACM
Transactions on Software Engineering and Methodology (TO-
SEM), 2002, 11(2): 256-290.
[5]
H. H. Wang. Reasoning support for Semantic Web ontology fa-
mily languages using alloy. Multiagent and Grid Systems, 2006,
2(4): 145-155.
[6]
D. W. Embley. Conceptual-model-based data extraction from
multiple-record web pages. Data
& Knowledge Engineering, 1998,
31: 227-251.
[7]
H. Saggion, A. Funk, D. Maynard and K. Bontcheva. Ontology-
based information extraction fo
r business intelligence. Procee-
dings of the 6th International the Semantic Web and 2nd Asian
Conference on Asian Semantic Web Conference, 2007, 6(3): 843-
856.
[8]
F. Wu, R. Hoffmann and D. S. Weld. Information extraction
from Wikipedia: Moving down the
long tail. Proceedings of the
14th ACM SIGKDD International Conference on Knowledge
Discovery and Data Mi
ning, 2008, 5(1): 731-739.
|