当前位置:文档之家› 第二章 数据挖掘

第二章 数据挖掘

第二章 数据挖掘
第二章 数据挖掘

第二章数据挖掘理论概述

2.1数据挖掘的定义和分类

目前,对数据挖掘(data mining)有广义的和狭义的两种理解。广义的理解认为数据挖掘即数据库中的知识发现(Knowledge Discovery in Database,KDD)。即从大规模的数据库中抽取非平凡的、隐含的、未知的、有潜在使用价值的信息的过程。狭义的理解认为数据挖掘是KDD的一个步骤。KDD为从数据中识别正确的、新颖的、有潜在使用价值的、最终可理解的模式的非平凡的过程。它包括数据选取、数据预处理和数据清洗、数据挖掘、知识评估等多个步骤。数据挖掘是其中对经过预处理的数据进行处理,抽取知识的过程。

数据挖掘不一定需要建立在数据仓库的基础上,但是如果将数据挖掘和数据仓库协同工作,则可以简化数据挖掘过程的某些步骤,从而大大提高数据挖掘的工作效率。由于数据仓库的数据来源于整个企业,保证了数据挖掘中数据来源的广泛性和完整性。数据挖掘技术是数据仓库应用中比较重要且相对独立的部分。目前,数据挖掘技术正处在发展当中。数据挖掘涉及到数理统计、模糊理论、神经网络和人工智能等多种技术,技术含量比较高,实现难度较大。此外,数据挖掘技术还会同可视化技术、地理信息系统、统计分析系统相结合,丰富数据挖掘技术及工具的功能与性能。

Jiawei Han在《Data Mining: Concept & Techniques》[21]中将目前的数据挖掘技术主要分为以下几类:概念描述、关联分析、分类和预测、聚类分析、例外分析、趋势分析。

●概念描述(特性描述和区分)

数据可以由一定的概念和类来抽象表示人们对其关心的那部分的性质。简单明了地描述这些概念和类显然是非常有用的。关于这些概念的描述称为概念描述(concept description),它包括了特性描述和区分。

●关联分析

关联分析(association analysis)是在一个给定的数据集中发现经常同时发生的多个属性值条件(一般称为关联规则)的过程,常用于市场销售和事物数据分析。但目前,其应用范围也日益拓展。

●分类和预测

分类(classification)是指为了能够使用模型预测类标签(class label)还未知的对象所属的类,而寻找可以描述和区分类或概念的模型的过程,其中类标签指用来区分类的属性。包括两个步骤:通过分析训练数据空间中的数据,运用分类

算法,建立分类模型;用测试数据空间中的数据估计己建立模型的预测准确性,如果用户可以接受,则用该模型对未知类别的数据进行分类预测。所谓预侧(prediction),专指对丢失或无效的数据的值的预测。

●聚类分析

聚类分析(clustering analysis)是一个将指定数据集中的数据进行归类的过程。其遵循的原则是每个类内部各对象间的相似性尽可能最大,而不同类对象间的相似性尽可能最小。在具体实现中,一般用计算对象属性的距离(欧几里德距离、曼哈顿距离等)来体现对象间的相似度。

●例外分析

一个数据库中的数据可能不都遵循总的数据模型的行为,这些数据称为例外(outlier)。通常数据挖掘方法把例外作为垃圾而抛弃,不过在一些场合下,比如欺诈检测中,例外却成为了最受关注的焦点。例外分析大致有统计、基于距离、基于偏差三种方法。

●趋势分析

数据趋势分析(evolutiona nalysis)描述对象行为随时间变化的趋向和规律。这个概念和特性描述、关联分析、分类、与时间相关的数据的聚类都有些类似,然而前者更强调对时序(time-series)数据的分析、有序和周期性模式的匹配、基于相似度的数据分析。

2.2数据挖掘的目的

数据挖掘用于辨认大量数据中所反映的有价值信息。数据挖掘从机器学习的途径获取信息,使它能使用在决策支持、预测、估计等领域中。数据通常是庞大而信息含量很低,在它未经加工时只有很小的直接使用价值。有用的信息往往是隐藏在数据背后的。数据挖掘就是从杂乱无章的数据中找出规律,把数据转化为信息的一个过程。

数据挖掘是一个利用各种分析工具在海量数据中发现模型和数据间关系的过程,这些模型和关系可以用来做出预测。对企业来说,数据挖掘就是在“数据矿山”中找到蕴藏的“知识金块”,帮助企业减少不必要投资的同时提高资金回手及。

数据挖掘不是数据分析。数据分析一般面对的数据量较小;人们对数据分析所得出的结论有着较为成熟、全面的预期;其过程常常受到人为因素强烈的影响。数据挖掘一般面对的都是“海量”数据,因此其对算法的效率要比分析类高出很多;数据挖掘所得出的大多是隐性的信息,这些信息通常人力是很难发现的;数据

挖掘某些过程也要受到人为因素的影响,但大多数时候,数据挖掘是较为客观的,它是一种机器性的学习结果,与人为因素关系不大。

数据挖掘只是帮助商业人士更深入、更容易的分析数据。它无法告诉你客户流失模型对你的企业的实际价值,并且数据挖掘中得到的模型必须要在现实生活中进行验证。数据挖掘也不会在缺乏指导的情况一下自动的发现模型,所以需要一个科学的挖掘过程。

值得重视的是,数据挖掘的从业人员不仅仅需要对数据挖掘的概念、算法、软件、模型有着清楚的认识,还要对数据挖掘所应用的行业有些深入的理解。因为数据挖掘所挖掘的是较为深入的信息。一个没有深厚行业背景的人在理解、应用这些信息时会不可避免的产生困难。

数据挖掘的任务是从大量数据中发现知识。那么什么是知识?这些知识是以何种形式表达出来?又是怎样被利用的呢?知识是人类认识的成果或结晶,包括经验知识和理论知识。从工程角度定义,知识是有助于解决问题的有格式可复用的信息。在传统的决策支持系统中,知识库中的知识和规则是由专家或程序人员建立的,是由外部输入的。而数据挖掘的任务是发现大量数据中尚未被发现的知识,是从系统内部自动获取知识的过程。对于那些决策者明确了解的信息,可以用查询、联机分析处理(OLAP)或其它工具直接获取,比如“列出各子公司在上个月的销售情况”。而另外一些隐藏在大量数据中的关系、趋势,即使是管理这些数据的专家也是没有能力发现的。

数据挖掘发现的知识通常是用以下形式表示:

(1)概念(Concepts)

(2)规则(Rules)

(3)规律(Regularities)

(4)模式(Patterns)

(5)约束(Constraints)

(6)可视化(Visualizations)

这些知识可以直接提供给决策者,用以辅助决策过程;或者提供给领域专家,修正专家已有的知识体系;也可以作为新的知识体系转存到应用系统的知识存储机构中,比如专家系统(ExpertSystem)、规则库(RuleBase)等。

2.3数据挖掘的过程

数据挖掘过程一般由三个主要的阶段组成:数据准备、采掘操作、结果表达和解释。知识的发现可以描述为这三个阶段的反复过程。

●数据准备

这个阶段又可进一步分成三个子步骤:数据集成、数据选择、数据预处理。数据集成将多文件或多数据库运行环境中的数据进行合并处理,解决语义模糊性、处理数据中的遗漏和清洗脏数据等。数据选择的目的是辨别出需要分析的数据集合,缩小处理范围,提高数据挖掘的质量。预处理是为了克服目前数据挖掘工具的局限性。

●数据挖掘

这个阶段进行实际的采掘操作。包括的要点有:

(1)要先决定如何产生假设,是让数据挖掘系统为用户产生假设,还是用户

自己对于数据库中可能包含的知识提出假设。前一种称为发现型

(Discovery-Driven)的数据挖掘;后一种称为验证型(Verification-Driven)的数据挖掘;

(2)选择合适的工具;

(3)发掘知识的操作;

(4)证实发现的知识。

●结果表述和解释

根据最终用户的决策目的对提取的信息进行分析,把最有价值的信息区分出来,并且通过决策支持工具提交给决策者。因此,这一步骤的任务不仅是把结果表达出来(例如采用信息可视化方法),还要对信息进行过滤处理。如果不能令决策者满意,则需要重复以上数据挖掘的过程。

2.4数据挖掘的方法

数据挖掘的算法较多,我在这主要针对客户流失预测常用的算法作些介绍。

2.4.1 贝叶斯分类

贝叶斯网络(Bayesian Network,BN)又称信度网络,是Bayes 方法的扩展。从1988 年由Pearl 提出后,贝叶斯网络是目前不确定知识表达和推理领域最有效的理论模型之一,已成为近几年来研究的热点。贝叶斯算法支持快速的创建有预测功能的挖掘模型,并且提供了一种浏览数据和理解数据的新方法。贝叶斯提供了一种基于证据进行学习的系统方法。这个算法通过你感兴趣的变量与所有其他的变量之间的相关性进行计数来学习“证据”。贝叶斯网络适用于表达和分析不确定性和概率性的事件,应用于有条件地依赖多种控制因素的决策,可以从不完全、不精确或不确定的知识或信息中做出推理。贝叶斯分类是基于贝叶斯原理进行的分类,该类算法可以预测类成员关系的可能性,如给定样本属于一个特定

的类的概率。分类算法的比较研究发现,简单贝叶斯分类(朴素贝叶斯分类)是一种简单、有效且在实际应用中较为成功的分类方法。

贝叶斯算法的实现非常简单,因此没有很多的参数。默认情况下,已有的参数能够确保该算法在一个合理的时间内执行完成。因为该算法要考虑所有属性对的组合,所以处理这些数据所要用的时间和内存与总的输入属性和总的输出属性的乘积有关。通常,当使用参数时,这个算法擅长于选择哪一个属性作为输入,哪一个属性作为输出,并且将每个参数设置为0。

贝叶斯分类是一种以统计学中的贝叶斯定理为基础的分类方法。贝叶斯分类方法包括:朴素贝叶斯分类(SNBC: Selective Naive Bayesian Classification)方法和贝叶斯信念网络分类(BBNC: Bayesian Belif Networks Classification)等。朴素贝叶斯分类方法建立在类条件独立假设的基础上,即假定一个属性值对给定类的影响独立于其他属性的值。贝叶斯信念网络是一种因果关系图模型,可以允许属性子集间存在相关性。算法的研究表明,朴素贝叶斯分类算法可以与判定树及神经网络分类算法媲美。用于大型数据库,贝叶斯分类也表现出很高的准确性和速度。

在众多的分类方法中,朴素贝叶斯分类器在计算上具有非常高的效率。在某些应用问题上表现出诱人的分类精度,因而广泛地应用于许多实际领域中。从网络的拓扑结构来说,朴素贝叶斯分类器可以看作是一种具有很强限制条件的贝叶斯网络分类器,它假设所有属性是相互条件独立的,每个属性仅仅依赖于类变量或类标。朴素贝叶斯分类方法是一种非常实用的学习技术,与决策树学习、基于规则的学习和神经网络学习方法相比,它有许多优势,如对噪音的健壮性,学习过程非常简单,不需要搜索等。然而,朴素贝叶斯方法是以一个很强的简单假设一一数据中的属性相对于类标是相互独立的一一为基础的。这个假设条件在现实世界的学习任务中是很少能够满足的。

2.4.2 决策树

决策树算法是由机器学习专家J.RossQuinlan[]在20世纪70年代后期开发出来的,称为ID3(IterativeDiehotomiser,迭代的二分器)。以后的能处理连续属性的C4.5、CA卫T等决策树算法都是在ID3的算法基础上进行优化得来的,以及加入了Boosting思想的c5.0算法在其准确性、执行效率、可伸缩性都有了更进一步的发展。Qululan之后提出的C4.5算法成为了新的监督学习算法的性能比较基准。

用决策树解决的最常见的数据挖掘任务是分类;例如,确定银行每个客户额信用风险,或者找出这些客户中哪些客户可能是在线的购买者。

决策树算法是一种逼近离散值的函数算法,有点类似于布尔函数,通过输入数据得出结论(是、否)。它是通过样本数据进行学习,从一组没有次序没有规则

的数据中学习分类规则。决策树的表现结构就像一个流程图的树结构,它的每一个非叶子节点表示元组数据在这个属性上的测试,分类树枝表示该属性值对应的输出,其中每一个非叶子节点都存放一个类标号。决策树的根节点是测试数据样本中信息量最大的属性,而且由算法生成的决策树可以直接转化为决策规则。决策树的主要优点就是描述简单,分类速度快,特别适合大规模的数据处理和高维度数据,构造决策树的时候不需要任何的业务领域知识或设置构造决策树的参数。其次决策树具有很好的准确性,构造出来的知识形式非常直观,一目了然。因此决策树算法广泛的用于许多领域的分类。决策树分类算的一般分为两个步骤,决策树的生成和决策树剪枝。

决策树的基本组成部分:决策节点、分支和叶子。建立决策树的过程,即树的生长过程是不断的把数据进行切分的过程,每次切分对应一个问题,也对应着一个节点。对每个切分都要求分成的组之间的“差异”最大。决策树的基本原理是递归地将数据拆分成子集,以便每一个子集包含目标变量类似的状态,这些目标变量是可预测属性。每一次对树进行拆分,都要评价所有的输入属性对可预测属性的影响。当这个递归的过程结束时,决策树也就创建完了。

各种决策树算法之间的主要区别就是对这个“差异”衡量方式的区别,可以把切分看成是把一组数据分成几份,份与份之间尽量不同,而同一份内的数据尽量相同。这个切分的过程也可称为数据的“纯化”。如果经过一次切分后得到的分组,每个分组中的数据都属于同一个类别,显然达到这样效果的切分方法就是我们所追求的。

决策树算法与其他的数据挖掘算法相比有一些优势:

第一,与神经网络和贝叶斯分类器相比,决策树提供非常直观的描述,这种描述易于被吸收,转化为标准的数据库查询。

第二,训练神经网络模型时要花费大量的时间,要进行大量的重复操作,与之相比,决策树效率要高的多,适合于大的训练集。

第三,决策树生成算法除了训练集中包含的信息外,不需要附加的信息(即领域知识或类标签以前的分布情况).

第四,决策树有着可比的或更高的准确率。

但在实际中应用的决策树可能非常复杂。例如利用样本数据建立了一个包含几百个属性、输出的类有十几种的决策树。

决策树算法与其他的数据挖掘算法相比有一些优势,比如,利用决策树可以快速创建挖掘模型,并且创建的模型也很容易解释。每一条从根节点到叶节点的路径就是一条规则。基于决策树的预测也非常高效。对事例进行预测的过程是从根节点落到叶节点的路径,所选择的路径基于决策树中节点的拆分条件。当某一

事例落到一个叶节点时,这个事例的预测值就是基于存储在节点的统计值的。2.4.3 神经网络

神经网络是模拟神经系统运行的简单模型。为区别于生物神经网络,一般称神经网络为人工神经网络(Artificial Neural Network,简记为ANN)。它是在对人脑组织结构和运行机制的认识理解基础之上模拟其结构和智能行为的一种工程系统,并试图从微观上解决人类认知功能,以探索认知过程的微结构,并在网络层次上模拟人类的思维方式和组织形式。

神经网络的应用研究是近年来在神经网络研究中成果最多、最为引人注目的领域,在图像、语音、文字识别、天气预报、经济预测、管理决策、自动控制等领域都有大量的研究报告。神经网络的优点主要是:有良好的自组织、自学习和自适应能力,面对复杂多变的外界系统,神经网络可以通过其良好的抗干扰能力,去掉冗余信息,掌握系统的内部规律,以自身结构表达的方式进行知识的推理。ANN 作为模拟人的智能和形象思维能力的一条重要途径和方法,在模式识别、信号处理、自动控制等领域的应用取得显著成效,并在非线性建模和非线性问题求解方面有着广阔的应用前景。

人工神经网络由于没有传统统计方法在构建模型时需要满足许多假设条件的要求,以及其在构建非线性模型的许多良好的性质,因此ANN 主要用于非线性模型的研究。

神经网络的基本理论研究主要包括非线性动力系统动力学理论研究,神经网络的基本性能及能力研究等。神经网络的算法按照网络结构可以分为四类,即反馈网络模型[22]、前向网络模型123]、随机网络模型及自组织网络模型[20]。

神经网络分类方法包含学习阶段和分类阶段两个过程。在学习阶段,首先建立同时具有属性数据与实际类标号值训练数据集,然后通过对训练数据的学习,不断调整神经网络的权值,使得神经网络的输出能够正确地反映训练数据的类标号值。在分类阶段,在训练好的神经网络中输入没有类标号的对象数据,由神经网络给出类标号的预测值。

按照学习方式,神经网络可分为两种:一种是有指导的学习,也叫做监督学习。在这种学习方式中,期望的输出是已知的,对网络的输出和期望的输出进行比较通过调整网络的权值,使得两者之差最小;另外一种是无指导学习,也叫做无监督学习,这时只规定学习方式或某些规则,网络按照这些规则自动调借权值或结构,使得网络最终具有模式分类等功能。

按照连接模式和信号传播的方向,神经网络可以分为前馈神经网络(feedforward network)、反馈网络(recurrent network)[45]和自组织神经网络。它通过合理的样本训练、学习专家的经验、模拟专家的行为,并通过引入非线性转换

函数来求解各种复杂的非线性问题,从而使ANN具有很强的模式识别能力,可克服传统模式识别方法或一般算法在求解问题、处理数据时存在决策界面统计不出或不准确的现象。

神经网络由大量神经元互联而成的网络,它主要由“神经元”的互联,或按层组织的结点构成。在神经网络中,知识与信息的存储表现为神经元之间分布式的物理联系。它分散地表示和存储于整个网络内的各神经元及其连线上。

神经网络通过网络中各连接权值的改变,实现信息的处理和存储。在神经网络中每个神经元既是信息的存储单元,又是信息的处理单元,信息的存储和处理合二为一,由这些神经元构成的网络在每个神经元的共同作用下,完成对输入模式的识别和记忆在对输入模式的识别和记忆过程中,各神经元之间的连接权值随着模式的输入而不断调整,把环境的统计率反映到神经网络本身的结构之中而保持下来,这样就达到了对输入模式的记忆。

人工神经网络同现行的计算机不同,是一种非线性的处理单元。突破了传统的以线性处理为基础的数字电子计算机的局限,标志着人类智能信息处理能力和模拟人脑智能行为能力的一大飞跃。

2.4.4 关联规则

关联规则挖掘是目前的数据挖掘领域的一个十分活跃的研究方向。最早在90年代中期由A『awal等人首先提出,并在近年引起国际人工智能和数据库等领域学者的广泛关注。关联规则反映的是数据间的定性关联关系。目前已经提出的关联规则算法有多循环方式挖掘算法、增量更新算法、并行发现算法、多层关联规则挖掘、多值属性挖掘、基于约束的关联规则挖掘、基于粗糙集的关联规则挖掘等。

关联规则挖掘描述一个事物与其他事物之间的关联或相关。数据库中的数据之间的复杂结构关联是社会生活中的某些事物的以表现。关联规则就是通过挖掘数据库中各个数据之间的关系,从而找出现实生活中事物之间的关联。而这些关联大部分是隐藏的,我们事先不知道的,通过机器分析数据库中的数据得到了,具有很大的商业价值。广义的数据挖掘的本质就是关联规则分析,这种知识反映了数据之间的特殊关联。

数据属性之间不仅存在定性关联规则,也存在定量关联关系。在解决了如何合理划分属性区间的问题的基础上,将定量管理规则转变为定性问题,并进而提出了挖掘定量关联规则的方法。

挖掘关联规则[1]的一个典型例子是购物篮分析。通过发现顾客放入其购物篮中不同产品之间的联系,可以分析顾客的购买习惯,了解到哪些商品频繁地被顾客同时购买,从由帮助零售商制定营销策略。有一个超市,每天的营业额非常大,

购买商品的人特别多。某一天,营业经理突然发现,在柜台结帐的很多男士都同时购买了啤酒与尿布这两个看起来风马牛不相及的产品。他对此非常感兴趣,进行了仔细的市场调研后发现,很多女士有了小宝宝后都要在家休养,于是购买尿布的任务大多落在了丈夫身上。男人们都比较喜欢喝啤酒,因此在购买尿布的同时常会购买一定量的啤酒。因此,该经理决定改变货架的摆放方式,将啤酒与尿布的摆放位置靠近,果然这两样商品的销售量都大大提高。同样地在频繁子图挖掘中,每个图G 被看作是一个事务,每个子图可以看作一个项,使用类关联规则方法,挖掘图中的频繁项集,即频繁子图。关联规则挖掘算法中有两种经典算法:Apriori 算法和FP-Growth 算法。

给定项集},,,{21m I I I I =,设任务相关的数据D 是数据库事务的集合,其中每个事务T 是项的集合,使得I T ?。每个事务有一个标识符,称作TID 。设A 是一个项集,事务T 包含A 当且仅当T A ?。

关联规则是形如B A ?的蕴涵式,其中I A ?,I B ?,并且φ=B A 。 关联规则的两个通用衡量指标是支持度和置信度。关联规则A B ?在事务集D 中成立,具有支持度s ,其中s 是D 中事务包含B A (即A 和B 二者)的百分比,即概率)(B A P 。规则A B ?在事务集D 中具有置信度c ,如果D 中包含A 的事务同时也包含B 的百分比是c ,它是条件概率(|)P B A ,即

sup ()()port A B P A B ?=

()(|)confidence A B P B A ?=

如果B A ?在事务集D 中满足最小支持度阈值(min_sup ),则规则B A ?成立;如果它同时满足最小支持度阈值(min_sup )和最小置信度阈值( min_conf),则它是强规则。关联规则的挖掘任务就是要在给定的数据库D 中找出同时满足给定支持度阈值和置信度阈值的旨关联规则。后文中提到的关联规则都是指强关联规则。为了方便计算,我们用0%和100%之间的值而不是用0~1.0之间的值表示支持度和置信度。

关联规则挖掘分为两个步骤:

步骤1. 找出所有频繁项集:根据关联规则的定义,找出那些支持度不小于

给定阈值的项集。

步骤2. 由频繁项集产生强关联规则:根据关联规则定义产生的规则必须满

足最小的要求,但还必须满足置信度。这些规则必须满足最小支持

度和最小置信度。

而置信度可以表示如下:

sup

_()sup _()()(|)port count A B port count A confidence A B P B A ?==

其中,sup _()port count 表示绝对支持度。根据卡式,步骤2按如下方法产生关联规则:

1. 对于每个频繁项集l ,产生l 所有的非空子集s 。

2. 对于每个s ,如果sup _()min_sup _()

port count l conf port count s ≥,则输出规则()s l s ?-。 由此可见,步骤2简单,且依赖于步骤1,所以关联规则挖掘算法关键在于寻找频繁项集。

另外在挖掘关联规则的过程中,人们可以附加另外的兴趣度度量,以增加关联规则对问题的适用性。

Apriori 算法[3]是最有影响力的挖掘布尔关联规则频繁项集的算法。算法的名字基于这样的事实:算法使用频繁项集性质的先验知识,正如我们将看到的。Apriori 使用一种称作逐层搜索的迭代方法,-k 项集用于搜索-+)1(k 项集。首先,找出频繁-1项集的集合。该集合记作1L 。1L 用于寻找频繁-2项集的集合2L ,而2L 用于寻找3L ,如此下去,直到不能找到频繁-k 项集。该算法每找一次k L 需要一次数据库扫描。

为提高频繁项集逐层产生的效率,一种称作Apriori 性质的重要性质用于压缩搜索空间。Apriori 性质:频繁项集的所有非空子集也必须是频繁的。

由于Apriori 算法需要产生大量的候选项,而且要多次扫描数据库。所以其效率不是很理想。Han 等人在文献[4]中提出,不生产候选项集,而通过模式增长的方法挖掘频繁模式。该方法通过将数据库压缩到FP-树上,然后在该树上递归挖掘频繁模式。目前该方法已成为挖掘频繁模式的主流算法。

FP-Growth 算法[4 ]采取如下分治策略。首先,将提供频繁项的数据库压缩到一棵频繁模式树(或FP 树),但仍保留项集关联信息。然后,奖压缩后的数据库划分成一组条件数据库(一种特殊类型的投影数据库),每个关联一个频繁项或“模式段”,并分别挖掘每个条件数据库。

FP -Growth 方法将发现长频繁模式的问题转换成递归地搜索一些较短模式,然后连接后缀。它使用最不频繁的项作后缀,提供了好的选择性。该方法大大降低了搜索开销。

当数据库很大时,构造基于内存的FP 树有时是不现实的。一种有趣的可选方案是首先奖数据库划分成投影数据库的集合,然后在每个投影数据库构造FP 树并挖掘它。如果投影数据库的FP 树还不能放进内存,该过程可以递归地用于投影数据库。

对FP -Growth 方法的性能研究表明:对于挖掘长和短的频繁模式,它都是有效的和可规模化的,并且大约比Apriori 算法快一个数量级。它也比树-投影

算法快。树-投影算法递归地将数据库投影到投影数据库树。

2.4.5 Logistic回归

回归分析是一种传统的统计方法,用于推导变量和需预测值之间关系的函数。这类方法与神经网络一样,常使用数字输入,必须对数字进行预处理。实际应用中有大量各不相同的回归方法,最常用的是多项式回归和逻辑回归两种。

回归是通过具有已知值的变量来预测其他变量的值。在最简单的情况下,回归采用的是像线性回归这样的标准统计技术。但在大多数现实世界中的问题是不能用简单的线性回归所能预测的。如商品的销售量、股票价格、产品合格率等,很难找到简单有效的方法来预测,因为要描述这些事件的变化所需的变量以上百计,且这些变量本身往往都是非线性的。为此人们又发明了许多新的手段来试图解决这个问题,如逻辑回归等。

Logistic回归是为二元因变量(二分类变量)设计的非线性回归模型,主要是用来预测二值响应变量(例如成功或失败)或者次序变量(例如没有、一般、严重)的值,是解决0、1回归问题的有效方法。客户流失问题中的因变量为分类的变量,不符合一般回归分析模型的要求,此时可用Logistic回归来分析。客户是否有业务流失倾向,本质上也是一种两分类,因此,可以采用Logistic回归对客户流失的可能性进行建模。Logistic回归从统计的角度对输入变量是否对客户流失有影响进行分析,最后得出一个多元一次方程,用来对客户的流失可能性进行评分。类似于线性回归系数,Logistic回归系数也可被解为对应自变量一个单位的变化所导致的因变量上的变化。Logistic回归模型的系数如果是正值且统计显著,意味着在控制其他自变量的条件下,对数发生比随对应自变量值的增加而增加。相反,一个显著的负系数代表对数发生比随对应自变量值的增加而减少。如果系数的统计性不显著,说明对应自变量的作用在统计上与0无差异。

在建立Logistic 回归模型时,针对一些特定问题,本文采取了如下处理方式:

(1)多重共线性的处理(Multicollinearity)

Logistic 回归与线性回归一样,对自变量中存在的多重共线性敏感,可以引发模型系数估计标准误增大。通常的解决方法是删除一个或多个导致多重共线性的模型变量,或使用因子分析或主成分分析来降低冗余变量的数目。当多重共线性不太严重时,其结果倒是可以容忍的。对线性回归来说,多重共线性并没违反平凡最小平方(Ordinary Least-Squares,OLS)回归假设,这种情况下的OLS 参数估计因子仍然是最佳线性非偏差估计因子(Best Linear Unbiased Estimator,BLUE)。但是多重共线性可能引起“统计能力”的大幅度下降。因此,在多重共线性下,要想获得同样级别的统计显著性,就需要大样本。

而很多的统计文献都讨论自变量多重共线性,是因为多重共线性不足以估计每个变量的单独影响,从而使模型用于“解释”某种行为变得不可靠。如果模型的目标是预测,我们所要关注的就不是每个自变量如何和为什么影响因变量,而是关注模型作为预测模型的精度和功效。删除一个高共线性变量,可能会消弱模型作为预测工具的有效性。

(2)衍生新变量

Logitic 回归模型的形式为:

①划分

将连续变量划分成几个区间,根据各区间段的事件发生百分比大小将连续变量划分为类型变量。这对非线性倾向的效果很好,但缺陷是失去了曲线上的、在长期内非常强壮的点间关系。

②转换(Re-expressing)

对自变量进行转换,以此来建立与因变量(log( p (1 p)))更为线性的关系。实际运用中有多种方法,使用比较多是根据平滑散点图(Smoothed Scatterplot),进行有指导的变量转换,其步骤如下:

将某个自变量按大小进行排序后,分成相等的十份,并计算每一份的平均值或中值作为自变量在该份的平滑值(Smooth decile value),同时计算相对每份因变量的平均值。而每份中因变量的平均值可以看作相对于当自变量取该份中平滑值时,事件发生的比率,也即是事件发生的可能性。

画出相对每份平滑值的自变量对平滑值因变量的散点图,从图中观察对应散点的线性关系的强弱,如果有非线性或曲线关系,可以根据图形反映出的曲线关系,对自变量进行转换,直至平滑散点图有明显的线性趋势。

数据挖掘期末大作业任务

数据挖掘期末大作业 1.数据挖掘的发展趋势是什么?大数据环境下如何进行数据挖掘。 对于数据挖掘的发展趋势,可以从以下几个方面进行阐述: (1)数据挖掘语言的标准化描述:标准的数据 挖掘语言将有助于数据挖掘的系统化开发。改进多个数据挖掘系统和功能间的互操作,促进其在企业和社会中的使用。 (2)寻求数据挖掘过程中的可视化方法:可视 化要求已经成为数据挖掘系统中必不可少的技术。可以在发现知识的过程中进行很好的人机交互。数据的可视化起到了推动人们主动进行知识发现的作用。 (3)与特定数据存储类型的适应问题:根据不 同的数据存储类型的特点,进行针对性的研究是目前流行以及将来一段时间必须面对的问题。 (4)网络与分布式环境下的KDD问题:随着 Internet的不断发展,网络资源日渐丰富,这就需要分散的技术人员各自独立地处理分离数据库的工作方式应是可协作的。因此,考虑适应分布式与网络环境的工具、技术及系统将是数据挖掘中一个最为重要和繁荣的子领域。 (5)应用的探索:随着数据挖掘的日益普遍,其应用范围也日益扩大,如生物医学、电信业、零售业等 领域。由于数据挖掘在处理特定应用问题时存在局限性,因此,目前的研究趋势是开发针对于特定应用的数据挖掘系统。 (6)数据挖掘与数据库系统和Web数据库系统的集成:数据库系统和Web数据库已经成为信息处 理系统的主流。 2. 从一个3输入、2输出的系统中获取了10条历史数据,另外,最后条数据是系统的输 入,不知道其对应的输出。请使用SQL SERVER 2005的神经网络功能预测最后两条数据的输出。 首先,打开SQL SERVER 2005数据库软件,然后在界面上右键单击树形图中的“数据库”标签,在弹出的快捷菜单中选择“新建数据库”命令,并命名数据库的名称为YxqDatabase,单击确定,如下图所示。 然后,在新建的数据库YxqDatabas中,根据题目要求新建表,相应的表属性见下图所示。

数据挖掘 主题:第六章作业

本科生实验报告 实验课程数据挖掘 学院名称信息科学与技术学院 专业名称计算机科学与技术 学生姓名代星 学生学号201413030317 指导教师 实验地点 实验成绩 二〇一六年11月二〇一六年11月

第1章实验内容 使用心脏病患者数据集(CardiologyNumerical.arff)的前两百个实例进行反向传播学习训练,剩余的103个实例作为检验集实例进行模型检验。改变网络结构和参数,使之达到更为理想的检验及效果。 第2章实验目的 对心脏病患者数据集中的数据用反向传播学习训练方法进行分类,查看分类的效果。并通过改变网络的结构和参数,使分类效果更加理想。 第3章算法思想 BP算法是一种有监督式的学习算法,其主要思想是:输入学习样本,使用反向传播算法对网络的权值和偏差进行反复的调整训练,使输出的向量与期望向量尽可能地接近,当网络输出层的误差平方和小于指定的误差时训练完成,保存网络的权值和偏差。具体步骤如下: (1)初始化,随机给定各连接权[w],[v]及阀值θi,rt。 (2)由给定的输入输出模式对计算隐层、输出层各单元输出。 (3)选取下一个输入模式对返回第2步反复训练直到网络设输出误差达到要求结束训练。 第4章实验过程 4.1数据准备 从网上下载数据集,生成.csv文件,加载到Weka。 4.2 建立神经网络结构

1、在Weka Explorer中切换到Classify选项卡,单击Classify窗口的Choose 按钮,选择分类器MultilayerPerceptron,即基于BP学习算法的多层前馈神经网络。 2、在Choose按钮右边的文本框点击,打开分类器的属性设置对话框,将GUi 设置为true,使得在训练前,可查看包含神经网络体系结构的GUI界面,并可交互式地修改结构和设置其他参数,且可以在网络训练过程中暂停,进行结构和参数的反复修改。在属性设置对话框中,设置hiddenLayers为“5,3”,表示有两个隐层,分别有5个和3个隐层节点;设置learning-Rate为0.5,trainingTime 为5000. 3、单击OK按钮,回到Weka Explorer的Classifier窗口,在测试集的选择上题目要求前两百个数据作为实例,最后103个作为检验集,设置Test Options 为Percentage split(取实例个数的百分比作为检验集),并设置为34%满足题目要求。单击More options按钮,打开Classifier evaluation options对话框,选中Output复选框,以确保在输出中能够看到检验集的分类情况。 4、单击start按钮,开始神经网络的训练过程。弹出神经网络的GUI界面,单击start按钮,执行训练,并选择accept训练结果。 5、修改参数,重复上述步骤,重新实验,并对比实验结果。 第5章实验结果 实验一:全部作为实例

数据挖掘作业

1、给出K D D的定义和处理过程。 KDD的定义是:从大量数据中提取出可信的、新颖的、有用的且可以被人理解的模式的高级处理过程。因此,KDD是一个高级的处理过程,它从数据集中识别出以模式形式表示的知识。这里的“模式”可以看成知识的雏形,经过验证、完善后形成知识:“高级的处理过程”是指一个多步骤的处理过程,多步骤之间相互影响反复调整,形成一种螺旋式上升的过程。 KDD的全过程有五个步骤:1、数据选择:确定发现任务的操作对象,即目标数据,它是根据用户的需要从原始数据库中抽取的一组数据;2、数据预处理:一般可能包括消除噪声、推到技术却只数据、消除重复记录、完成数据类型转换等;3、数据转换:其主要目的是消减数据维数或降维,即从初始特征中找出真正有用的特征以减少数据开采时要考虑的特征或变量个数;4、数据挖掘:这一阶段包括确定挖掘任务/目的、选择挖掘方法、实施数据挖掘;5、模式解释/评价:数据挖掘阶段发现出来的模式,经过用户或机器的评价,可能存在冗余或无关的模式,需要剔除;也有可能模式不满足用户的要求,需要退回到整个发现阶段之前,重新进行KDD过程。 2、阐述数据挖掘产生的背景和意义。 ?数据挖掘产生的背景:随着信息科技的进步以及电子化时代的到来,人们以更快捷、更容易、更廉价的方式获取和存储数据,使得数据及信息量以指数方式增长。据粗略估计,一个中等规模企业每天要产生100MB以上的商业数据。而电信、银行、大型零售业每天产生的数据量以TB来计算。人们搜集的数据越来越多,剧增的数据背后隐藏着许多重要的信息,人们希望对其进行更高层次的分析,以便更好的利用这些数据。先前的数据库系统可以高效的实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系与规则,无法根据现有的数据来预测未来的发展趋势。缺乏挖掘数据背后隐藏的知识的手段。导致了“数据爆炸但知识贫乏”的现象。于是人们开始提出“要学会选择、提取、抛弃信息”,并且开始考虑:如何才能不被信息淹没?如何从中及时发现有用的知识、提高信息利用率?如何从浩瀚如烟海的资料中选择性的搜集他们认为有用的信息?这给我们带来了另一些头头疼的问题:第一是信息过量,难以消化;第二是信息真假难以辨别;第三是信息安全难以保证;第四是信息形式不一致,难以统一处理?

数据挖掘离线作业

浙江大学远程教育学院 《数据挖掘》课程作业 姓名:学号: 年级:学习中心:————————————————————————————— 第一章引言 一、填空题 (1)数据库中的知识挖掘(KDD)包括以下七个步骤:数据清理、数据集成、数据选择、数据交换、数据挖掘、模式评估和知识表示 (2)数据挖掘的性能问题主要包括:算法的效率、可扩展性和并行处理 (3)当前的数据挖掘研究中,最主要的三个研究方向是:统计学、数据库技术和机器学习 (4)孤立点是指:一些与数据的一般行为或模型不一致的孤立数据 二、简答题 (1)什么是数据挖掘? 答:数据挖掘指的是从大量的数据中挖掘出那些令人感兴趣的、有用的、隐含的、先前未知的和可能有用的模式或知识。 (2)一个典型的数据挖掘系统应该包括哪些组成部分? 答:一个典型的数据挖掘系统应该包括以下部分:1、数据库、数据仓库或其他信息库,2、数据库或数据仓库服务器,3、知识库,4、数据挖掘引擎,5、模式评估魔磕,6图形用户界面。 (3)Web挖掘包括哪些步骤? 答:数据清理:(这个可能要占用过程60%的工作量)、数据集成、将数据存入数据仓库、建立数据立方体、选择用来进行数据挖掘的数据、数据挖掘(选择适当的算法来找到感兴趣的模式)、展现挖掘结果、将模式或者知识应用或者存入知识库。 (4)请列举数据挖掘应用常见的数据源。 (或者说,我们都在什么样的数据上进行数据挖掘) 答:常见的数据源包括关系数据库、数据仓库、事务数据库和高级数据库系统和信息库。其中高级数据库系统和信息库包括:空间数据库、时间数据库和时间序列数据库、流数据、多媒体数据库、面向对象数据库和对象——关系数据库、异种数据库和遗产数据库、文本数据库和万维网等。

数据挖掘作业

一:用R语言编程实现P56页19题 以19(2)为例编写R语言程序,其他小题程序类似1.余弦相似度 > x=c(0,1,0,1) > y=c(1,0,1,0) > xy=sum(x*y) > x1=sqrt(sum(x^2)) > y1=sqrt(sum(y^2)) > c=xy/(x1*y1) > c [1] 0 2.相关性 > x=c(0,1,0,1) > y=c(1,0,1,0) > xbar=mean(x) > ybar=mean(y) > len=length(x) > sx=sqrt((1/(len-1))*sum((x-xbar)^2)) > sy=sqrt((1/(len-1))*sum((y-ybar)^2)) > sxy=(1/(len-1))*sum((x-xbar)*(y-ybar)) > corrxy=sxy/(sx*sy) > corrxy

3.欧几里得距离 > x=c(0,1,0,1) > y=c(1,0,1,0) > dxy=sqrt(sum((x-y)^2)) > dxy [1] 2 4.Jaccard系数 > x=c(0,1,0,1) > y=c(1,0,1,0) > f00=f01=f10=f11=0 > len=length(x) > j=1 > while(j

大数据挖掘第二次作业

数据挖掘第二次作业 第一题: 1. a)Compute the Information Gain for Gender, Car Type and Shirt Size. b)Construct a decision tree with Information Gain. 答案: a)因为class分为两类:C0和C1,其中C0的频数为10个,C1的频数为10,所以class 元组的信息增益为Info(D)==1 1.按照Gender进行分类: Info gender(D)==0.971 Gain(Gender)=1-0.971=0.029 2.按照Car Type进行分类 Info carType(D)= =0.314 Gain(Car Type)=1-0.314=0.686 3.按照Shirt Size进行分类: Info shirtSize(D)=

=0.988 Gain(Shirt Size)=1-0.988=0.012 b)由a中的信息增益结果可以看出采用Car Type进行分类得到的信息增益最大,所以决策树为: 第二题: 2.(a) Design a multilayer feed-forward neural network (one hidden layer) for the data set in Q1. Label the nodes in the input and output layers. (b)Using the neural network obtained above, show the weight values after one iteration of the back propagation algorithm, given the training instance “(M, Family, Small)". Indicate your initial weight values and biases and the learning rate used. a)

数据挖掘作业

第5章关联分析 5.1 列举关联规则在不同领域中应用的实例。 5.2 给出如下几种类型的关联规则的例子,并说明它们是否是有价值的。 (a)高支持度和高置信度的规则; (b)高支持度和低置信度的规则; (c)低支持度和低置信度的规则; (d)低支持度和高置信度的规则。 5.3 数据集如表5-14所示: (a) 把每一个事务作为一个购物篮,计算项集{e}, {b, d}和{b, d, e}的支持度。 (b) 利用(a)中结果计算关联规则{b, d}→{e} 和 {e}→{b, d}的置信度。置信度是一个对称的度量吗? (c) 把每一个用户购买的所有商品作为一个购物篮,计算项集{e}, {b, d}和{b, d, e}的支持度。 (d) 利用(b)中结果计算关联规则{b, d}→{e} 和 {e}→{b, d}的置信度。置信度是一个对称的度量吗? 5.4 关联规则是否满足传递性和对称性的性质?举例说明。 5.5 Apriori 算法使用先验性质剪枝,试讨论如下类似的性质 (a) 证明频繁项集的所有非空子集也是频繁的 (b) 证明项集s 的任何非空子集s ’的支持度不小于s 的支持度 (c) 给定频繁项集l 和它的子集s ,证明规则“s’→(l – s’)”的置信度不高于s →(l – s)的置信度,其中s’是s 的子集 (d) Apriori 算法的一个变形是采用划分方法将数据集D 中的事务分为n 个不相交的子数据集。证明D 中的任何一个频繁项集至少在D 的某一个子数据集中是频繁的。 5.6 考虑如下的频繁3-项集:{1, 2, 3},{1, 2, 4},{1, 2, 5}, {1, 3, 4},{1, 3, 5},{2, 3, 4},{2, 3, 5},{3, 4, 5}。 (a)根据Apriori 算法的候选项集生成方法,写出利用频繁3-项集生成的所有候选4-项集。 (b)写出经过剪枝后的所有候选4-项集 5.7 一个数据库有5个事务,如表5-15所示。设min_sup=60%,min_conf = 80%。

数据仓库与数据挖掘课后习题答案

数据仓库与数据挖掘 第一章课后习题 一:填空题 1)数据库中存储的都是数据,而数据仓库中的数据都是一些历史的、存档的、归纳的、计算的数据。 2)数据仓库中的数据分为四个级别:早起细节级、当前细节级、轻度综合级、高度综合级。3)数据源是数据仓库系统的基础,是整个系统的数据源泉,通常包括业务数据和历史数据。4)元数据是“关于数据的数据”。根据元数据用途的不同将数据仓库的元数据分为技术元数据和业务元数据两类。 5)数据处理通常分为两大类:联机事务处理和联机事务分析 6)Fayyad过程模型主要有数据准备,数据挖掘和结果分析三个主要部分组成。 7)如果从整体上看数据挖掘技术,可以将其分为统计分析类、知识发现类和其他类型的数据挖掘技术三大类。 8)那些与数据的一般行为或模型不一致的数据对象称做孤立点。 9)按照挖掘对象的不同,将Web数据挖掘分为三类:web内容挖掘、web结构挖掘和web 使用挖掘。 10)查询型工具、分析型工具盒挖掘型工具结合在一起构成了数据仓库系统的工具层,它们各自的侧重点不同,因此适用范围和针对的用户也不相同。 二:简答题 1)什么是数据仓库?数据仓库的特点主要有哪些? 数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支

持管理决策。 主要特点:面向主题组织的、集成的、稳定的、随时间不断变化的、数据的集合性、支持决策作用 2)简述数据挖掘的技术定义。 从技术角度看,数据挖掘是从大量的、不完全的、有噪声的、模糊的、随机的实际数据中,提取隐含在其中的、人们不知道的、但又是潜在有用的信息和知识的过程。 3)什么是业务元数据? 业务元数据从业务角度描述了数据仓库中的数据,它提供了介于使用者和实际系统之间的语义层,使得不懂计算机技术的业务人员也能够读懂数据仓库中的数据 4)简述数据挖掘与传统分析方法的区别。 本质区别是:数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。数据挖掘所得到的信息应具有先前未知、有效和实用三个特征。 5)简述数据仓库4种体系结构的异同点及其适用性。 a.虚拟的数据仓库体系结构 b.单独的数据仓库体系结构 c.单独的数据集市体系结构 d.分布式数据仓库结构

数据挖掘第二章作业

数据挖掘第二章作业 2. a)用AM和PM表示的时间 离散的、定量的、区间的。 b)根据曝光表测出的亮度 离散的、定量的、比率的。 c)根据人的判断测出的亮度 连续的、定性的、序数的。 d)按度测出的0和360之间的角度 离散的、定量的、比率的。(可以是连续的,因为按度测出的角度值可以是实数值得属性) e)奥运会上授予的铜牌、银牌、和金牌 离散的、定量的、比率的。 f)海拔高度 连续的、定量的、比率的。 g)医院中的病人数 离散的、定量的、比率的。 h)书的ISBN号(查找网上的格式) 离散的、定性的、标称的。 i)用如下值表示的透光能力:不透明、半透明、透明 离散的、定性的、序数的。 j)军衔 离散的、定性的、序数的。 K)到校园中心的距离 连续的、定量的、比率的。 l)用每立方厘米克表示的物质密度 连续的、定量的、比率的。 m)外套寄存号码 离散的、定性的、标称的。 14. 用欧几里得度量来对这些大象进行比较或分组。 因为第一所有的属性测出的值都是数值性质的,并且根据取值规模的不同有很大的取值范围;其次同一对象的不同属性之间是没有什么关系的,所以不用相关性度量;再者在本题中每个对象的量值是重要的,而余弦相似度不考虑数据对象的量值;最后将属性值标准化成平均数为0,标准差为1后再应用欧几里得距离是适当的方法。

16. a)如果出现在一个文档中,tf’ij=tfij*log(m); 如果出现在每个文档中,tf’ij=0; b)这个标准化反应了如果一个词出现在每一个文档中,那么就不能通过这个词来区分不同的文档,如果这个词出现的很少,那么就可以通过这个词来区分不同的文档。 18. a)x=010******* y=010******* 汉明距离=3; f01=1; f10=2; f11=2; Jaccard相似度=2/(1+2+2)=0.4; b)汉明距离更相似于简单匹配系数,因为简单匹配系数=1—汉明距离/所有位数;Jaccard相似度更相似于余弦度量,因为他们都忽略了0-0匹配。 c)用Jaccard相似度更合适。因为我们想要知道两个个体有多少基因是共享的。 d)用汉明距离更适合。因为两个同物种的基因相同的部分很多,所以如果要比较则更关注于基因不同的部分,因此汉明距离更适合。

电子科大数据挖掘作业1-6

数据挖掘课后习题 数据挖掘作业1——6 第一章绪论 1)数据挖掘处理的对象有哪些?请从实际生活中举出至少三种。 1、关系数据库 2、数据仓库 3、事务数据库 4、高级数据库系统和数据库应用如空间数据库、时序数据库、文本数据库和多媒体数据库等,还可以是 Web 数据信息。 实际生活的例子: ①电信行业中利用数据挖掘技术进行客户行为分析,包含客户通话记录、通话时间、所开通的服务等,据此进行客户群体划分以及客户流失性分析。 ②天文领域中利用决策树等数据挖掘方法对上百万天体数据进行分类与分析,帮助天文学家发现其他未知星体。 ③市场业中应用数据挖掘技术进行市场定位、消费者分析、辅助制定市场营销策略等。 2)给出一个例子,说明数据挖掘对商务的成功是至关重要的。该商务需要什么 样的数据挖掘功能?它们能够由数据查询处理或简单的统计分析来实现吗? 以一个百货公司为例,它可以应用数据挖掘来帮助其进行目标市场营销。运用数据挖掘功能例如关联规则挖掘,百货公司可以根据销售记录挖掘出强关联规则,来诀定哪一类商品是消费者在购买某一类商品的同时,很有可能去购买的,从而促使百货公司进行目标市场营销。数据查询处理主要用于数据或信息检索,没有发现关联规则的方法。同样地,简单的统计分析没有能力处理像百货公司销售记录这样的大规模数据。

第二章数据仓库和OLAP技术 1)简述数据立方体的概念、多维数据模型上的OLAP操作。 ●数据立方体 数据立方体是二维表格的多维扩展,如同几何学中立方体是正方形的三维扩展一样,是一类多维矩阵,让用户从多个角度探索和 分析数据集,通常是一次同时考虑三个维度。数据立方体提供数据 的多维视图,并允许预计算和快速访问汇总数据。 ●多维数据模型上的OLAP操作 a)上卷(roll-up):汇总数据 通过一个维的概念分层向上攀升或者通过维规约 b)下卷(drill-down):上卷的逆操作 由不太详细的数据到更详细的数据,可以通过沿维的概念分层向下或引入新的维来实现 c)切片和切块(slice and dice) 投影和选择操作 d)转轴(pivot) 立方体的重定位,可视化,或将一个3维立方体转化为一个2维平面序列 2)OLAP多维分析如何辅助决策?举例说明。 OLAP是在多维数据结构上进行数据分析的,一般在多维数据上切片、切块成简单数据来进行分析,或是上卷、下卷来分析。OLAP要查询 大量的日常商业信息,以及大量的商业活动变化情况,如每周购买量的 变化值,经理通过查询变化值来做决策。 例如经理看到利润小于预计值是,就会去深入到各地区去查看产品利润情况,这样他会发现一些比较异常的数据。经过进一步的分析和追 踪查询可以发现问题并解决 3)举例说明OLAP的多维数据分析的切片操作。 切片就是在某两个维上取一定区间的维成员或全部维成员。 如用三维数组表示为(地区,时间,产品,销售额),如果在地区维度上选定一个维成员,就可以得到在该地区的一个切片(关于时间和产 品的切片)。

数据挖掘在线作业

数据挖掘 您的本次作业分数为:95分单选题 1.【第001章】孤立点挖掘适用于下列哪种场合? A 目标市场分析 B 购物篮分析 C 模式识别 D 信用卡欺诈检测 正确答案:D 单选题 2.【第01章】数据挖掘应用和一些常见的数据统计分析系统的最主要区别在于()。 A 所涉及的算法的复杂性 B 所涉及的数据量 C 计算结果的表现形式 D 是否使用了人工智能技术 正确答案:B 单选题 3.【第01章】帮助市场分析人员从客户的基本信息库中发现不同的客户群,通常所使用的数据挖掘功能是()。 A 关联分析 B 分类和预测 C 聚类分析 D 孤立点分析 E 演变分析 正确答案:C 单选题 4.【第01章】假设现在的数据挖掘任务是解析数据库中关于客户的一般特征的描述,通常所使用的数据挖掘功能是()。 A 关联分析 B 分类和预测

C 孤立点分析 D 演变分析 E 概念描述 正确答案:E 单选题 5.【第01章】下面的数据挖掘的任务中,()将决定所使用的数据挖掘功能。 A 选择任务相关的数据 B 选择要挖掘的知识类型 C 模式的兴趣度度量 D 模式的可视化表示 正确答案:B 单选题 6.【第01章】根据顾客的收入和职业情况,预测他们在计算机设备上的花费,所使用的相应数据挖掘功能是()。 A 关联分析 B 分类和预测 C 演变分析 D 概念描述 正确答案:B 单选题 7.【第01章】下列几种数据挖掘功能中,()被广泛的应用于股票价格走势分析。 A 关联分析 B 分类和预测 C 聚类分析 D 演变分析 正确答案:D 单选题 8.【第01章】下列几种数据挖掘功能中,()被广泛的用于购物篮分析。 A 关联分析

20090307113曹晨《数据挖掘》期末大作业

数据挖掘原理、算法及应用 学号: 学生所在学院:信息工程学院 学生姓名:颜伟泰 任课教师:汤亮 教师所在学院:信息工程学院 2015年12月

12年级 决策树分类算法 颜伟泰 12软件(1)班 一、摘要 (一)、决策树算法简介:决策树算法是一种归纳分类算法,它通过对训练集的学 习,挖掘出有用的规则,用于对新集进行预测。决策树算法可设计成具有良好可伸 缩性的算法,能够很好地与超大型数据库结合,处理相关的多种数据类型,并且, 其运算结果容易被人理解,其分类模式容易转化成分类规则。 (二)、算法思想:该算法的基本思想是:首先找出所有的频集,这些项集出现 的频繁性至少和预定义的最小支持度一样。然后由频集产生强关联规则,这些规 则必须满足最小支持度和最小可信度。然后使用第1步找到的频集产生期望的规 则,产生只包含集合的项的所有规则,其中每一条规则的右部只有一项,这里采 用的是中规则的定义。一旦这些规则被生成,那么只有那些大于用户给定的最小 可信度的规则才被留下来。为了生成所有频集,使用了递归的方法。 (三)、算法运用领域: (1)Apriori算法广泛应用于商业中,应用于消费市场价格分析中,它能够很快 的求出各种产品之间的价格关系和它们之间的影响。通过数据挖掘,市场商人可 以瞄准目标客户,采用个人股票行市、最新信息、特殊的市场推广活动或其他一 些特殊的信息手段,从而极大地减少广告预算和增加收入。百货商场、超市和一 些老字型大小的零售店也在进行数据挖掘,以便猜测这些年来顾客的消费习惯。 (2)Apriori算法应用于网络安全领域,比如时候入侵检测技术中。早期中大 型的电脑系统中都收集审计信息来建立跟踪档,这些审计跟踪的目的多是为了性 能测试或计费,因此对攻击检测提供的有用信息比较少。它通过模式的学习和训 练可以发现网络用户的异常行为模式。采用作用度的Apriori算法削弱了Apriori 算法的挖掘结果规则,是网络入侵检测系统可以快速的发现用户的行为模式,能 够快速的锁定攻击者,提高了基于关联规则的入侵检测系统的检测性。 (3)Apriori算法应用于高校管理中。随着高校贫困生人数的不断增加,学校 管理部门资助工作难度也越加增大。针对这一现象,提出一种基于数据挖掘算法 的解决方法。将关联规则的Apriori算法应用到贫困助学体系中,并且针对经典 Apriori挖掘算法存在的不足进行改进,先将事务数据库映射为一个布尔矩阵, 用一种逐层递增的思想来动态的分配内存进行存储,再利用向量求"与"运算,寻 找频繁项集。实验结果表明,改进后的Apriori算法在运行效率上有了很大的提 升,挖掘出的规则也可以有效地辅助学校管理部门有针对性的开展贫困助学工作。 (4)Apriori算法被广泛应用于移动通信领域。移动增值业务逐渐成为移动通 信市场上最有活力、最具潜力、最受瞩目的业务。随着产业的复苏,越来越多的 增值业务表现出强劲的发展势头,呈现出应用多元化、营销品牌化、管理集中化、 合作纵深化的特点。针对这种趋势,在关联规则数据挖掘中广泛应用的Apriori 算法被很多公司应用。依托某电信运营商正在建设的增值业务Web数据仓库平台,

数据挖掘第二次作业

1.假设最小支持度为40%,最小置信度为70%。对于下表,使用Apriori 算法求解所有的频繁项集,在此基础上推导出所有的强关联规则,并给出相应的支持度和置信度。 答: 最小支持数为: 5*40% =2

因此所有的频繁项集为:{l1}, {l2}, {L3}, {L4}, {L6},{l1,l2}, {l1,l3}, {l1,l6}, {l2,l4}, {l2,l6}, {l3,l6},{{l1,l2,l6}},{l1,l3,l6}} {l1,l2}的非空子集为{l1}, {l2} I1=>I2 support = 3/5 =60% confidence =3/4 =75% I2=>I1 support = 3/5 =60% confidence =3/4 =75% {l1,l3}的非空子集为{l1}, {l3} I1=>I3 support = 2/5 =40% confidence =2/4 =50% I3=> I1 support = 2/5 =40% confidence =2/2=100% {l1,l6}的非空子集为{l1}, {l6} I1=>I6 support = 3/5 =60% confidence =3/4 =75% I6 => l1 support = 3/5 =60% confidence =3/4 =75% {l2,l4}的非空子集为{l2}, {l4} I2=>I4 support = 2/5 =40% confidence =2/4 =50% I4 => l2 support = 2/5 =40% confidence =2/2 =100% {l2,l6}的非空子集为{l2}, {l6} I2=> l6 support = 3/5 =60% confidence =3/4 =75% I6=> I2 support = 3/5 =60% confidence =3/4 =75% {l3,l6}的非空子集为{l3}, {l6} I3=> l6 support = 2/5 =40% confidence =2/2=100% I6=>I3 support = 2/5 =40% confidence =2/4=50%

数据挖掘概念与技术-第1章

数据挖掘概念与技术(原书第3版) 第一章课后习题及解答 1.9习题 1.1什么是数据挖掘?在你的回答中,强调以下问题: (a)它是又一种广告宣传吗? (b)它是一种从数据库、统计学、机器学习和模式识别发展而来的技术的简单转换或应用吗? (c)我们提出了一种观点,说数据挖掘是数据库技术进化的结果。你认为数据挖掘也是机器学习研究进化的结果吗?你能基于该学科的发展历史提出这一观点吗?针对统计学和模式识别领域,做相同的事。 (d)当把数据挖掘看做知识发现过程时,描述数据挖掘所涉及的步骤。 答: 狭义的数据挖掘是知识发现过程中的一个步骤,广义的数据挖掘通常用来表示整个知识发现过程,我们一般采用广义的观点:数据挖掘是从大量数据中挖掘有趣模式和知识的过程。数据源包括数据库、数据仓库、WEB、其他信息存储库或动态地流入系统的数据。 a.它不是一种广告宣传,它基于实际的需求,提供从数据中发现知识的工具。 b.数据挖掘不是从数据库、统计学、机器学习和模式识别发展而来的技术的简单转换或应用,它可以看做是信息技术的自然进化,是一些相关学科和应用领域的交汇点。 c. 数据挖掘是数据库技术进化的结果,也是机器学习、统计学和模式识别领域技术进化的结果。 机器学习是一个快速成长的学科,这一领域中的监督学习、无监督学习、半监督学习和主动学习问题,与数据挖掘高度相关,数据挖掘和机器学习有许多相似之处,对于分类和聚类任务,机器学习研究通常关注模型的准确率。除准确率之外,数据挖掘研究非常强调挖掘方法在大型数据集上的有效性和可伸缩性,以及处理复杂数据类型的方法,开发新的非传统的方法。 统计学研究数据的收集、分析、解释和表示。数据挖掘和统计学具有天然联系。(1)统计模型是一组数学函数,它们利用随机变量及其概率分布刻画目标类对象的行为,可以是数据挖掘的结果,也可以是数据挖掘任务的基础。(2)统计学研究开发一些使用数据和统计模型进行预测和预报的工具,描述统计可以帮助理解数据;推理统计学用某种方式对数据建模,可以解释观测中的随机性和确定性,并用来提取关于所考察的过程中或总体的结论。(3)统计假设检验使用实验数据进行统计判决,可以用来验证数据挖掘结果。 模式识别领域??? d. 当把数据挖掘看做知识发现过程时,数据挖掘包括以下几个步骤:(1)在数据库中进行数据清理和数据集成;(2)在数据仓库中进行数据选择和数据变换;(3)数据挖掘,使用智能方法提取数据模式;(4)进行模式评估和知识表示 1.2数据库与数据仓库有何不同?它们有哪些相似之处? 答: 数据库系统,也称数据库管理系统(DBMS),由一组内部相关的数据(称做数据库)和一组管理和存取数据的软件程序组成。关系数据库是表的汇集,可以通过数据库查询访问,是数据挖掘的最常见、最丰富的信息源,因此它是我们数据挖掘研究的一种主要数据形式。 数据仓库是一种用于长期存储数据的仓库,这些数据来自多个数据源,是经过组织的,以便支持管理决策。这些数据在一种统一的模式下存放,并且通常是汇总的。数据仓库提供一些

数据挖掘作业

1?下表由雇员数据库的训练数据组成,数据已泛化。例如,年龄“ 31…3表示31到35的之 间。对于给定的行,count表示department, status, age和salary在该行上具有给定值的元组数。status是类标号属性。 1)如何修改基本决策树算法,以便考虑每个广义数据元组(即每个行)的count。 Status分为2个部分:Department分为4个部分: Senior 共计52 Sales 共计110 Junior 共计113 Systems 共计31 Marketi ng 共计14 Secretary 共计10 Age分为6个部分:Salary分为6各部分: 21-25 共计20 26K …30K 共计46 26-30 共计49 31K …35K 共计40 31-35 共计79 36K-40K 共计 4 36-40 共计10 41K-45K 共计 4 41-45 共计3 46K-50K 共计63 46-50 共计4 66K-70K 共计8 —位

位 位 位 由以上的计算知按信息增益从大到小对属性排列依次为:salary、age、department,所以定 salary作为第一层,之后剩下的数据如下: 由这个表可知department和age的信息增益将都为0。所以第二层可以为age也可以为 department。 2)构造给定数据的决策树。 由上一小问的计算所构造的决策树如下:

3)给定一个数据元组, 它在属性department, age 和salary 上的值分别为 “ systems "“ 26 (30) 和“46...50K 。"该元组status 的朴素贝叶斯分类结果是什么? P(status=se nior)=52/165=0.3152 P(status=ju nior)=113/65=0.6848 P(departme nt=systems|status=se ni or)=8/52=0.1538 P(departme nt=systems|status=ju nior)=23/113=0.2035 P(age=26 ?-30|status=se nior)=1/52=0.0192 P(age=26…30|status=ju nior)=49/113=0.4336 P(salary=46K- 50K|status=se nior)=40/52=0.7692 P(salary=46K- 50K|status=ju nior)=23/113=0.2035 使用上面的概率,得到: P(X|status=se ni or)=P(departme nt=systems|status=se ni or)*P(age= 26 ?-30|status=se ni or)* P(salary=46K- 50K|status=se nior)=0.0023 P(X|status=j uni or)=P(departme nt=systems|status=j uni or)*P(age= 26 ?-30|status=j unior)* P(salary=46K- 50K|status= ju ni or)=0.0180 26:30 :35 Senior Salary 26K:30K Junior 41K:45K Jun ior Senior Jun ior Jun ior 66K:70K 31K:35K 46K:50K 21:25 36:40 Jun ior Sen ior 36K:40 Sen ior

数据挖掘作业完整版

数据挖掘作业 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

1、给出K D D的定义和处理过程。 KDD的定义是:从大量数据中提取出可信的、新颖的、有用的且可以被人理解的模式的高级处理过程。因此,KDD是一个高级的处理过程,它从数据集中识别出以模式形式表示的知识。这里的“模式”可以看成知识的雏形,经过验证、完善后形成知识:“高级的处理过程”是指一个多步骤的处理过程,多步骤之间相互影响反复调整,形成一种螺旋式上升的过程。 KDD的全过程有五个步骤:1、数据选择:确定发现任务的操作对象,即目标数据,它是根据用户的需要从原始数据库中抽取的一组数据;2、数据预处理:一般可能包括消除噪声、推到技术却只数据、消除重复记录、完成数据类型转换等;3、数据转换:其主要目的是消减数据维数或降维,即从初始特征中找出真正有用的特征以减少数据开采时要考虑的特征或变量个数;4、数据挖掘:这一阶段包括确定挖掘任务/目的、选择挖掘方法、实施数据挖掘;5、模式解释/评价:数据挖掘阶段发现出来的模式,经过用户或机器的评价,可能存在冗余或无关的模式,需要剔除;也有可能模式不满足用户的要求,需要退回到整个发现阶段之前,重新进行KDD过程。 2、阐述数据挖掘产生的背景和意义。 数据挖掘产生的背景:随着信息科技的进步以及电子化时代的到来,人们以更快捷、更容易、更廉价的方式获取和存储数据,使得数据及信息量以指数方式增长。据粗略估计,一个中等规模企业每天要产生100MB以上的商业数据。而电信、银行、大型零售业每天产生的数据量以TB来计算。人们搜集的数据越来越多,剧增的数据背后隐藏着许多重要的信息,人们希望对其进行更高层次的分析,以便更好的利用这些数据。先前的数据库系统可以高效的实现数据的录入、查询、统计等功能,但无法发现数据中存在的关系与规则,无法根据现有的数据来预测未来的发展趋势。缺乏挖掘数据背后隐藏的知识的手段。导致了“数据爆炸但知识贫乏”的现象。于是人们开始提出“要学会选择、提取、抛弃信息”,并且开始考虑:如何才能不被信息淹没如何从中及时发现有用的知识、提高信息利用率如何从浩瀚如烟海的资料中选择性的搜集他们认为有用的信息这给我们带来了另一些头头疼的问题:第一是信息过量,难以消化;第二是信息真假难以辨别;第三是信息安全难以保证;第四是信息形式不一致,难以统一处理

数据挖掘复习题

第一章 1.数据挖掘的定义? 从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。 2.数据挖掘的源是否必须是数据仓库的数据?可以有哪些来源? 关系数据库 数据仓库 事务数据库 高级数据 3.数据挖掘的常用方法? 聚类分析 决策树 人工神经网络 粗糙集 关联规则挖掘 统计分析 4.数据挖掘的过程包括哪些步骤,每一步具体包括哪些内容? 5.数据挖掘与数据仓库的关系?(联系和区别) 联系: 数据仓库为数据挖掘提供了更好的、更广泛的数据源; 数据仓库为数据挖掘提供了新的支持平台; 数据仓库为更好地使用数据挖掘工具提供了方便; 数据挖掘为数据仓库提供了更好的决策支持; 数据挖掘对数据仓库的数据组织提出了更高的要求; 数据挖掘为数据仓库提供了广泛的技术支持。 区别: 数据仓库是存数据,数据挖掘是用数据。 第二章 1.数据仓库的定义 数据仓库是一个面向主题的、集成的、随时间而变化的、不容易丢失的数据集合,支持管理部门的决策制定过程 2.数据仓库数据的四大基本特征: 面向主题的 集成的 不可更新的 随时间变化的 3.数据仓库体系结构有3个独立的数据层次:

信息获取层、信息存储层、信息传递层 4.粒度的定义?它对数据仓库有什么影响? (1)是指数据仓库的数据单位中保存数据细化或综合程度的级别。粒度越小,细节程度越高,综合程度越低,回答查询的种类就越多; (2) 影响存放在数据仓库中的数据量大小; 影响数据仓库所能回答查询问题的细节程度。 5.在数据仓库中,数据按照粒度从小到大可分为死哥级别: 早期细节级、当前细节级、轻度细节级和高度细节级。 6.数据分割的标准:可按日期、地域、业务领域、或按多个分割标准的组合,但一般包括日期项。 7.数据仓库设计中,一般存在着三级数据模型:概念数据模型、逻辑数据模型、物理数据模型 8.数据仓库涉及步骤 概念模型设计、技术准备工作、逻辑模型设计、物理模型设计、数据仓库的生成、数据仓库的使用和维护 9.数据装入时,并不是一次就将准备装入的数据全部装入数据仓库,而是按照逻辑模型设计中所确定和分析的主题域,先装入并生成某一主题域。 10.建立数据仓库的步骤并不是一成不变的,但最终应该满足用户的分析需求。 第三章 1.联机事务处理与联机分析处理的区别? 联机事务处理(On-Line Transaction Processing,OLTP) 作为数据管理手段,主要用于事务处理,但它对分析处理一直不能令人满意。 联机分析处理(On-Line Analytical Processing,OLAP) 是决策支持系统的有机组成部分,利用存储在数据仓库中的数据完成各种分析操作,并以直观易懂的形式将分析结果返回给决策分析人员。 2.OLAP的主要特征 快速性、可分析性、多维性、信息性。 3. 钻取Drill/Roll up , Drill down 改变维的层次,变换分析的粒度。 分向上钻取和向下钻取。 向上钻取:在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数。 向下钻取:从汇总数据深入到细节数据进行观察或增加新维。 4.ROLAP是基于关系数据库的OLAP实现,而MOLAP是基于多为数据结构组织的OLAP实现。 5.OLAP根据其数据存储格式可分为三类: 关系OLAP、多维OLAP、混合OLAP 6.雪花型模式是对星型模式维表的进一步层次化和规范化来消除冗余 的数据。 7.OLAP的衡量标准 (1)透明性准则 OLAP在体系结构中的位置和数据源对用户是透明的。 (2)动态的稀疏矩阵处理准则 对任意给定的稀疏矩阵,存在且仅存在一个最优的物理视图; (3)维的等同性准则 每一数据维在数据结构和操作能力上都是等同的。

习题1(第一章数据挖掘基础概念)

习题1(第一章数据挖掘基础概念) 1.什么是数据挖掘? 解答: 数据挖掘是指从大规模的数据中抽取或挖掘出感兴趣的知识或模式的过程或方法。 2.定义下列数据挖掘功能:特征化、区分、关联和相关分析、分类、预测、聚类和演变分 析。使用你熟悉的现实生活的数据库,给出每种数据挖掘功能的例子。 解答: 特征化是一个目标类数据的一般特性或特性的汇总。例如,学生的特征可被提出,形成所有大学的计算机科学专业一年级学生的轮廓,这些特征包括平均成绩(GPA :Grade point average) 的信息,还有所修的课程的最大数目。 区分是将目标类数据对象的一般特性与一个或多个对比类对象的一般特性进行比较。例如,具有高GPA 的学生的一般特性可被用来与具有低GPA 的一般特性比较。 最终的描述可能是学生的一般可比较的轮廓,就像75%具有高GPA 的学生是四年级计算机科学专业的学生而65%具有低GPA 的学生不是。 关联是指发现关联规则,这些规则表示一起频繁发生在给定数据集的特征值的条件。例如,一个数据挖掘系统可能发现的关联规则为: major(X, “ computing science ” ) ?owns(X, “ personal computer ” ) [support=12%, confidence=98%] 其中,X 是表示学生的变量。这个规则指出正在学习的学生中,12%(支持度)主修计算机科学并且拥有一台个人计算机,这些学生中一个学生拥有一台个人电脑的概率是98%(置信度或确定度)。 分类与预测不同,因为前者的作用是构造一系列能描述和区分数据类型或概念的模型(或功能),而后者是建立一个模型去预测缺失的或无效的、并且通常是数字的数据值。它们的相似性是他们都是预测的工具:分类被用作预测目标数据的类的标签,而预测典型的应用是预测缺失的数字型数据的值。 聚类根据数据内部的相似性,最小化类之间的相似性的原则进行聚类或分组,形成的每一簇可以被看作一个对象类。聚类也用于分类法组织形式,将观测组织成类分层结构,把类似的事件组织在一起。 数据演变分析是描述和模型化随时间变化的对象的规律或趋势。尽管这可能包括时间相关数据的特征化、区分、关联和相关分析、分类和预测,这种分析的明确特征包括时间序列数据分析、序列或周期模式匹配、和基于相似性的数据分析。 3.给出一个例子,其中数据挖掘对于商务的成功是至关重要的。并说明该商务需要什么数 据挖掘功能?它们能够由数据查询处理或简单的统计分析来实现吗? 解答: 以一个百货公司为例,它可以应用数据挖掘来帮助其进行目标市场营销。运用数据挖掘功能例如关联规则挖掘,百货公司可以根据销售记录挖掘出强关联规则,来决定哪一类商品是消费者在购买某一类商品的同时,很有可能去购买的,从而促使百货公司进行目标市场营销。数据查询处理主要用于数据或信息检索,没有发现关联规则的方法。 同样地,简单的统计分析没有能力处理像百货公司销售记录这样的大规模数据。 4.数据仓库和数据库有什么不同?有哪些相似之处? 解答:

相关主题
文本预览
相关文档 最新文档