数据挖掘功能及各自方法总结
数据挖掘功能的特点及主要挖掘方法
一、数据挖掘功能的特点及主要挖掘方法
数据挖掘的目标是从数据库中发现隐含的、有意义的知识,主要有以下几类功能:
(1)概念描述
概念描述又称数据总结,其目的是对数据进行浓缩,给出它的综合描述,或者将它与其它对象进行对比。通过对数据的总结,可以实现对数据的总体把握。最简单的概念描述就是利用统计学中的传统方法,计算出数据库中各个数据项的总和、均值、方差等,或者利用OLAP(0n Line Processing ,联机分析处理技术) 实现数据的多维查询和计算,或者绘制直方图、折线图等统计图形。
(2)关联分析
关联分析就是从大量数据中发现项集之间有趣的关联或相关联系。随着大量数据不停地收集和存储,许多业界人士对于从他们的数据库中挖掘关联规则越来越感兴趣。从大量商务事务记录中发现有趣的关联关系,可以帮助许多商务决策的制定。
关联分析的主要方法有Apriori 算法、AprioriTid 算法、FP-growth 算法等。
(3)分类和预测
分类和预测是两种数据分析形式,可以用于提取描述重要数据类的模型或预测数据未来的趋势。就是研究已分类资料的特征,分析对象属性,据此建立一个分类函数或分类模型,然后运用该模型计算总结出的数据特征,将其他未经分类或新的数据分派到不同的组中。计算结果通常简化为几个离散值,常用来对资料作筛选工作。分类和预测的应用十分广泛, 例如,可以建立一个分类模型,对银行的贷款客户进行分类,以降低贷款的风险;也可以通过建立分类模型,对工厂的机器运转情况进行分类,用来预测机器故障的发生。
分类的主要方法有ID3算法、C4.5算法、SLIQ 算法、SPRINT 算法、RainForest 算法、Bayes 分类算法、CBA(Classification Based on Association) 算法、MIND(Mining in Database)算法、神经网络方法、粗糙集理论方法、遗传算法等。
(4)聚类分析
当要分析的数据缺乏描述信息,或是无法组成任何分类模式时就采用聚类的方法,将异质母体区隔为较具同构性的群(Cluster) ,即将组之间的差异识别出来,并对个别组内的相似样本进行挑选,实现同组数据相近,不同组数据相异。分类功能和聚类功能是不同的,分类是根据预先定好的一些特征值对对象分组,组或类是预先确定好的,而聚类是事先不知道的条件下根据对象的一些相似特征分组。聚类也便于将观察到的内容组织成分层结构,把类似的事件组织在一起。
聚类分析的主要方法有划分方法、层次方法、基于网格的方法、统计学和神经网络方面的方法。
(5)孤立点分析
数据库中可能包含一些数据对象,它们与数据的一般行为或模式不一致。这些数据对象就是孤立点。许多数据挖掘算法试图使孤立点的影响最小化,或者排除它们。但在一些应用中孤立点本身可能是非常重要的信息。例如在欺诈探测中,孤立点可能预示着欺诈行为。
(6)时间序列分析
在时间序列分析中,数据的属性值是随着时间不断变化的。这些数据一般在相等的时间间隔内取得,但是也可以在不相等的时间间隔内取得。通过时间序列图可以将时间序列数据可视化。时间序列分析目前有三个基本功能:一是模式挖掘,即通过分析时间序列的历史形态来研究事务的行为特征;二是趋势分析,即利用历史时间序列预测数据的未来数值;三是相似性搜索,即使用距离度量来确定不同时间序列的相似性。
二、数据挖掘的综合应用
数据挖掘在网络入侵检测系统中的应用:
利用数据挖掘技术对审计数据加以分析,总结出一些正常模式,用来进行异常检测,将有助于提高入侵检测系统的检测准确性和完备性。在此实例中用到了聚类分析方法在非监督式异常检测中的应用,使用K 均值算法通过一系列的实验证实了这种算法可以在大量的混合数据中提取出正常数据,并能够利用得到聚类中心进行异常检测;此实例中还用到了关联规则挖掘与频繁情节挖掘技术。
单纯采用布尔型的关联规则挖掘算法〔Apriori) 可以挖掘出单条连接记录各
属性之间的相关性,得出的规则对于高密度的简单攻击具有较好的检测结果,但对于由多个行为构成的高级攻击,则检测效果不够理想。频繁情节算法挖掘的是连接记录之间的序列关系,相对于布尔型关联规则挖掘算法而言检测效果较好。
由此可见每种数据挖掘的方法都有其侧重点,对于现实的数据挖掘处理,不大可能使用单一的数据挖掘方法就能得到满意的结果,而要综合应用多种方法取各种方法之长补其之短,对数据进行挖掘才能得到满意的结果。