数据挖掘的一些总结

深入浅出谈数据挖掘

段 勇

编者的话:本文对数据挖掘概念的产生,数据挖掘与常规数据分析的主要区别,所能解决的几大类问题和所应用的领域都有着非常清晰的论述。作者在此篇文章中认为数据挖掘最重要的要素是分析人员的相关业务知识和思维模式。丰富的业务知识是设计有效的相关变量的必要条件,而分析人员的思维模式从另外一个方面也保障了设计变量的结构化和完整性。所以我们在掌握丰富的业务知识同时,如果能够按照正确的思维模式去思考问题,将会发现解决问题并不是很困难的。

一、 数据挖掘的本质

一般来说,比较狭义的观点认为数据挖掘区别于常规数据分析的关键点在于:数据挖掘主要侧重解决四类问题:分类、聚类、关联、预测(关于这四类问题后文会详细阐述),而常规数据分析则侧重于解决除此之外的其他数据分析问题:如描述性统计、交叉报表、假设检验等。

让我们来看一个例子:某移动运营商想了解目前彩铃业务的发展现状如何?解决这个问题的方法就是常规的数据分析,通过描述性统计和交叉报表,可以知道目前彩铃业务的用户数、普及率、收入情况?不同品牌用户间的情况和差异?不同消费水平用户间的情况和差异……。这样的分析主要解决了企业过去发生了什么以及存在什么问题;如果该运营商希望建立一个模型(或者规则),从没有使用彩铃的用户群中找出一部分用户作为彩铃营销活动的目标用户,如通过短信或者外呼的方式告知用户可以免费试用彩铃一个月。解决这个问题则需要使用数据挖掘的方法,如通

过决策树方法可以找出使用彩铃业务可能性较高的用户的一系列特征规则,然后根据这些规则去筛选目标用户。当然数据挖掘也并不是解决这个问题唯一办法,因为在没有数据挖据这个概念之前(19xx年以前),这样的问题在商业中也是普遍存在的。通过常规的数据分析依然能解决这个问题,例如研究不同品牌、不同消费水平、不同年龄、不同……的用户使用彩铃的情况,也可以总结出一套比较实用的规则来作为筛选彩铃目标用户的规则。当然,这样的方法跟数据挖掘方法相比存在一定的不足,由于篇幅的限制,这个问题留给大家去思考。

个人的观点:数据挖掘很大程度上来说更像是一个框架概念。它所使用的各种方法在这个概念形成之前已经普遍存在,例如统计学中的多元回归、Logistic回归,人工智能中的神经网络等。在上个世纪90年代,由于数据库的高速发展,企业对精确化营销的迫切需求,导致了数据挖掘这个概念和新名词的诞生。当然我们也不能简单的认为数据挖掘就是一个“新瓶装老酒”,毕竟,数据挖掘根据所解决的不同类型的问题,把包含统计学在内的各种方法进行了整合和重新设计,形成了一套新的数据分析方法论和框架,在这个框架内,源源不断的很多人投入进来,这其中主要包含两类人:一类人是在更新设计新的算法;一类人是在不断的探索既有的方法在商业中的各种应用。

二、 数据挖掘主要解决的四类问题

数据挖掘非常清晰的界定了它所能解决的几类问题。这是一个高度的归纳,数据挖掘的应用就是把这几类问题演绎的一个过程。下面让我们来看看它所解决的四类问题是如何界定的:

? 分类问题

分类问题属于预测性的问题,但是它跟普通预测问题的区别在于其预测的结果是类别(如A、B、C三类)而不是一个具体的数值(如55、65、75……)。

举个例子,你和朋友在路上走着,迎面走来一个人,你对朋友说:我猜这个人是个上海人,那么这个问题就属于分类问题;如果你对朋友说:我猜这个人的年龄在30岁左右,那么这个问题就属于后面要说到的预测问题。

商业案例中,分类问题可谓是最多的:给你一个客户的相关信息,预测一下他未来一段时间是否会离网?信用度是好/一般/差?是否会使用你的某个产品?将来会成为你的高/中/低价值的客户?是否会响应你的某个促销活动?……。

有一种很特殊的分类问题,那就是“二分”问题,显而易见,“二分”问题意味着预测的分类结果只有两个类:如是/否;好/坏;高/低……。这类问题也称为0/1问题。之所以说它很特殊,主要是因为解决这类问题时,我们只需关注预测属于其中一类的概率即可,因为两个类的概率可以互相推导。如预测X=1的概率为P(X=1),那么X=0的概率P(X=0)=1-P(X=1)。这一点是非常重要的。

可能很多人已经在关心数据挖掘方法是怎么预测P(X=1)这个问题的了,其实并不难。解决这类问题的一个大前提就是通过历史数据的收集,已经明确知道了某些用户的分类结果,如已经收集到了10000个用户的分类结果,其中7000个是属于“1”这类;3000个属于“0”这类。伴随着收集到分类结果的同时,还收集了这10000个用户的若干特征(指标、变量)。这样的数据集一般在数据挖掘中被称为训练集,顾名思义,分类预测的规则就是通过这个数据集训练出来的。训练的大概思路是这样的:对所有已经收集到的特征/变量分别进行分析,寻找与目标0/1变量

相关的特征/变量,然后归纳出P(X=1)与筛选出来的相关特征/变量之间的关系(不同方法归纳出来的关系的表达方式是各不相同的,如回归的方法是通过函数关系式,决策树方法是通过规则集)。

如需了解细节,请查阅:决策树、Logistic回归、判别分析、神经网络、Inpurity 、Entropy、Chi-square、Gini、Odds、Odds Ratio……等相关知识。

? 聚类问题

聚类问题不属于预测性的问题,它主要解决的是把一群对象划分成若干个组的问题。划分的依据是聚类问题的核心。所谓“物以类聚,人以群分”,故得名聚类。 聚类问题容易与分类问题混淆,主要是语言表达的原因,因为我们常说这样的话:“根据客户的消费行为,我们把客户分成三个类,第一个类的主要特征是……”,实际上这是一个聚类问题,但是在表达上容易让我们误解为这是个分类问题。分类问题与聚类问题是有本质区别的:分类问题是预测一个未知类别的用户属于哪个类别(相当于做单选题),而聚类问题是根据选定的指标,对一群用户进行划分(相当于做开放式的论述题),它不属于预测问题。

聚类问题在商业案例中也是一个非常常见的,例如需要选择若干个指标(如价值、成本、使用的产品等)对已有的用户群进行划分:特征相似的用户聚为一类,特征不同的用户分属于不同的类。

聚类的方法层出不穷,基于用户间彼此距离的长短来对用户进行聚类划分的方法依然是当前最流行的方法。大致的思路是这样的:首先确定选择哪些指标对用户进行聚类;然后在选择的指标上计算用户彼此间的距离,距离的计算公式很多,最常用的就是直线距离(把选择的指标当作维度、用户在每个指标下都有相应的取值,可

以看作多维空间中的一个点,用户彼此间的距离就可理解为两者之间的直线距离。);最后聚类方法把彼此距离比较短的用户聚为一类,类与类之间的距离相对比较长。 如需了解细节,请查阅:聚类分析、系统聚类、K-means聚类、欧氏距离、闵氏距离、马氏距离等知识。

? 关联问题

说起关联问题,可能要从“啤酒和尿布”说起了。有人说啤酒和尿布是沃尔玛超市的一个经典案例,也有人说,是为了宣传数据挖掘/数据仓库而编造出来的虚构的“托”。不管如何,“啤酒和尿布”给了我们一个启示:世界上的万事万物都有着千丝万缕的联系,我们要善于发现这种关联。

关联分析要解决的主要问题是:一群用户购买了很多产品之后,哪些产品同时购买的几率比较高?买了A产品的同时买哪个产品的几率比较高?可能是由于最初关联分析主要是在超市应用比较广泛,所以又叫“购物篮分析”,英文简称为MBA,当然此MBA非彼MBA,意为Market Basket Analysis。

如果在研究的问题中,一个用户购买的所有产品假定是同时一次性购买的,分析的重点就是所有用户购买的产品之间关联性;如果假定一个用户购买的产品的时间是不同的,而且分析时需要突出时间先后上的关联,如先买了什么,然后后买什么?那么这类问题称之为序列问题,它是关联问题的一种特殊情况。从某种意义上来说,序列问题也可以按照关联问题来操作。

关联分析有三个非常重要的概念,那就是“三度”:支持度、可信度、提升度。假设有10000个人购买了产品,其中购买A产品的人是1000个,购买B产品的人是2000个,AB同时购买的人是800个。支持度指的是关联的产品(假定A产品和B产品关联)

同时购买的人数占总人数的比例,即800/10000=8%,有8%的用户同时购买了A和B两个产品;可信度指的是在购买了一个产品之后购买另外一个产品的可能性,例如购买了A产品之后购买B产品的可信度=800/1000=80%,即80%的用户在购买了A产品之后会购买B产品;提升度就是在购买A产品这个条件下购买B产品的可能性与没有这个条件下购买B产品的可能性之比,没有任何条件下购买B产品可能性=2000/10000=20%,那么提升度=80%/20%=4。

如需了解细节,请查阅:关联规则、apriror算法中等相关知识。

? 预测问题

此处说的预测问题指的是狭义的预测,并不包含前面阐述的分类问题,因为分类问题也属于预测。一般来说我们谈预测问题主要指预测变量的取值为连续数值型的情况。

例如天气预报预测明天的气温、国家预测下一年度的GDP增长率、电信运营商预测下一年的收入、用户数等?

预测问题的解决更多的是采用统计学的技术,例如回归分析和时间序列分析。回归分析是一种非常古典而且影响深远的统计方法,最早是由达尔文的表弟高尔顿在研究生物统计中提出来的方法,它的主要目的是研究目标变量与影响它的若干相关变量之间的关系,通过拟和类似Y=aX1+bX2+……的关系式来揭示变量之间的关系。通过这个关系式,在给定一组X1、X2……的取值之后就可以预测未知的Y值。 相对来说,用于预测问题的回归分析在商业中的应用要远远少于在医学、心理学、自然科学中的应用。最主要的原因是后者是更偏向于自然科学的理论研究,需要有理论支持的实证分析,而在商业统计分析中,更多的使用描述性统计和报表去揭示

过去发生了什么,或者是应用性更强的分类、聚类问题。

如需了解细节,请查阅:一元线性回归分析、多元线性回归分析、最小二乘法等相关知识。

三、 数据挖掘的应用领域

数据挖掘一开始就是面向应用而诞生的,前面说到数据挖掘主要解决四大类的问题,如果把这些问题演绎到不同的行业,我们将看到数据挖掘的应用是非常广泛的。 以我们经常接触的移动通信行业来说,结合前面提到的四大类问题,我们看看数据挖掘在通信行业都有哪些应用。

分类问题:

? 离网预测:预测用户在未来一段时间内离网的风险。

? 信用申请评分:根据用户资料评估用户是否可以授信(如预付费用户可以透支、后付费用户可以延长帐期)。

? 信用行为评分:根据用户过去的消费行为特征评估信用得分高低,便于调整话费透支额度或者付费帐期。

? 定位产品(如彩铃、WAP、增值数据业务等)目标用户:构建模型筛选产品营销的目标用户群。

聚类问题:

? 用户细分:选择若干指标把用户群聚为若干个组,组内特征相似、组间特征差异明显。当然用户细分的方法很多,不一定都是采用聚类方法。聚类的优点是可以综合处理多维变量,缺点是随之带来的不易解释性。一种便于解释的细分方法是结

合业务对用户群进行人为的划分,习惯上称为Pre-Define的方法。这种方法的优点是便于解释且应用性强,缺点是对业务要求比较高,划分边界比较难定,对多维变量处理有难度。

关联问题:

? 交叉销售:针对用户已经使用的产品和业务,向其推荐他没有使用的,但可能有兴趣的产品。交叉销售的问题从某种角度上来也可以理解为分类问题,与定位产品目标用户这个问题比较相似。

预测问题:

比较成型的应用不多,一般多为用户数预测、收入预测等。

四、 什么是数据挖掘最重要的要素?

回到文章一开始举的那个案例来说,如果某运营商需要建立一个模型来筛选一部分目前还没有用彩铃的用户作为推广彩铃业务的目标用户,那么这样一个任务要取得成功的关键要素是什么呢?是分析人员的思维模式、分析采用的方法、相关业务知识还是分析采用的工具?

从技术的角度来看这个问题,能不能得出精准的答案主要取决于是否寻找到与目标(是否使用彩铃)相关的变量。而影响变量选择的关键并不是选择了不同分析方法,而是是否提供了足够和有效的变量的去供分析方法选择。也就是说不同的分析方法选择相关变量的能力是相差不大的,关键是是否提供了足够的变量供选择。

变量的提供取决于变量的收集和设计,影响它最关键的两个因素是:相关业务知识和分析人员的思维模式。丰富的业务知识是设计有效的相关变量的必要条件。分析

人员的思维模式从另外一个方面保障了设计变量的结构化和完整性。麦肯锡公司一个重要的思维模式就是MECE,即不重叠、不遗漏。这是一个非常要命的观点,如果都能按照这个模式去思考问题,你会发现解决问题原来也并不是那么困难。 分析人员的业务知识和思维模式不仅仅简单的影响着变量的设计,还包括整个数据挖掘任务的方案框架设计以及后续的结果应用,在这里以终为始的思维模式又显得尤为重要。

纵观其他要素,分析方法对结果的影响主要体现在结果的解释性和稳定性上:例如在信用评分应用中,Logistic回归的结果就更便于解释和应用;而决策树方法对极值、非线性关系的处理就比其他方法更稳健。

此外,分析工具对结果的影响较小,但是在功能、操作的便利性和效率方面差别也是相当大的。SAS软件相比SPSS、SPLUS等软件来说在效率和功能方面有较大的优势。

 

第二篇:数据挖掘总结

1.【p26 1.3】

假设你是BigUniversity的软件工程师,任务是设计一个数据挖掘系统,分析学校课程数据库。该数据库包括如下信息:每个学生的姓名、地址和状态(例如本科生或研究生)所修课程以及他们的GPA(平均积分点)。描述你要选取的结构。该结构的每个成分的作用是什么。 答:该数据挖掘结构应该包括以下几个主要成分:

(1)一个数据库、数据仓库或其它信息库,它由一系列包含学生和课程信息的数据库、数据仓库、电子表格、或其它信息库组成。

(2)一个数据库或数据仓库服务器,它根据用户的数据挖掘请求获取相关的数据。

(3)一个知识库,它包含领域知识,用于指导搜索或评估结果模式的兴趣度。例如,知识库可能包含概念层次结构和元数据(例如,描述来自多个异构数据源的数据)。

(4)一个数据挖掘引擎,它由一系列负责分类、关联、聚类分析、演变和偏差分析的功能模块组成。

(5)一个模式评估模块,它与数据挖掘模块串联工作,采用兴趣度的方法,将搜索重心投注在兴趣模式上。

(6)一个图形用户界面,它为用户提供对数据挖掘系统的交互式途径。

2.【p63 2.4】

中列数是最大值和最小值的平均数。

五数概括就是中位数、四分位数Q1和Q3、最小值和最大值

箱线图(盒图)在p35

分位数图是一种观察单变量数据分布的简单有效方法,他显示给定属性的所有数据(允许用户评估总的情况和不寻常的出现)。其次它绘出了分位数信息

3.【p63 2.5】

问:以计数、标准差和中位数为例说明分布的或代数的度量有利于有效的增量计算,而整体度量不行。

答:计数:当前的计数count可以作为一个值来保存,当有x个新值加进来时,可以很容易地更新count值为(count+x)。这就是分布式度量,可以很容易地进行增量计算。

标准差:如果我们之前存储了已有数据平方的和sum和它们的计数count,就可以很容易地利用公式得到新的标准差,只需要计算新加入数据平方的和并将其加入sum中,同时更新count值,随后将它们插入计算中就可获得新的标准差。这些都不用重新扫描整个数据集而可以轻松得到。这就是代数度量,可以容易进行增量计算。

中位数:要准确得到中位数必须扫描整个数据集。当加入了新的数据后必须重新进行排序,然后在新的排序后的数据集中查找中位数。这是比较困难的,这就是整体度量,没办法对增量进行有效的计算。

4.【p63 2.6】数据缺省值处理

(1)忽略元组。当缺少类标号时通常这样做(假定挖掘任务涉及分类)。除非元组有多个属性缺少值,否则该方法不是很有效。当每个属性缺少值的百分比变化很大时,它的性能特别差。

(2)人工填写缺失值。一般该方法很费时,并且当数据集很大,缺少很多值时,该方法可能行不通。

(3)使用一个全局常量填充缺失值。将缺失的属性值用同一个常数(如“Unknown”)替换如果缺失值都用“Unknown”替换,则挖掘程序可能误以为它们形成了一个有趣的概念,因为它们都具有相同的值“Unknown”。因此,尽管该方法简单,但是它并不是十分可靠。

(4)使用属性的均值填充缺失值。

(5)使用与给定元组属同一类的所有样本的属性均值。

(6)使用最可能的值填充缺失值。可以用回归、使用贝叶斯形式化的基于推理的工具或决策树归纳确定。

5.【p63 2.7】

(1)问:使用分箱均值光滑对数据进行光滑的步骤(深度为3)

答:①对数据进行排序;②将数据划分到大小为3的等频箱中;③计算每个箱的均值;④箱中的值都被箱的均值替换。

(2)问:如何确定数据中的离群点

答:可以通过聚类来检测离群点,将类似的值组织成群或簇。直观地,落在簇集合之外的值视为离群点。电脑和人的检查可以结合来判断,先由电脑根据已有的数据分布状况得出可能的离散点,然后再由人来对这些可能的离散点进行进一步的分析来确定离散点,这样大大地减少了人单独工作的工作量。

(3)问:对于数据光滑还有哪些方法

答:类似的还有分箱中位数光滑,此时箱中的每一个值都被箱中位数替换。分箱边界光滑,箱中的最大和最小值同样被视为箱边界,箱中的每个值都被最近的边界值替换。一般来说,宽度越大光滑效果越大。箱可以是等宽的,每个箱值的区间范围是个常量。

此外可以用一个函数(如回归函数)拟合数据来光滑数据。线性回归涉及找出拟合两个属性的最佳线,使得一个属性可以用来预测另一个。多元线性回归是线性回归的扩展,其中涉及的属性多于两个,并且数据拟合到一个多维曲面。

概念分层也可以用于数据光滑。

6.【p63 2.8】

问:数据集成需要考虑的问题

答:①实体识别问题。模式集成和对象匹配需要技巧,来自多个信息源的现实世界的等价实体必须能够匹配。②数据冗余。一个属性可能是冗余的,如果它能由另一个或另一组属性“导出”。属性或命名的不一致也可能导致结果数据集中的冗余。③数据值冲突的检测与处理。对于现实世界的同一实体,来自不同数据源的属性值可能不同,这可能是因为表示、比例或编码不同。

7.【p63 2.9】

(1)方差公式

数据挖掘总结

(2)散布图:将每个值当做坐标对画点

qq图:将数据都按递增序排序,然后画点

(3)z-score规范化(零均值规范化)属性 (数值减去均值除以标准差)

数据挖掘总结

(4)答案是0.82,非常相关。

卡方检验公式

数据挖掘总结

其中oij是实际计数,eij是期望频度。

数据挖掘总结

8.【p63 2.12】

(1)最小最大规范化

数据挖掘总结

(2)小数定标规范化,移动小数点位置进行规范,移动位数取决于最大绝对值。

(3)更愿用哪种规范方法?。

小数定标。∵保持了数据的结构并且是直观表达并仍然可以在age的组内进行挖掘。最大最小有一个多余的功能就是禁止了任何未来值落在现在的最小最大值之外,没有考虑到“越界错误”,而未来的数据里可能出现。Z-score用标准差表示数据到平均值的距离,不像小数定标那样直观。

9.【p97 3.2】

(1)雪花型模式、事实星座形、星形网查询模型

雪花型模式和事实星座形都是星形模式的变种。雪花型模式的维表可能是规范化形式,以便减少冗余;事实星座形模式允许事实表共享维表。星形网查询模型由中心点发出的射线组成,其中每条射线代表一个维的概念分层,而概念分层的每个抽象级称为一个脚印,代表诸如上卷、下钻等OLAP操作可用的粒度。

(2)数据清理、数据变换、刷新

数据清理:检测数据中的错误,可能时订正它们。

数据变换:将数据由遗产或宿主格式转换成数据仓库格式。

刷 新:传播由数据源到数据仓库的更新。

(3)企业数据仓库、数据集市、虚拟仓库

①企业数据仓库收集了整个组织关于主题的所有信息,它提供企业范围内的数据集成,通常来自一个或多个操作数据库系统或外部信息提供者,并且是跨功能的。通常,它包含细节数据和汇总数据,其大小有数千兆字节到数百千兆字节到更多。它可以在传统的大型机、超级计算机服务器或并行结构平台上实现。它需要广泛的商务建模,可能需要多年设计和建设。 ②数据集市包含企业范围数据的一个子集,对于特定的用户群是有用的。其范围限于选定的主题。包括在数据集市的数据通常是汇总的。它可以再低价格的部门服务器上实现,基于UNIX/LINUX或Windows。它的实现周期一般是一周计,而不是以月计或以年计。然而如果它的设计或规划不是企业范围的从长远讲可能涉及很复杂的集成。独立数据集市数据来自一个或多个操作系统或外部信息提供者,或者在特定的部门或地域局部产生的数据;依赖的数据集市的数据直接来自企业数据仓库。

③虚拟仓库是操作数据库视图的集合。为了有效地处理查询,只有一些可能的汇总视图可以物化。虚拟仓库易于建立,但需要操作数据库服务器具有剩余能力。

10.【p98 3.4】

(1)雪花型模式图

数据挖掘总结

(2)求每个学生CS课程的平均成绩,OLAP操作

①在course维表中由course_id上卷到department

②在student维表中由student_id上卷到university

③按如下选择对中心立方体切块:(department=“CS”) and (university = “Big University”)

(3)如果每维有5层,则立方体包含54=625个方体

11.【p98 3.5】

(1)观看节目的星形模式图

数据挖掘总结

(2)列出20xx年学生观众GM-Place的总付费,需要采用哪些OLAP。

在date上由date_id上卷到year;在game上由game_id上卷到all;在location上由location_id上卷到location_name;在spectator上由spectator_id上卷到status;按以下选择进行切块:(status=“student”)and(location=“GM_Place”)and(year=2004)

(3)位图索引结构的优点和问题。

对于基数较小的域,位数索引非常有用,因为比较、连接和聚集操作都变成了位算术运算,大大减少了处理时间。由于字符串可以用单个二进位表示,位图索引显著降低了空间和I/O

开销。对于基数较高的域,需要使用压缩技术才可以使用这个技术,就像例子中的date,这个位向量是非常长的,十年收集的数据就会得到3650条日期记录,也就意味着date位向量有3650个二进位。

12.【p98 3.6】

简略讨论星形模式和雪花型模式的相似点和不同点,分析相对优缺点。哪种模式更实用,给出观点并陈述理由。

答:相似点:他们都有一个事实表和多个维表。

主要区别:雪花型模式有些维表是规范的,把数据进一步分解到附加的表中。

星形模式的优点是非常简易,使得操作有效率。但它需要更多的空间。

雪花型模式易于维护并节省存储空间。但是与巨大的事实表相比,这种空间的节省可以忽略,由于执行查询需要更多的连接操作,它可能降低浏览的性能。

因此星形模式更实用,因为只要需占用的空间不是特别大,效率是要比空间优先考虑的。在一些工厂里,有时会将雪花型模式中的数据转换成星形模式来加速处理过程。

13.【p97 3.9】

(1)列出度量的三种类型

度量可以根据所用的聚集函数类型分成三类,即分布的、代数的和整体的

(2)方差属于哪一类,如果数据分成了块,描述怎么计算

答:方差属于代数的。如果立方体被分割成了一些块,方差可以照以下步骤求得:首先挨个读出每个块中的数据,同时累加元组求得xi2的和xi的和。当读完所有块的数据后,计算xi的均值,之后按提示中给出的公式进行求解即可得到方差。

(3)函数是最高的10个销售额,如何有效地计算该度量。

对于每个方体,用10个单位来存储目前最高的10个销售额。读取每个方体中的数据,如果某个元组中的销售额比存储的最高的10个销售额中的一个高,就将该销售额加入到最高的10个销售额列表中,同时剔除原列表中最小的那个数据。通过该操作的不断循环执行,最终可以得到最高的10个销售额。

14.【p97 3.14】

三种主要的数据仓库应用:信息处理、分析处理和数据挖掘的区别是什么。讨论OLAP挖掘(OLAM)动机

答:信息处理支持查询、基本的统计分析,并使用交叉表、表、图表或图进行报告。

分析处理支持基本的OLAP操作,包括切片与切块、下钻、上卷和转轴。一般对汇总和详细历史数据操作,支持数据仓库数据的多维数据分析。

数据挖掘支持知识发现,包括找出隐藏的模式和关联,构造分析模型,进行分类和预测,并使用可视化工具提供挖掘结果。

OLAM的动机有以下几点:

①数据仓库中数据的高质量。经过预处理而构造的数据仓库不仅用作OLAP,而且也用作数据挖掘的有价值的数据源。②环绕数据仓库的信息处理基础设施。全面的数据处理和数据分析基础设施已经或将要围绕数据仓库而系统地建立,谨慎的做法就是尽量利用可用的基础设施,不是一切从头做起。③基于OLAP的探测式数据分析。有效的数据挖掘需要探测式数据分析。用户常常想遍历数据库,选择相关数据,在不同粒度上分析它们,并以不同的形式提供知识/结果。④数据挖掘功能的联机选择。用户常常不知道挖掘什么类型的知识,通过将OLAP与多种数据挖掘功能集成在一起,为用户选择所期望的数据挖掘功能,动态改变数据挖掘任务提供了灵活性。

15.【p177 5.1】

(1)项集s的任意非空子集s’的支持度至少和s的支持度一样大

令D为相关事务数据,|D|为事务的数量。通过定义知

support(s)=support_count(s)/|D|

设s’为s的任意非空子集。通过定义得

support(s’)=support_count(s’)/|D|

因为support_count(s’)>= support_count(s),所以support(s’)>= support(s)。

(2)给定频繁项集l和l的子集s,证明“s’=>(l-s’)”的置信度不可能大于“s=>(l-s)”的置信度,其中s’是s的子集。

答:令s是l的一个子集,则confidence(s=>(l-s))=support(l)/support(s)

令s’是s的一个子集,则confidence(s’=>(l-s’))=support(l)/support(s’)

因为support(s’)>= support(s),所以confidence(s’=>(l-s’))<= confidence(s=>(l-s))

(3)apriori的一种变形将事务数据库D中的事务划分成n个不重叠的部分,证明在D中频繁的任何项集至少在D的一个部分中是频繁的。

答:假设频繁项集在D的任何部分中都不频繁。

设F为D的任何频繁项集。令D是相关事务数据集。令C是D中事务的总数量。令A是D中包含F的事务数量。令min_sup是最小支持度阈值。

因为F是频繁项集,所以A=C*min_sup.

令D分成n个不重叠的部分,d1,d2?dn。那么D=d1d2?dn.

令c1 c2?cn分别是各部分d1?dn的事务数量。则C=c1+c2+?+cn

令a1 a2?an分别是各部分d1?dn中包含F的事务数量,则A=a1+a2+?+an

A=C*min_sup即a1+a2+?+an=( c1+c2+?+cn)* min_sup①

由假设知F在各部分d1?dn中都不是频繁的,所以ai<ci*min_sup(i=1,2,3,?,n)

把式子加起来得a1+a2+?+an<( c1+c2+?+cn)* min_sup,②

可得①②矛盾,所以原假设不成立。

16.【p177 5.3】

数据挖掘总结

数据挖掘总结

效率比较:apriori需要多次扫描数据,而FP增长算法在FP树建立过程只对数据进行一次扫描。Apriori产生许多候选项集,而FP增长算法根本不产生候选项集。

(2)ko->e oe->k

17.【p177 5.5还用写具体的得到频繁项集的过程吗 写】

新书

1.【1.24】

向量x属于Ck类的概率为p(Ck|x)。如果将x判为Cj

数据挖掘总结

类就会造成一个大小为

的期望损失,如果选择拒绝这一判别就会造成λ损失,设

数据挖掘总结

j=arg 则若要最小化期望损失需要

对于损失矩阵,Lkj=1-Ikj

数据挖掘总结

,则 =1- p(Ck|x)。当1- p(Ck|x)>λ时会拒绝,即最大也有p(Ck|x)<1-λ这和拒绝标准中最大的概率小于θ一样,所以θ=1-λ

2.【1.25】

由题意得

数据挖掘总结

求偏导得

求y(x)得

数据挖掘总结

3.【3.4】

数据挖掘总结

利用题中公式1得

数据挖掘总结

由公式2得

数据挖掘总结

当在εni的分布下做出期望时,可以看到第二项和第五项消失,由于E[εni]=0,对于第三项可以得到,因为εni都独立,方差为σ2 ,所以

数据挖掘总结

4.【4.9】 似然函数是 取对数得

为了最大化关于πk的似然对数,需要维持约束 。引入拉格朗日参数λ,最大化

数据挖掘总结

令πk的衍生值为0,得即 对两边在k上求和得λ=-N,用这个来消除λ就可以得到。

相关推荐