APP下载

浅谈数据挖掘与数据库知识发现

2009-09-26

新媒体研究 2009年18期
关键词:数据挖掘模式

蔡 鹏

[摘要]数据挖掘是解决数据库中数据急剧增大与利用率低之间矛质的必然结果。数据库知识发现(kdd)技术的应运而生使得人们在实际工作中消耗大量财力和物力的数据得以利用。这也是数据库知识和人工智能技术发展的结果。

[关键词]模式 数据库中的知识发现 数据挖掘

中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0920081-01

一、引言

随着数据库技术的不断发展及数据库管理系统的广泛应用,数据库中存储的数据量急剧增大。但目前数据库系统所能做到的只是对数据库中已有的数据进行存取,人们通过这些数据所获得的信息仅仅是整个数据库所包含的信息量的一部分。也就是说传统的数据分析方法(例如:统计)只能获得这些数据的表层信息,而不能获得数据属性的内在关系和隐含的信息,即不能获得重要的知识。面对“堆积如山”的数据集合,无论在时间意义上还是空间意义上,传统的数据分析手段还是难以应付。这样,快速的数据产生与搜集技术和拙劣的数据分析方法之间形成了鲜明的对照。

在数据技术飞速发展的同时,人工智能和机器学习的研究也取得了很大进展。根据人类学习的不同模式人们提出了很多机器学习方法。如:实例学习、观察和发现学习、神经网络和遗传算法等等,其中某些成熟的算法已被人们运用于应用系统及智能机的设计和实现中。

正是由于数据库技术和人工智能技术的发展,也是为了满足人们实际工作的需要:“智能地”和“自动地”分析数据,以使消耗大量财力和物力所收集与整理的宝贵资源——数据得以利用,数据库知识发现(KDD)技术应运而生。

二、KDD与Data Minning

1996年KDD国际会议上KDD下了最新的定义:KDD是识别出存在于数据库中有效的(valid)、新颖的(novel)、具有潜在效用的(potentially useful)乃至最终可理解的(ultimatly understandable)模式的非平凡过程。

数据:是指一个有关事实F的集合,它是用来描述事物有关方面的信息的。

模式:对于集合F的数据,用语言L来描述其中的数据的特性。从实际应用角度来讲,这里所说的模式提取意味着寻求数据的模型和结构,或产生数据集的高层描述。

处理过程:KDD是一个多步骤的处理过程,包括数据预处理、模式提取、知识评估及过程优化。我们说这个过程是非平凡的,主要是指这个过程中加入了启发参考信息,也就是说它并不是我们平常所说的数据集合上的计算,不是在预先定量基础上的一个直接计算。

可信:通过KDD从当前数据所发现的模式必须有一定的正确程度,否则KDD就毫无作用。可以通过新增数据来检验模式的正确性。

新颖:经过KDD提取出的模式必须是新颖的,至少对系统来说应该如此。模式是否新颖可以通过两个途径来衡量:其一是得到的数据,通过当前获得数据和以前的数据或期望得到的数据之间比较,来判断该模式的新颖程度;其二是通过其内部所包含的知识,通过对比发现的模式与已有模式的关系来判断。

潜在作用:提取出的模式应该是有意义的,例如,它可以给用户或工程带来好处。

可被人理解:KDD的一个目标就是将数据库中隐含的棋式以容易被理解的形式表现出来。为此,可以辅以后期处理:如解释过程。

KDD是一个多步骤的处理过程,在处理过程中可能会有很多次的反复。主要包括以下一些步骤:

1.准备。了解KDD相关领域的有关情况,熟悉背景知识,并弄清楚用户的要求。

2.数据选择。根据用户的要求从数据库中提取与KDD相关的数据,KDD将主要从这些数据中进行知识提取,在此过程中,会利用一些数据库操作对数据进行处理。

3.数据预处理。主要是对阶段2产生的数据进行再加工,检查数据的完整性及数据的一致性,对其中的噪音数据进行处理,对丢失的数据可以利用统计方法进行填补。

4.数据缩减。对经过预处理的数据,根据知识发现的任务对数据进行再处理,主要通过投影或数据库中的其他操作减少数据量。

5.确定KDD的目标。根据用户的要求,确定KDD是发现何种类型的知识,因为对KDD的不同要求,会在具体的知识发现过程中采用不同的知识发现算法。

6.确定知识发现算法。根据阶段分析所确定的任务,选择合适的知识发现算法,这包括选取合适的模型和参数,并使得知识发现算法与整个KDD的评判标准相一致。

7.数据挖掘(DM)。运用选定的知识发现算法,从数据中提取用户所需要的知识,这些知识可以用一种特定的方式表示或使用一些常用的表示方法,如产生规则等。

8.模式解释。对发现的模式进行解释。在此过程中,为了取得更为有效的知识,可能会返回前面处理步骤中的某些步以反复提取,从而获得更有效的知识。

9.知识评价。将发现的知识以用户能了解的方式呈现给用户。这期间也包含对知识的一致性的检查,以确信本次发现的知识不与前发现的知识相抵触。

从上面可以看出,数据挖掘只是KDD中的一个步骤,它主要是利用数据分析和某些特定的知识发现算法,在一定的运算效率的限制内,从数据中发现,生成模式。数据挖掘是KDD中最重要的一步。

一个数据挖掘算法通常由以下三个元素组成:

模型:包括模型助理功能(例如,分类或聚类等)和基函数(例如,线性函数或高斯概率分布函数)等。从数据中确定参数以后就形成模型。

优先准则:由于数据的不精确性将导致模型的多样性与不完全性,因此需要具有确定模型或参数优先机制,它一般是表示某种形式的模型对问题的符合度函数。

搜索算法:包括对模型、参数或优先准则的各种搜索算法。

三、DataMining技术

知识发现的目的决定于系统的目标,它可以分成两类:证实(verifi

cation)和发现(discovery)。前者是指系统局限于确认用户的假设;后者是指系统自动地寻求新的模式。基于发现目的的不同又可以分成预测和描述两类。预测是指寻求模式的目的是为了预测某些实体的将来行为;描述是指系统寻求模式的目的是为了用户理解。

不管目的如何,它们均可以借助于数据库搜索、生成、知识表示、数学或统计学模型等等来实现。但是,由于数据挖掘提出了很多具有挑战性的课题,直接运用相关学科(如:机器学习、统计学和数据库系统等)的方法和技术不能很多地解决这些难题。所以进行专向研究,以发明新的数据挖掘方法或形成集成技术,用以更加高效、更有效的数据挖掘成为必然。在这个意义上,数据挖掘已形成了一个自身独立的新领域。

总的来说,数据挖掘是面向应用的,不同的应用需要不同的挖掘技术去实现。数据挖掘中运用的技术可以分成以下几类:

1.挖掘关联规则:发现数据对象间的相互依赖关系。

2.数据概括和总结:从相关的一组数据中提取出这些数据的特征式,表达数据集总体特征。

3.数据分类:根据数据的不同特性,将其划归为不同的类,这些类是事先利用训练数据建立起来的。

4.数据聚类:根据所处理的数据的一些属性,对这些数据进行分类,这种分类是基于当前所处理的数据。

5.模式搜索:可以利用遗传算法等。

目前Data Mining和KDD的研究已引起各种研究机构和公司的关注。其研究和应用方面还存在许多问题尚待解决,还面临着许多挑战。随着技术的发展和理论研究的深入,相信在不久的将来,会有新的多种理论与方法合理结合出现,那时KDD会更好地服务于人们。

猜你喜欢

数据挖掘模式
数据挖掘技术在内河航道维护管理中的应用研究
数据挖掘综述
软件工程领域中的异常数据挖掘算法
高端饭店业产学研模式研究
永续债券探析
思想政治理论课实践教学研究述评
中学数学创造性教学的模式与策略研究
基于R的医学大数据挖掘系统研究
一本面向中高级读者的数据挖掘好书