文档详情

第13章-数据挖掘.ppt

发布:2018-10-07约5.47千字共27页下载文档
文本预览下载声明
LOGO 第4部分 其它高级主题 第13章 数据挖掘 高级数据库系统及其应用 * * 第13章 数据挖掘 数据挖掘综述 13.1 数据关联模式 13.2 决策树 13.3 聚类 13.4 基于序列的相似搜索 13.5 * * 13.1 数据挖掘(Data Mining, DM)综述 DM定义 是一种需要很少用户定义参数、高度抽象复杂且无法用常规SQL表达的查询。 主要目标 从大数据集中发现有趣的趋势或模式,以指导未来的决策行为,或引导后续更细致的数据分析研究。 应用特点 必须面向非常大数据集处理,针对数据集大小是否具有线性可伸缩性(scalability),是判断一个DM方法是否有效的重要标准。 * * DM与知识发现过程(KDD)的关系 在实际应用中,DM并不只是应用一两个算法的简单问题,而是通常比这复杂得多,且或多或少会涉及KDD的其它过程步。 * * 本章将介绍的DM知识体系及特点 DM现已发展成为数据处理技术的一个重要分支学科,包含丰富的相关知识,有自己独立的体系。 而在本章中 只限于介绍一些重要的、已在主流RDBMS产品之数据分析扩展套件中实现的DM功能,并侧重考虑如何充分利用DB查询处理技术,来优化某些传统DM算法的性能和可伸缩性。 这显然与其它数据挖掘专著所基于的视角有所不同。 * * 13.2 数据关联模式 13.2.1 频繁项集 13.2.2 冰川查询 13.2.3 挖掘关联规则 挖掘数据 关联模式 对给定的数据集,通过搜索不同数据项(items)之间的关联性,来寻找频繁且有趣的数据模式。 典型应用 市场 购物篮分析 通过分析顾客购买物品的交易数据记录集(每条记录描述一个顾客的一次购买交易物品项目集),来发现一些顾客经常同时购买的物品类。 这个信息可用于改善商店中物品摆放布局,或改进商店的物品目录板。 * * 13.2.1 频繁项集 用于购物篮分析的一个购买实例,图13.1 (Purchases) 将记录按交易事务(由transid标识)排序分组,同组各元组合在一起,构成了一个购买交易。 该表中有冗余。然而,这种有冗余的临时关系,更便于演示寻找频繁项集的算法思想。 观察记录数据不难发现 “75%的事务同时购买了pen和ink” * * 计算频繁项集的经典算法 -Priori算法(1) 算法涉及的几个重要概念 项集(itemset) 代表一组物品或一组项目 项集支持度(support) 包含该项集的事务占DB中所有事务的比例。 在我们的例子中,项集{pen,ink}的支持度为75% 频繁项集(frequent itemset) 指支持度超过用户指定阈值(minsup)的项集 Priori性质 每个频繁项集的任何子集必须也是频繁项集 算法13.1 寻找频繁项集的Priori算法 * * 计算频繁项集的经典算法 -Priori算法(2) 算法涉及的几个重要概念 算法13.1 寻找频繁项集的Priori算法 该算法可以进一步应用Priori性质来求精 以 “频繁项集的所有子集也是频繁项集”为检查标准,可进一步减少候选集数目。从而有助于减少了扫描Purchases关系期间需执行的计算量。 * * 13.2.2 冰川查询(1) 仍考虑图13.1的Purchases关系实例。假设我们要查找:满足“顾客购买item最少5次”条件的所有customer , item对,这个请求可用SQL语句表达如下: SELECT P.custid, P.item, SUM(P.qyt) FROM Purchases P GROUP BY P.custid, P.item HAVING SUM(P.qty) 5 概念赋值策略:对每个customer, item对,需要检查SUM(P.qyt)是否大于5。 如果主存可容纳所有这样对的值,则扫描一次Purchases关系即可。否则,需使用额外的排序和散列,查询赋值计划的代价会很大。 这个概念赋值策略没有充分利用查询的一个重要特性:HAVING条件限制。 虽然分组数可能非常大,但满足HAVING条件的分组数缺往往不多――就象冰川的顶尖通常总是很小一样。 * * 13.2.2 冰川查询(2) 冰川查询的一般形式 SELECT R.A1, R.A2,…, R.Ak, aggr(R.B) FROM Relation R GROUP BY R.A1, R.A2,…, R.Ak HAVING aggr(R.B) constant 比较冰川查询与找频繁项集问题,有一个惊人的相似性。 要求customer, item组满
显示全部
相似文档