数据挖掘
- 绪论
四种主要技术激发了人们对数据挖掘研究的兴趣:
超大规模数据库的出现,先进的计算机技术、对海量数据的快速访问、统计方法在数据处理领域应用的不断深入
数据挖掘定义:
技术层面:数据挖掘就是从大量数据中,提取潜在有用的信息和知识的过程。
商业层面:数据挖掘就是一种商业信息处理技术,其主要特点是对大量业务数据进行抽取、转换、分析和建模处理,从中提取辅助商业决策的关键性数据。
数据挖掘与传统数据分析方法:
本质区别:数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。
数据挖掘所得到的信息应具有先前未知、有效和实用三个特征。其主要目标就是提高决策能力,能在过去的经验基础上预言未来趋势等。
数据挖掘对象:
(1) 关系数据库
(2) 数据仓库
(3)事务数据库
(4)空间数据库(Spatial Database)
(5)时态数据库和时间序列数据库
(6)流数据
(7) 多媒体数据库
(8) 文本数据(Text Database )
(9) 万维网数据(Word Wide Web Data)
数据挖掘任务:
预测任务:根据其它属性的值预测特定属性的值,如分类、回归、离群点检测。
描述任务:寻找概括数据中潜在联系的模式,如聚类分析、关联分析、演化分析、序列模式挖掘 。
(1) 分类(Classification)分析
分类分析,通过分析示例数据库中的数据为每个类别做出准确的描述或建立分析模型或挖掘出分类规则,然后用此分类规则对其它数据库中的记录进行分类。
分类分析广泛应用于用户行为分析(受众分析)、风险分析、生物科学等
2) 聚类(Clustering)分析
“物以类聚,人以群分”。聚类分析技术试图找出数据集中的共性和差异,并将具有共性的对象聚合在相应的类中。聚类可以帮助决定哪些组合更有意义,广泛应用于客户细分、定向营销、信息检索等等。
聚类与分类的主要区别
聚类与分类是容易混淆的两个概念,聚类是一种无指导的观察式学习,没有预先定义的类。而分类问题是有指导的示例式学习,预先定义有类。分类是训练样本包含有分类属性值,而聚类则是在训练样本中找到这些分类属性值。
(3) 回归(Regression )分析
回归分析是确定两种或两种以上变数间相互依赖的定量关系的一种分析方法。其可应用于风险分析、作文自动评分等领域。
(4) 关联(Association)分析
关联分析,发现特征之间的相互依赖关系,通常是从给定的数据集中发现频繁出现的模式知识(又称为关联规则)。关联分析广泛用于市场营销、事务分析等领域。
(5) 离群点(Outlier)检测
离群点检测就是发现与众不同的数据。 可应用于商业欺诈行为的自动检测,网络入侵检测,金融欺诈检测,反洗钱,犯罪嫌疑人调查,海关、税务稽查等。
(6) 演化(Evolving)分析
演化分析就是对随时间变化的数据对象的变化规律和趋势进行建模描述。如商品销售的周期(季节)性分析
(7) 序列模式(Sequential Pattern)挖掘
序列模式挖掘是指分析数据间的前后序列关系,包括相似模式发现、周期模式发现等。其应用领域包括客户购买行为模式预测、Web访问模式预测、疾病诊断、网络入侵检测等。
数据挖掘过程:
知识发现(Knowledge Discovery in Database,KDD)是从数据中发现有用知识的整个过程,这个过程定义为:从数据中鉴别出有效模式的非平凡过程,该模式是新的、可能有用的和最终可理解的。
知识发现的主要步骤:
数据清洗(data clearning)。其作用是清除数据噪声和与挖掘主题明显无关的数据。
数据集成(data integration)。其作用是将来自多数据源中的相关数据组合到一起。
数据转换(data transformation)。其作用是将数据转换为易于进行数据挖掘的数据存储形式。
数据挖掘(data mining)。其作用是利用智能方法挖掘数据模式或规律知识。
模式评估(pattern evaluation)。其作用是根据一定评估标准从挖掘结果筛选出有意义的相关知识。
知识表示(knowledge presentation)。其作用是利用可视化和知识表达技术,向用户展示所挖掘的相关知识。
从商业的角度看,数据挖掘过程可分为三个阶段
数据收集:数据收集容易且不引人注意,但却是数据挖掘的基础。知识是从海量数据里提取出来的,因此要挖掘知识必须得收集一定量的数据。收集到的原始数据一般存在缺失值、错误值等问题,不能直接用作知识提取的数据源,需要进行数据预处理。
知识提取:基于经过预处理的数据,使用各种数据挖掘方法(如分类、聚类、关联分析等)进行知识提取,这是数据挖掘的核心部分。
知识辅助决策:数据挖掘技术已被广泛地应用于各领域,其提取出来的知识可以很好地辅助决策者做出良好的决策
数据挖掘软件:
比较著名的商用数据挖掘软件有IBM SPSS Modeler、SAS Enterprise Miner 、Orange、Rattle、Oracle Data Mining、KNIME等,它们都能够提供常规的挖掘过程和挖掘模式 。
Matlab、Python、Excel (Data mining in Excel: XLMiner)等提供了数据挖掘模块。
开源数据挖掘工具有Weka、RapidMiner(YALE)、 Apache Mahout、ARMiner以及AlphaMiner等。
数据挖掘应用:
金融保险业(Credit Scoring;Insurance Evaluation)
电信(Detecting telephone fraud)
市场营销分析(Marketing Analysis)
医学( Detecting inappropriate medical treatment)
体育(IBM Advanced Scout analyzed NBA game statistics)
生物信息学(Bioinformatics)等
这里主要介绍在商业领域和计算机领域的应用。
商业智能的核心即数据挖掘,能解决的典型商业问题包括:
数据库营销(Database Marketing)
客户群体划分(Customer Segmentation & Classification)
客户背景分析(Profile Analysis)
交叉销售(Cross-selling)
客户流失性分析(Churn Analysis)
客户信用记分(Credit Scoring)
欺诈检测(Fraud Detection)
数据挖掘在商业领域中的主要应用
(1) 电子商务
(2) 公司分析和风险管理
(3) 市场分析和管理
(4) 企业危机管理
(5) 欺诈行为检测和异常模式的发现
数据挖掘在计算机领域中的应用:
(1) 信息安全:入侵检测,垃圾邮件的过滤
(2) 互联网信息挖掘
(3) 自动问答系统
(4)网络游戏:网络游戏外挂检测、免费用户到付费用户的转化
第二章 数据处理基础
数据类型
相关概念
数据:
狭义:数字 。
广义:数据对象及其属性的集合,其表现形式可以是数字、符号、文字、图像抑或是计算机代码等等。
属性:(也称为特征、维或字段),是指一个对象的某方面性质或特性。一个对象通过若干属性来刻画。
数据集:数据对象的集合(同分布、同特征)
据集的特性:
维度(Dimensionality):指数据集中的对象具有的属性个数总和;维归约。
稀疏性(Sparsity):指在某些数据集中,有意义的数据非常少,对象在大部分属性上的取值为0;非零项不到1%。
文本数据集
分辨率(Resolution):不同分辨率下数据的性质不同