论文部分内容阅读
[摘要] 本文阐述了将本体应用到数据挖掘中的科学性和可行性。根据本体的特点,将本体引入到数据挖掘中,与传统的数据挖掘方法相比,使专业技术人员能够了解应用领域的背景知识,设计出更好的数据挖掘算法,提高了数据挖掘的效率和结果。
[关键字] 数据挖掘 本体 人工智能
1.引言
随着信息技术的迅速发展,人们正在步入信息化的社会。浩瀚的信息量使得企业决策越来越复杂,严重影响了企业对市场的反应速度,如何从这浩瀚的知识中挖掘出未知的、有价值的的新知识和规律,根据现有数据预测未来的发展趋势,越来越引起人们的重视和关注,成为当今研究的一个热点问题。数据挖掘就是从大量的数据中提取或挖掘知识,近年来引起了产业界的广泛关注,如今,数据挖掘已经应用到各个领域中[1],如:电子商务、市场营销、零售、银行、证券等等。但是数据挖掘的专业技术人员并不具备相应的应用领域的背景知识,因而很难设计出最佳的数据挖掘算法,影响了数据挖掘的效率与效果,将本体概念和技术加入到数据挖掘中,建立背景领域的领域本体辅助技术人员来进行数据挖掘。本文利用本体的特征,研究如何利用将本体技术应用到数据挖掘中,开发出更加有效的挖掘算法,提高挖掘效率和结果。
2.本体
本体[2](Ontology)原本是哲学上的一个概念,被哲学家用来描述事物的本质。随着人工智能的发展,本体被引入到人工智能界且定义经历了一个过程。1993年,Gruber给出了本体最为流行的定义:“本体是概念模型的明确规范说明”。后来,在此基础上,1997年Borst给出了本体另一种定义:“本体是共享概念模型的形式化规范说明”。1998年Studer对上述两个定义进行了深入的研究,认为本体是:“共享概念模型的明确的形式化规范说明”。本体是领域内部不同主体之间进行交流的一种语义基础,即本体提供一种明确定义的共识,构造本体的目的是为了实现某种程度的知识共享和重用,然而要建立一个能够涵盖所有领域知识的通用本体是不可行的,因此比较现实的方法是抽象出某个领域内共同认可的一些概念以及概念之间的关系,用计算机可以理解的方式去构建领域本体,利用它去解决该领域的问题。
基于概念分层,数据库中的概念或数据往往被组织成不同的抽象层次。例如一个人的出生地被组织成如下层次:城市,省,国家等等。概念分层定义了概念之间的这种泛化关系。本体的描述语言有多种,有代表性的有:SHOE、XOL、RDF、RDFS、OIL、DAML+OIL、OWL。下面给出一个RDFS描述的一个本体的例子片段:
3.数据挖掘
3.1 数据挖掘过程[3]
1.确定对象。清晰的定义出业务问题,认清数据挖掘的目的是数据挖掘的重要一步。挖掘的最后结构是不可预测的,但要探索的问题应该是有预见的,为了数据挖掘而数据挖掘,是不可能成功的。
2.数据准备。(1)数据选择。搜索所有与业务对象有关的内部和外部数据信息,并从中选择出适合于数据挖掘应用的数据。(2)数据预处理。研究数据的质量,为进一步的分析做好准备,并确定将要进行的挖掘操作的类型。(3)数据转换。将数据转换成一个分析模型,这个分析模型是针对挖掘算法建立的,建立一个真正适合挖掘算法的分析模型是数据挖掘成功的关键。
3.数据挖掘。对所得到的经过转换的数据进行挖掘,除了完善从选择合适的挖掘算法外,其余的一切工作都能自动地完成。
4.结果分析。解释并评估结果,其使用的分析方法一般应作数据挖掘操作而定,通常会用到可视化技术。
5.知识的同化。将分析所得到的知识集成到业务信息系统的结构组织中去。
总之,数据挖掘过程需要多次的循环反复,才能达到预期的效果。
3.2数据挖掘方法
数据库技术只是将数据有效地组织和存储在数据库中,并对这些数据作一些简单的分析,大量的隐藏在数据内部的有用的信息我们无法得到。而机器学习、模式识别、统计学等领域却有大量的提取知识的方法,但没有和实际应用中的海量数据结合起来,很大程度上只是对实验数据或学术研究发挥作用,数据挖掘从一个新的角度将数据库技术、机器学习、统计学等领域结合起来,从更深层次中发掘出存在于数据内部的有效的、新颖的、具有潜在效用的乃至最终可理解的模式。由此,我们可以根据数据挖掘方法所属领域的不同将其分为数学统计方法、机器学习方法、面向数据库的方法、混合方法还有可视化技术、知识表示技术等等,具体来说,主要有以下几种数据挖掘方法[4,5]:
(1)神经网络方法。神经网络由于本身良好的鲁棒性、自组织自适应性、并行处理、分布存储和高度容错等特点,为解决大复杂度问题提供了一种相对来说比较有效的简单方法,因此近年来越来越受到人们的关注。其工作原理是通过学习改变神经元之间的连接强度。神经网络有前向神经网络、反馈神经网络、自组织神经网络等,在神经网络中,有权重和网络的拓扑结构决定了他所能识别的模式类型。神经网络模拟人的形象直觉思维,其最大的缺点就是“黑箱性”,人们难以理解网络的学习和决策过程,通常是通过建立一个基于规则的辅助系统或直接从训练好的网络中提取规则。
(2)决策树。决策树学习着眼于从一组无次序、无规则的实例中推理出决策树表示形式的分类规则。他采用自顶向下的递归方式,在决策树的内部节点进行属性值的比较并根据不同的属性值判断从该节点的向下分支,在决策树的叶子节点得到结论。所以,从根到叶节点的一条路徑就对应着一条合取规则,整棵决策树就对应着一组析取表达式规则。通过将大量数据有目的的分类,从中找到一些有价值的、潜在的信息,它的主要优点是描述简单,分类速度快,特别适合大规模的数据处理。最有影响和最早的决策树是由Quinlan提出的著名的基于信息墒的D3算法。
(3)遗传算法。遗传算法是一种基于生物自然选择与遗传机理随机搜索算法,是一种仿生全局优化算法。遗传算法已在优化计算、分类、机器学习等方面发挥着显著作用。在数据挖掘中,他还可以用于评估其他算法的适合度,在处理组合优化问题方面有一定的优势,可用于聚类分析等。遗传算法的最大特点在于演算简单,但用于数据挖掘也存在一些问题:算法较复杂还有收敛于局部极小的过早收敛等难题未得到彻底解决。
(4)关联规则方法。关联规则是数据挖掘研究的主要模式之一,侧重于确定数据中不同领域之间的关系,找出满足给定条件下的多个域间的依赖关系。关联规则挖掘对象一般是大型数据库,该规则一般的表达式为:;其中:(k=1,2,…,m),(j=1,2,…,n)是数据库中的数据项。有Support()=,Confidence()=。数据项之间的关联,即根据一个事务中某些数据项的出现可以导出另一些数据项在同一事务中出现。在关联规则挖掘的研究中,算法的效率是核心问题,如何提高算法的效率是所要解决的问题。
(5)数量统计方法。此类技术建立在传统的数量统计基础上。在数据库字段项之间存在两种关系:函数关系和相关关系,对他们的分析可采用统计学方法,即利用统计学原理对数据库的信息进行分析。可进行常用统计、回归分析、相关分析、差异分析、多元回归分析及偏最小二乘回归方法等。传统统计分析可用于分类挖掘和聚类挖掘,SAS、SPAA和BMDP是目前国际上最有影响力的三大统计分析软件。
(6)粗集方法。在数据挖掘中,从实际系统采集到的数据可能包含各种噪声,存在许多不确定的因素和不完全信息有待处理。传统的不确定处理方法,如模糊集理论、证据理论和概率统计理论等,因需要数据的附加信息或先验知识(难以得到),有時在处理大量数据的数据库方面无能为力。粗集作为一种软计算方法,其理论特点是不需要预先给定特征或属性的数量描述,如统计学中的概率分布,模糊集理论中的率属度或率属函授等,而是直接从给定问题出发,通过不可分辨关系和不可分辨类确定问题的近似域,从而找出该问题中的内在规律。可以克服传统不确定处理方法的不足,并且和他们有机的结合,可望进一步增强对不确定性、不完全信息的处理能力。粗集与其他软计算方法的集成是一种趋势,但基于粗集的数据挖掘也有一些方面都待深化,如与其他软计算方法进一步结合问题,粗集知识采掘的递增算法,设计高效的启发式简化算法或研究实时性较好的并行算法,设计连续值的离散算法。
(7)聚类分析。聚类分析是多元统计分析方法之一,也是统计模式识别中非监督模式识别的一个重要分支。在统计分析和模式识别领域,聚类已经被广泛应用了多年,提出了大量的理论和方法,取得了丰硕的研究成果,聚类的研究重点在以下几个方面:聚类有效性问题,迭代优化聚类的初始化问题,分类属性数据聚类。
4.基于本体的数据挖掘
4.1基于本体的数据挖掘模型
将本体应用于数据挖掘中的数据预处理、数据准备、数据挖掘步骤中。通过领域本体的指导将各类异构的数据源转化为基于本体的标准模式并建立数据仓库,为决策支持打好基础,通过准确的定义,获取问题的语义,将决策问题准确描述,建立任务本体,使数据挖掘技术工作者在语义层次上理解专业领域知识,从而提供更好的数据挖掘算法,提高数据挖掘效率。下面图1提供了一个基本的模型。
4.2基于本体的数据挖掘工作步骤
(1)建立领域本体及任务本体
建立各个挖掘领域的领域本体,然后通过分词技术,从用自然语言描述的问题中提取相关的描述知识,再用过滤器过滤掉虚词等各种无关信息得到问题的信息特征,最后将领域本体中的概念或属性与特征信息进行匹配并根据一些规则建立任务本体。
图1基于本体的数据挖掘模型
(2)数据仓库的建立
在现实中,不同的数据库系统有不同的数据格式如:ERP、CRM、EC等等。XML定义的结构是无歧义的,且是自我描述并独立于平台的,所以可用XML作为各种数据库之间进行交流的媒介语言。将各种异构数据在本体的指导下转换为XML标准形式,然后通过领域本体之间概念关系的定义辅助确定数据仓库维之间的关系。最后将数据载入数据仓库中,为数据挖掘作准备。
(3)确定数据挖掘的范围
在数据挖掘中,数据量往往非常庞大,不加区分的对整个数据仓库进行挖掘是很不明智的,特别是由于产生的模式会随数据量的增大成指数级增长,造成挖掘过程的效率低下,并且在发现的模式当中有很多用户并不感兴趣。本体提供了用来描述某个领域内事实的词汇集,所有的领域本体构组成了该领域的知识。本文利用本体是领域知识的表示这个特点,根据步骤建立的任务本体,通过规则知道,确定挖掘的范围。
(4)数据挖掘
此步骤对已经进行了预处理了的数据仓库挖掘出用户感兴趣的知识。在此步骤中关键是选择合适的算法,专业技术人员往往不懂专业领域的知识,而设计不出良好的数据挖掘算法,影响了挖掘效果。通过建立领域本体,使机器能够从语义的层次上理解领域的知识,从而帮助专业技术人员开发出优良的数据挖掘算法。
(5)评估及反馈
对于挖掘的结果,采取一个经过良好的定义的兴趣度量来度量挖掘结果的好坏。并且采用反馈机制来重新构建任务本体,重新进行数据挖掘。
5.结束语
许多数据挖掘方法仅仅在内容上产生规则,然而背景知识的利用可以补充发现过程,从而产生具有语义的规则。本文中将本体引入到数据挖掘中,解决了因专业技术人员不了解背景领域知识而无法开发出高效的数据挖掘算法的困扰,改善了数据挖掘效果且提高了效率。
参考文献:
[1] 曹尧,姜超.基于本体与搜索引擎的web数据挖掘[J].广西质量监督导报.2008,9.总第93期,52-54.
[2] 孔敬.本体学习:原理、方法与相关进展[J].情报学报.2006,12,25(6),657-665.
[3] 钟晓,马少平,俞瑞钊等.数据挖掘综述[J].模式识别与人工智能.2001,3.1(14),48-52.
[4] 梁凯强,陆菊康.基于领域本体与概念格的关联规则挖掘[J].计算机工程与设计.2007,7.13(28),3033-3036
[5] Kantardzic M.数据挖掘----概念、模型、方法与算法[M].北京:清华大学出版社,2003.
[关键字] 数据挖掘 本体 人工智能
1.引言
随着信息技术的迅速发展,人们正在步入信息化的社会。浩瀚的信息量使得企业决策越来越复杂,严重影响了企业对市场的反应速度,如何从这浩瀚的知识中挖掘出未知的、有价值的的新知识和规律,根据现有数据预测未来的发展趋势,越来越引起人们的重视和关注,成为当今研究的一个热点问题。数据挖掘就是从大量的数据中提取或挖掘知识,近年来引起了产业界的广泛关注,如今,数据挖掘已经应用到各个领域中[1],如:电子商务、市场营销、零售、银行、证券等等。但是数据挖掘的专业技术人员并不具备相应的应用领域的背景知识,因而很难设计出最佳的数据挖掘算法,影响了数据挖掘的效率与效果,将本体概念和技术加入到数据挖掘中,建立背景领域的领域本体辅助技术人员来进行数据挖掘。本文利用本体的特征,研究如何利用将本体技术应用到数据挖掘中,开发出更加有效的挖掘算法,提高挖掘效率和结果。
2.本体
本体[2](Ontology)原本是哲学上的一个概念,被哲学家用来描述事物的本质。随着人工智能的发展,本体被引入到人工智能界且定义经历了一个过程。1993年,Gruber给出了本体最为流行的定义:“本体是概念模型的明确规范说明”。后来,在此基础上,1997年Borst给出了本体另一种定义:“本体是共享概念模型的形式化规范说明”。1998年Studer对上述两个定义进行了深入的研究,认为本体是:“共享概念模型的明确的形式化规范说明”。本体是领域内部不同主体之间进行交流的一种语义基础,即本体提供一种明确定义的共识,构造本体的目的是为了实现某种程度的知识共享和重用,然而要建立一个能够涵盖所有领域知识的通用本体是不可行的,因此比较现实的方法是抽象出某个领域内共同认可的一些概念以及概念之间的关系,用计算机可以理解的方式去构建领域本体,利用它去解决该领域的问题。
基于概念分层,数据库中的概念或数据往往被组织成不同的抽象层次。例如一个人的出生地被组织成如下层次:城市,省,国家等等。概念分层定义了概念之间的这种泛化关系。本体的描述语言有多种,有代表性的有:SHOE、XOL、RDF、RDFS、OIL、DAML+OIL、OWL。下面给出一个RDFS描述的一个本体的例子片段:
3.数据挖掘
3.1 数据挖掘过程[3]
1.确定对象。清晰的定义出业务问题,认清数据挖掘的目的是数据挖掘的重要一步。挖掘的最后结构是不可预测的,但要探索的问题应该是有预见的,为了数据挖掘而数据挖掘,是不可能成功的。
2.数据准备。(1)数据选择。搜索所有与业务对象有关的内部和外部数据信息,并从中选择出适合于数据挖掘应用的数据。(2)数据预处理。研究数据的质量,为进一步的分析做好准备,并确定将要进行的挖掘操作的类型。(3)数据转换。将数据转换成一个分析模型,这个分析模型是针对挖掘算法建立的,建立一个真正适合挖掘算法的分析模型是数据挖掘成功的关键。
3.数据挖掘。对所得到的经过转换的数据进行挖掘,除了完善从选择合适的挖掘算法外,其余的一切工作都能自动地完成。
4.结果分析。解释并评估结果,其使用的分析方法一般应作数据挖掘操作而定,通常会用到可视化技术。
5.知识的同化。将分析所得到的知识集成到业务信息系统的结构组织中去。
总之,数据挖掘过程需要多次的循环反复,才能达到预期的效果。
3.2数据挖掘方法
数据库技术只是将数据有效地组织和存储在数据库中,并对这些数据作一些简单的分析,大量的隐藏在数据内部的有用的信息我们无法得到。而机器学习、模式识别、统计学等领域却有大量的提取知识的方法,但没有和实际应用中的海量数据结合起来,很大程度上只是对实验数据或学术研究发挥作用,数据挖掘从一个新的角度将数据库技术、机器学习、统计学等领域结合起来,从更深层次中发掘出存在于数据内部的有效的、新颖的、具有潜在效用的乃至最终可理解的模式。由此,我们可以根据数据挖掘方法所属领域的不同将其分为数学统计方法、机器学习方法、面向数据库的方法、混合方法还有可视化技术、知识表示技术等等,具体来说,主要有以下几种数据挖掘方法[4,5]:
(1)神经网络方法。神经网络由于本身良好的鲁棒性、自组织自适应性、并行处理、分布存储和高度容错等特点,为解决大复杂度问题提供了一种相对来说比较有效的简单方法,因此近年来越来越受到人们的关注。其工作原理是通过学习改变神经元之间的连接强度。神经网络有前向神经网络、反馈神经网络、自组织神经网络等,在神经网络中,有权重和网络的拓扑结构决定了他所能识别的模式类型。神经网络模拟人的形象直觉思维,其最大的缺点就是“黑箱性”,人们难以理解网络的学习和决策过程,通常是通过建立一个基于规则的辅助系统或直接从训练好的网络中提取规则。
(2)决策树。决策树学习着眼于从一组无次序、无规则的实例中推理出决策树表示形式的分类规则。他采用自顶向下的递归方式,在决策树的内部节点进行属性值的比较并根据不同的属性值判断从该节点的向下分支,在决策树的叶子节点得到结论。所以,从根到叶节点的一条路徑就对应着一条合取规则,整棵决策树就对应着一组析取表达式规则。通过将大量数据有目的的分类,从中找到一些有价值的、潜在的信息,它的主要优点是描述简单,分类速度快,特别适合大规模的数据处理。最有影响和最早的决策树是由Quinlan提出的著名的基于信息墒的D3算法。
(3)遗传算法。遗传算法是一种基于生物自然选择与遗传机理随机搜索算法,是一种仿生全局优化算法。遗传算法已在优化计算、分类、机器学习等方面发挥着显著作用。在数据挖掘中,他还可以用于评估其他算法的适合度,在处理组合优化问题方面有一定的优势,可用于聚类分析等。遗传算法的最大特点在于演算简单,但用于数据挖掘也存在一些问题:算法较复杂还有收敛于局部极小的过早收敛等难题未得到彻底解决。
(4)关联规则方法。关联规则是数据挖掘研究的主要模式之一,侧重于确定数据中不同领域之间的关系,找出满足给定条件下的多个域间的依赖关系。关联规则挖掘对象一般是大型数据库,该规则一般的表达式为:;其中:(k=1,2,…,m),(j=1,2,…,n)是数据库中的数据项。有Support()=,Confidence()=。数据项之间的关联,即根据一个事务中某些数据项的出现可以导出另一些数据项在同一事务中出现。在关联规则挖掘的研究中,算法的效率是核心问题,如何提高算法的效率是所要解决的问题。
(5)数量统计方法。此类技术建立在传统的数量统计基础上。在数据库字段项之间存在两种关系:函数关系和相关关系,对他们的分析可采用统计学方法,即利用统计学原理对数据库的信息进行分析。可进行常用统计、回归分析、相关分析、差异分析、多元回归分析及偏最小二乘回归方法等。传统统计分析可用于分类挖掘和聚类挖掘,SAS、SPAA和BMDP是目前国际上最有影响力的三大统计分析软件。
(6)粗集方法。在数据挖掘中,从实际系统采集到的数据可能包含各种噪声,存在许多不确定的因素和不完全信息有待处理。传统的不确定处理方法,如模糊集理论、证据理论和概率统计理论等,因需要数据的附加信息或先验知识(难以得到),有時在处理大量数据的数据库方面无能为力。粗集作为一种软计算方法,其理论特点是不需要预先给定特征或属性的数量描述,如统计学中的概率分布,模糊集理论中的率属度或率属函授等,而是直接从给定问题出发,通过不可分辨关系和不可分辨类确定问题的近似域,从而找出该问题中的内在规律。可以克服传统不确定处理方法的不足,并且和他们有机的结合,可望进一步增强对不确定性、不完全信息的处理能力。粗集与其他软计算方法的集成是一种趋势,但基于粗集的数据挖掘也有一些方面都待深化,如与其他软计算方法进一步结合问题,粗集知识采掘的递增算法,设计高效的启发式简化算法或研究实时性较好的并行算法,设计连续值的离散算法。
(7)聚类分析。聚类分析是多元统计分析方法之一,也是统计模式识别中非监督模式识别的一个重要分支。在统计分析和模式识别领域,聚类已经被广泛应用了多年,提出了大量的理论和方法,取得了丰硕的研究成果,聚类的研究重点在以下几个方面:聚类有效性问题,迭代优化聚类的初始化问题,分类属性数据聚类。
4.基于本体的数据挖掘
4.1基于本体的数据挖掘模型
将本体应用于数据挖掘中的数据预处理、数据准备、数据挖掘步骤中。通过领域本体的指导将各类异构的数据源转化为基于本体的标准模式并建立数据仓库,为决策支持打好基础,通过准确的定义,获取问题的语义,将决策问题准确描述,建立任务本体,使数据挖掘技术工作者在语义层次上理解专业领域知识,从而提供更好的数据挖掘算法,提高数据挖掘效率。下面图1提供了一个基本的模型。
4.2基于本体的数据挖掘工作步骤
(1)建立领域本体及任务本体
建立各个挖掘领域的领域本体,然后通过分词技术,从用自然语言描述的问题中提取相关的描述知识,再用过滤器过滤掉虚词等各种无关信息得到问题的信息特征,最后将领域本体中的概念或属性与特征信息进行匹配并根据一些规则建立任务本体。
图1基于本体的数据挖掘模型
(2)数据仓库的建立
在现实中,不同的数据库系统有不同的数据格式如:ERP、CRM、EC等等。XML定义的结构是无歧义的,且是自我描述并独立于平台的,所以可用XML作为各种数据库之间进行交流的媒介语言。将各种异构数据在本体的指导下转换为XML标准形式,然后通过领域本体之间概念关系的定义辅助确定数据仓库维之间的关系。最后将数据载入数据仓库中,为数据挖掘作准备。
(3)确定数据挖掘的范围
在数据挖掘中,数据量往往非常庞大,不加区分的对整个数据仓库进行挖掘是很不明智的,特别是由于产生的模式会随数据量的增大成指数级增长,造成挖掘过程的效率低下,并且在发现的模式当中有很多用户并不感兴趣。本体提供了用来描述某个领域内事实的词汇集,所有的领域本体构组成了该领域的知识。本文利用本体是领域知识的表示这个特点,根据步骤建立的任务本体,通过规则知道,确定挖掘的范围。
(4)数据挖掘
此步骤对已经进行了预处理了的数据仓库挖掘出用户感兴趣的知识。在此步骤中关键是选择合适的算法,专业技术人员往往不懂专业领域的知识,而设计不出良好的数据挖掘算法,影响了挖掘效果。通过建立领域本体,使机器能够从语义的层次上理解领域的知识,从而帮助专业技术人员开发出优良的数据挖掘算法。
(5)评估及反馈
对于挖掘的结果,采取一个经过良好的定义的兴趣度量来度量挖掘结果的好坏。并且采用反馈机制来重新构建任务本体,重新进行数据挖掘。
5.结束语
许多数据挖掘方法仅仅在内容上产生规则,然而背景知识的利用可以补充发现过程,从而产生具有语义的规则。本文中将本体引入到数据挖掘中,解决了因专业技术人员不了解背景领域知识而无法开发出高效的数据挖掘算法的困扰,改善了数据挖掘效果且提高了效率。
参考文献:
[1] 曹尧,姜超.基于本体与搜索引擎的web数据挖掘[J].广西质量监督导报.2008,9.总第93期,52-54.
[2] 孔敬.本体学习:原理、方法与相关进展[J].情报学报.2006,12,25(6),657-665.
[3] 钟晓,马少平,俞瑞钊等.数据挖掘综述[J].模式识别与人工智能.2001,3.1(14),48-52.
[4] 梁凯强,陆菊康.基于领域本体与概念格的关联规则挖掘[J].计算机工程与设计.2007,7.13(28),3033-3036
[5] Kantardzic M.数据挖掘----概念、模型、方法与算法[M].北京:清华大学出版社,2003.