数据挖掘原理与算法
作者:毛国君 段立娟 王实 石云
出版社:清华大学出版社
出版日期:2007年12月
第一章:绪论
数据挖掘融合了数据库(Database)技术、人工智能(Artificial Intelligence)、机器学习(Machine Learning)、统计学(Statistics)、知识工程(Knowledge Engineering)、面向对象方法(Object-Oriented Method)、信息检索(Information Retrieval)、高性能计算(High-Performance Computing)、数据可视化(Data Visualization)等。
联机事务处理:On-Line Transaction Processing,OLTP;
联机分析处理:On-Line Analytic Processing,OLAP;
决策支持:Decision Support;
分类:Classification;
聚类:Clustering;
知识发现:Knowledge Discovery;
数据仓库:Data Warehouse;
数据挖掘:Data Mining;
1.1、数据挖掘技术的产生与发展
1、商业需求分析:
主要在于大型数据系统的广泛使用和把数据转换成有用知识的迫切需要;
数据挖掘的基础是数据分析方法,因此,探讨自动化的数据分析技术,为企业提供能带来商业利润的决策信息就成为了必然;
由于人们对数据拥有欲的贪婪,导致了“数据丰富而信息贫乏(Data Rich & Information Poor);
2、技术背景分析:
计算机及其相关技术的发展为其提供了研究和应用的技术基础;
包括:数据库、数据仓库、Internet;计算机性能;统计学和人工智能;
1.2、数据挖掘研究的发展趋势
分析目前的研究和应用现状,数据挖掘在如下几个方面需要重点开展工作:
(1)、数据挖掘技术与特定商业逻辑的平滑集成问题;
(2)、数据挖掘技术与特定数据存储类型的适应问题;
(3)、大型数据的选择与规格化问题;
(4)、数据挖掘系统的架构与交互式挖掘技术;
(5)、数据挖掘语言与系统的可视化问题;
(6)、数据挖掘理论与算法研究;
1.3、数据挖掘概念
1、从商业角度看,数据挖掘就是按企业的既定业务目标,对大量的企业数据进行深层次分析以揭示隐藏的、未知的规律性并将其模型化,从而支持商业决策活动;
2、数据库中的知识发现:Knowledge Discovery in Database,KDD。
数据挖掘与知识发现:Kata Mining and Knowledge Discovery,KMKD。
从关于KDD与DM的关系的一些观点来看DM的定义:
(1)KDD看成DM的一个特例;
(2)DM是KDD过程的一个步骤:
KDD是从数据中辨别有效的、新颖的、潜在有用的、最终可理解的模式的过程;
DM是KDD中通过特定的算法在可接受的计算效率限制内生成特定模式的一个步骤;
(3)KDD与DM含义相同:
3、数据挖掘研究的理论基础
(1)模式发现(Pattern Discovery)架构;
(2)规则发现(Rule Discovery)架构;
(3)基于概率与统计理论;
(4)微观经济学观点(Microeconomic View);
(5)基于数据压缩(Data Compression)理论;
(6)基于归纳数据库(Inductive Database)理论;
(7)可视化数据挖掘(Visual Data Mining);
1.4、数据挖掘技术的分类问题
根据挖掘任务可以分为:
根据挖掘对象可以分为:
根据挖掘方法可以分为:
根据数据挖掘所能发现的知识可以分为:
1.5、数据挖掘常用的知识表示模式与方法
1、广义知识挖掘
(1)概念描述(Concept Description)方法:
特征性(Characterization)描述,区别性(Discrimination)描述;
概念归纳(Concept Induction);
(2)多维数据分析可以看作是一种广义知识挖掘的有效方法:
多维数据库(Multi-dimension Database)技术;
(3)多层次概念描述问题:
概念分层(Concept Hierarchy)技术;
2、关联知识挖掘
关联知识(Association)反映一个事件和其他事件之间的依赖或关联;
关联规则挖掘(Association Rule Mining)是关联知识发现最常用的方法,最为著名的是Agrawal等提出的Apriori及其改进算法;
最小支持度(Minimum Support),它表示了一组项目关联在一起需要满足的最低联系程度;
最小可信度(Minimum Confidence),它反映了一个关联规则的最低可靠度;
关联规则的研究和应用是数据挖掘中最活跃和比较深入的分支,许多关联规则挖掘的理论和算法已经被提出;
st1\:*{behavior:url(#ieooui) }
3、类知识挖掘
(1)分类
比较有代表性的分类知识挖掘技术有:
a、决策树:通过一系列规则对数据进行分类;
b、贝叶斯分类(Bayesian Classification):
c、神经网络:
d、遗传算法与进化理论:
e、类比学习(Analogy Learning):
f、其他:非线性回归方法;粗糙集方法;模糊集方法;
(2)聚类
聚类是把一组个体按照相似性归成若干类别,他的目的是使得属于同一类别的个体之间的差别尽可能的小,而不同类别上的个体间的差别尽可能的大。
代表性方法:
a、基于划分的聚类方法:
b、基于层次的聚类方法:凝聚(Agglomeration);分裂(Division);
c、基于密度的聚类方法:
d、基于网络的聚类方法:
e、基于模型的聚类方法:
4、预测型知识挖掘
预测型知识(Prediction)是指由历史的和当前的数据产生的能够推测未来数据趋势的知识;
a、趋势预测模式;
b、周期分析模式;
c、序列模式;
d、神经网络;
5、特异型知识挖掘
特异型知识(Exception)是源数据中所蕴含的极端特例或明显区别于其他数据的知识描述,它揭示了事物偏离常规的异常规律;
a、孤立点分析:
b、序列异常分析:
c、特异规则发现:
1.6、不同数据存储形式下的数据挖掘问题
1、事物数据库中的数据挖掘:
2、关系型数据库中的数据挖掘:
3、数据仓库中的数据挖掘:
4、在关系模型基础上发展的新型数据库中的数据挖掘:面向对象数据库;对象-关系数据库;
5、面向应用的新型数据源中的数据挖掘:空间数据库;事态数据库;工程数据库;多媒体数据库;
6、Web数据源中的数据挖掘:
关键问题:异构数据源环境;半结构化的数据结构;动态变化的应用环境;
3个主要研究流派:
Web结构挖掘(Web Structure Mining):挖掘Web上的链接结构;
Web使用挖掘(Web Usage Mining):对Web上的Log日志记录的挖掘;
Web内容挖掘(Web Content Mining):基于关键词的Web内容挖掘等等;
1.7、粗糙集方法及其在数据挖掘中的应用
粗糙集理论是一种研究不精确、不确定性知识的数学工具;
1、粗糙集中的一些重要概念:
1.8、数据挖掘的应用分析
1、数据挖掘与CRM(客户关系管理)
2、数据挖掘应用的成功案例分析
a、数据挖掘在体育竞技中的应用:
b、数据挖掘在商业银行中的应用:CRM;金融投资;欺诈甄别;
c、电信行业:
d、科学探索:
e、信息安全:
第二章:知识发现过程与应用结构
2.1、知识发现的基本过程:
(1)问题定义阶段:要发现何种知识;
(2)数据抽取阶段:
(3)数据预处理阶段:当数据挖掘的对象是数据仓库时,数据预处理一般在数据仓库生成时已经完成了,但当源数据来自多数据源时,数据预处理就是一个重要的步骤了;
(4)数据挖掘阶段:选定合适的挖掘算法;
(5)知识评估阶段:对发现出来的模式进行评估,剔除无关模式;若模式不满足要求,可能要回退到前续阶段,重新执行;
2.2、数据库中的知识发现处理过程模型
几个比较有代表性的KDD模型架构:
1、阶梯处理过程模型:
源数据—(数据选择)—>目标数据—(数据预处理)—>预处理后的数据—(数据缩减)—>缩减后的数据—(数据挖掘)—>模式—(模式解释与评估)—>知识;
每个处理阶段都可以借助相应的处理工具来完成工作;
2、螺旋处理过程模型
——>定义问题——>抽取数据——>清洗数据——>数据工程——>算法工程——>运行挖掘算法——>分析结果——>(循环);
3、以用户为中心的处理模型
该模型特别注重对用户和数据库交互的支持。
4、联机KDD模型
OLAM(On Line Analytical Mining,联机分析挖掘)是对OLAP的发展;需要可视化技术的支撑;
把OLAM划分成若干抽象层次,每个抽象层次都有明确的任务;
5、支持多数据源多知识模式的KDD处理模型
2.3、知识发现软件或工具的发展
1、通用型数据挖掘工具
2、面向特定领域的数据挖掘工具
2.5、数据挖掘语言介绍
1、数据挖掘查询语言
DBMiner中的DMQL(Data Mining
Query Language);
MSQL:一种类似SQL的语言;
2、数据挖掘建模语言
PMML(Predictive Model Markup Language,预言模型标记语言):一种基于XML的语言;
3、通用数据挖掘语言
结合上述两种语言的特点;
微软提出的OLE DB
for Data Mining(DM),扩充了SQL语言语法,调用API实现数据挖掘功能,与关系型数据库自然的集成;
4、DMQL挖掘查询语言介绍
阅读(3762) | 评论(1) | 转发(0) |