具体描述
编辑推荐
《数据仓库与数据挖掘实践》力求繁中取简,让读者易学易懂:信息系统安全等级保护标准比较多,覆盖了等级保护的各个阶段,并且对每个保护等级都做了详细的规定和描述,阅读起来难免有些眼花缭乱,不易理解和掌握。本书对相关标准进行了梳理,主要以第三级系统安全保护为主线来介绍等级保护的原理和方法,为进一步掌握和运用相关标准打下良好的基础。
内容简介
《数据仓库与数据挖掘实践》系统地介绍了数据仓库和数据挖掘技术,全本由两部分组成,第1章到第3章介绍数据仓库的基本概念和相关技术,第4章到第11章介绍数据挖掘的基本概念和各种算法,包括数据仓库构建、OLAP技术、分类方法、聚类方法、关联分析、序列模式挖掘方法、回归和时序分析、粗糙集理论、文本挖掘、Web挖掘和空间数据挖掘方法等。
《数据仓库与数据挖掘实践》既注重原理,又注重实践,配有大量图表、示例和练习题,内容丰富,概念讲解清楚,表达严谨,逻辑性强,语言精练,可读性好。
《数据仓库与数据挖掘实践》既便于教师课堂讲授,又便于自学者阅读。适合作为高等院校高年级学生和研究生“数据仓库和数据挖掘”或“数据挖掘算法”课程的教材。
作者简介
李春葆,武汉大学计算机学院教授,主持和参加3S系统集成关键技术的研究(国家自然科学基金重点科技攻关项目,49631050)、城市地理信息系统标准规范的研究(国家测绘局项目)、伊藤算法及其在动态仿真优化中的理论研究(60873114/F020102)、湖北省财政厅三查管理信息系统、湖北省财政厅外汇管理信息系统、湖北省财政厅财政监督管理信息系统、武汉英华ERP系统等项目。
内页插图
目录
第1章 数据仓库概述
1.1 数据仓库及其历史
1.1.1 数据库技术的发展
1.1.2 什么是数据仓库
1.2 数据仓库系统及其开发工具
1.2.1 数据仓库系统的组成
1.2.2 ETL
1.2.3 数据仓库和数据集市的关系
1.2.4 元数据及其管理
1.3 数据仓库系统开发工具
1.4 数据仓库与操作型数据库的关系
1.4.1 从数据库到数据仓库
1.4.2 数据仓库为什么是分离的
1.4.3 数据仓库与操作型数据库的对比
1.4.4 ODS
1.5 商务智能与数据仓库的关系
练习题1
思考题1
第2章 数据仓库设计
2.1 数据仓库设计概述
2.1.1 数据仓库设计原则
2.1.2 数据仓库构建模式
2.1.3 数据仓库设计步骤
2.2 数据仓库的规划和需求分析
2.2.1 数据仓库的规划
2.2.2 数据仓库的需求分析
2.3 数据仓库的建模
2.3.1 多维数据模型及相关概念
2.3.2 多维数据模型的实现
2.3.3 数据仓库建模的主要工作
2.3.4 几种常见的基于关系数据库的多维数据模型
2.4 数据仓库的物理模型设计
2.4.1 确定数据的存储结构
2.4.2 确定索引策略
2.4.3 确定存储分配
2.5 数据仓库的部署和维护
2.5.1 数据仓库的部署
2.5.2 数据仓库的维护
2.6 一个简单的数据仓库SDWS设计示例
2.6.1 SDWS的需求分析
2.6.2 SDWS的建模
2.6.3 基于SQLServer2008设计SDWS
练习题2
思考题2
第3章 OLAP技术
3.1 OLAP概述
3.1.1 什么是OLAP
3.1.2 OLAP技术的特性
3.1.3 OLAP和OLTP的区别
3.1.4 数据仓库与OLAP的关系
3.1.5 OLAP分类
3.2 OLAP的多维数据模型
3.2.1 多维数据模型的定义
3.2.2 OLAP的基本分析操作
3.2.3 一个简单的多维数据模型
3.3 OLAP实现
3.3.1 数据立方体的有效计算
3.3.2 索引OLAP数据
3.3.3 OLAP查询的有效处理
练习题3
思考题3
第4章 数据挖掘概述
4.1 什么是数据挖掘
4.1.1 数据挖掘的定义
4.1.2 数据挖掘的知识表示
4.1.3 数据挖掘的主要任务
4.1.4 数据挖掘的发展
4.1.5 数据挖掘的对象
4.1.6 数据挖掘的分类
4.1.7 数据挖掘与数据仓库及OLAP的关系
4.1.8 数据挖掘的应用
4.2 数据挖掘系统
4.2.1 数据挖掘系统的结构
4.2.2 数据挖掘系统的设计
4.2.3 常用的数据挖掘系统及其发展
4.3 数据挖掘过程
4.3.1 数据挖掘步骤
4.3.2 数据清理
4.3.3 数据集成
4.3.4 数据变换
4.3.5 数据归约
4.3.6 离散化和概念分层生成
4.3.7 数据挖掘的算法
4.4 数据挖掘的未来展望
练习题4
思考题4
第5章 关联分析
5.1 关联分析的概念
5.1.1 事务数据库
5.1.2 关联规则及其度量
5.1.3 频繁项集
5.1.4 挖掘关联规则的基本过程
5.2 Apriori算法
5.2.1 Apriori性质
5.2.2 Apriori算法
5.2.3 由频繁项集产生关联规则
5.2.4 提高Apriori算法的有效性
5.2.5 非二元属性的关联规则挖掘
5.3 频繁项集的紧凑表示
5.3.1 最大频繁项集
5.3.2 频繁闭项集
5.4 FP-growth算法
5.4.1 FP-growth算法框架
5.4.2 FP树构造
5.4.3 由FP树产生频繁项集
5.5 多层关联规则的挖掘
5.5.1 多层关联规则的挖掘概述
5.5.2 多层关联规则的挖掘算法
5.5.3 多维关联规则
5.6 其他类型的关联规则
5.6.1 基于约束的关联规则
5.6.2 负关联规则
5.7 SQLServer挖掘关联规则的示例
5.7.1 建立DM数据库
5.7.2 建立关联挖掘项目
5.7.3 部署关联挖掘项目并浏览结果
练习题5
思考题5
第6章 序列模式挖掘
6.1 序列模式挖掘概述
6.1.1 序列数据库
6.1.2 序列模式挖掘算法
6.2 Apriori类算法
6.2.1 AprioriAll算法
6.2.2 AprioriSome算法
6.2.3 DynamicSome算法
6.2.4 GSP算法
6.2.5 SPADE算法
6.3 模式增长框架的序列挖掘算法
6.3.1 FreeSpan算法
6.3.2 PrefixSpan算法
练习题6
思考题6
第7章 分类方法
7.1 分类过程
7.1.1 学习阶段
7.1.2 分类阶段
7.2 k-最邻近分类算法
7.3 决策树分类算法
7.3.1 决策树
7.3.2 建立决策树的ID3算法
7.3.3 建立决策树的C4.5 算法
7.4 贝叶斯分类算法
7.4.1 贝叶斯分类概述
7.4.2 朴素贝叶斯分类
7.4.3 树增强朴素贝叶斯分类
7.5 神经网络算法
7.5.1 生物神经元和人工神经元
7.5.2 人工神经网络
7.5.3 前馈神经网络用于分类
7.5.4 SQLServer中神经网络分类示例
7.6 支持向量机
7.6.1 线性可分时的二元分类问题
7.6.2 线性不可分时的二元分类问题
练习题7
思考题7
第8章 回归分析和时序挖掘
8.1 线性和非线性回归分析
8.1.1 一元线性回归分析
8.1.2 多元线性回归分析
8.1.3 非线性回归分析
8.2 逻辑回归分析
8.2.1 逻辑回归原理
8.2.2 逻辑回归模型
8.2.3 SQL Server中逻辑回归分析示例
8.3 时序分析模型
8.3.1 时序分析概述
8.3.2 时序预测的常用方法
8.3.3 回归分析与时序分析的关系
8.3.4 确定性时序模型
8.3.5 随机时序模型
8.3.6 SQL Server建立随机时序模型示例
8.4 时序的相似性搜索
8.4.1 相似性搜索的概念
8.4.2 完全匹配
8.4.3 基于离散傅里叶变换的子序列匹配
8.4.4 基于规范变换的子序列匹配
练习题8
思考题8
第9章 粗糙集理论
9.1 粗糙集理论概述
9.1.1 粗糙集理论的产生
9.1.2 粗糙集理论的特点
9.1.3 粗糙集理论在数据挖掘中的应用
9.2 粗糙集理论中的基本概念
9.2.1 集合的基本概念
9.2.2 信息系统和粗糙集
9.2.3 分类的近似度量
9.3 信息系统的属性约简
9.3.1 约简和核
9.3.2 分辨矩阵求核
9.4 决策表及其属性约简
9.4.1 决策表及相关概念
9.4.2 决策表的属性约简算法
9.5 决策表的值约简及其算法
9.5.1 决策规则及其简化
9.5.2 决策规则的极小化
9.6 粗糙集在数据挖掘中的应用示例
练习题9
思考题9
第10章 聚类方法
10.1 聚类概述
10.1.1 什么是聚类
10.1.2 相似性测度
10.1.3 聚类过程
10.1.4 聚类算法的评价
10.1.5 聚类方法的分类
10.1.6 聚类分析在数据挖掘中的应用
10.1.7 聚类算法的要求
10.2 基于划分的聚类算法
10.2.1 k-均值算法
10.2.2 k-中心点算法
10.3 基于层次的聚类算法
10.3.1 层次聚类算法概述
10.3.2 DIANA算法和AGNES算法
10.3.3 BIRCH算法
10.3.4 CURE算法
10.3.5 ROCK算法
10.3.6 Chameleon算法
10.4 基于密度的聚类算法
10.4.1 DBSCAN算法
10.4.2 OPTICS算法
10.5 基于网格的聚类算法
10.5.1 STING算法
10.5.2 Wave Cluster算法
10.5.3 CLIQUE算法
10.6 基于模型的聚类算法
10.6.1 EM算法
10.6.2 COBWEB算法
10.7 离群点分析
10.7.1 离群点概述
10.7.2 常见的离群点检测方法
练习题10
思考题10
第11章 其他挖掘方法
11.1 文本挖掘
11.1.1 文本挖掘概述
11.1.2 数据预处理技术
11.1.3 文本结构分析
11.1.4 文本分类
11.1.5 文本聚类
11.1.6 文本摘要
11.1.7 文本关联分析
11.2 Web挖掘
11.2.1 Web挖掘概述
11.2.2 Web结构挖掘
11.2.3 Web内容挖掘
11.2.4 Web使用挖掘
11.2.5 Web挖掘的发展方向
11.3 空间数据挖掘
11.3.1 空间数据概述
11.3.2 空间数据立方体和空间OLAP
11.3.3 空间数据挖掘方法
练习题11
思考题11
附录A常用的优化方法
参考文献
前言/序言
《数据仓库与数据挖掘实践》 内容梗概 本书深入剖析了数据仓库和数据挖掘领域的核心概念、关键技术与实际应用。从数据仓库的构建基础,到数据挖掘的算法原理,再到两者在实际业务场景中的融合应用,本书提供了一个全面而系统的知识体系。 第一部分:数据仓库构建与管理 本部分着重于数据仓库的生命周期管理,为读者构建一个坚实的数据仓库基础。 数据仓库概述:我们将从根本上理解数据仓库的定义、目标、优势以及与传统数据库的区别。探讨其在企业决策支持、BI(商业智能)等方面的关键作用,以及其不同于OLTP(联机事务处理)系统的架构特点。 数据仓库建模:这是数据仓库设计的核心。我们将详细介绍维度建模,包括星型模型、雪花模型以及星座模型的构建方法、优缺点及适用场景。学习如何识别事实表和维度表,设计度量、层次结构和缓慢变化的维度(SCD),确保模型能够高效支持分析查询。此外,还将触及数据仓库的范式建模(3NF)及其在某些场景下的应用。 ETL(抽取、转换、加载)过程:ETL是连接源系统和数据仓库的桥梁,其效率和准确性直接影响数据仓库的质量。我们将深入讲解ETL的三个核心阶段: 数据抽取:探讨从各种异构数据源(如关系型数据库、文件、API等)抽取数据的策略和技术,包括全量抽取、增量抽取、CDC(变更数据捕获)等。 数据转换:这是ETL中最复杂的部分。我们将学习数据清洗、数据集成、数据标准化、数据去重、数据聚合、数据计算等关键转换技术。重点关注如何处理数据质量问题,如缺失值、异常值、不一致数据,并介绍常见的转换规则和业务逻辑实现。 数据加载:讲解如何将转换后的数据高效地加载到数据仓库中,包括全量加载、增量加载、插入、更新、删除等操作。探讨性能优化技术,如批量加载、索引策略、分区等。 数据仓库架构与技术:我们将分析不同类型的数据仓库架构,如企业数据仓库(EDW)、数据集市(Data Mart)和操作型数据存储(ODS)。介绍云数据仓库(如Snowflake, Redshift, BigQuery)的优势和典型应用,以及传统本地部署架构的考量。探讨相关技术栈,包括数据仓库硬件、数据库管理系统(DBMS)、ETL工具(如Informatica, Talend, SSIS, Kettle)和BI工具(如Tableau, Power BI, QlikView)。 数据仓库性能调优与管理:为了保证数据仓库的响应速度和可用性,性能优化至关重要。我们将讨论索引设计、分区策略、物化视图、查询优化、数据库配置调优等。同时,还会涉及数据仓库的安全管理、备份恢复、灾难恢复以及数据生命周期管理。 第二部分:数据挖掘基础与算法 本部分将带领读者走进数据挖掘的广阔世界,掌握各种经典算法及其原理。 数据挖掘概述:介绍数据挖掘的定义、目标、过程(CRISP-DM等模型),以及它在商业、科学、社会等各个领域的广泛应用。强调数据挖掘的目标是从海量数据中发现有价值的模式、知识和洞察。 数据预处理:高质量的数据是成功数据挖掘的前提。本节将详细讲解数据预处理的重要性,并介绍关键技术: 数据清洗:处理缺失值(填充、删除)、噪声数据(平滑、聚类)、异常值(识别、处理)。 数据集成:将来自多个数据源的数据合并到一个一致的数据存储中。 数据变换:数据规范化(Min-Max, Z-Score)、数据离散化(分桶、分箱、基于树的离散化)、特征构建(组合、派生)。 数据约简:维度约简(PCA, LDA)、样本约简(抽样、聚类)、属性选择。 关联规则挖掘:这是数据挖掘中最经典的应用之一,常用于分析购物篮中的商品关联性。我们将学习: Apriori算法:理解其如何通过迭代地发现频繁项集来生成关联规则。 FP-Growth算法:学习其如何利用FP-tree数据结构高效地发现频繁项集,通常比Apriori算法更快速。 度量与评估:掌握支持度(Support)、置信度(Confidence)、提升度(Lift)等关键度量指标,用于评估关联规则的有效性。 分类算法:根据已知类别的训练数据,预测新数据的类别。我们将重点介绍: 决策树:学习ID3, C4.5, CART等算法,理解如何通过信息增益、增益率、基尼不纯度等指标构建树结构。 朴素贝叶斯:理解其基于贝叶斯定理的概率分类方法,以及“朴素”假设的作用。 支持向量机(SVM):学习其如何在高维空间中找到最优超平面进行分类,理解核函数的作用。 K近邻(KNN):掌握其基于距离的分类思想。 集成学习:介绍Bagging(如随机森林)和Boosting(如AdaBoost, Gradient Boosting)等方法,如何组合多个弱学习器来构建强大的分类器。 聚类算法:将数据分成不同的簇,使得同一簇内的数据相似度高,不同簇间的数据相似度低。我们将深入学习: K-Means算法:理解其基于质心迭代优化的方法。 层次聚类:介绍凝聚型和分裂型层次聚类方法。 DBSCAN:学习其基于密度的聚类方法,能够发现任意形状的簇。 聚类评估:掌握轮廓系数(Silhouette Coefficient)、Calinski-Harabasz指数等评估指标。 回归算法:预测连续数值型的目标变量。我们将重点介绍: 线性回归:包括简单线性回归和多元线性回归,理解最小二乘法。 多项式回归:如何拟合非线性关系。 岭回归与Lasso回归:了解正则化技术在防止过拟合中的作用。 异常检测(离群点检测):识别数据集中与大部分数据显著不同的数据点。除了前面提到的聚类方法,还将介绍基于统计学、基于距离、基于密度的异常检测技术。 序列模式挖掘:发现数据序列中具有统计意义的子序列。 文本挖掘基础:介绍文本数据的预处理(分词、停用词、词干提取)以及文本分类、情感分析等基本应用。 第三部分:数据仓库与数据挖掘的融合应用 本部分将展示如何将数据仓库的坚实基础与数据挖掘的强大分析能力相结合,解决实际业务问题。 商业智能(BI)与数据仓库:深入探讨BI的组成部分,如报表、仪表盘、OLAP(联机分析处理)立方体,以及它们如何利用数据仓库提供多维度的分析和决策支持。 数据挖掘在业务场景中的应用: 客户关系管理(CRM):客户细分、客户流失预测、交叉销售与向上销售、客户生命周期价值(CLV)预测。 市场营销:广告精准投放、营销活动效果评估、产品推荐系统。 金融行业:欺诈检测、信用评分、风险管理、股票市场预测。 零售业:销售预测、库存管理、商品定价优化、购物篮分析。 医疗保健:疾病预测、药物研发、患者管理。 制造业:生产过程优化、设备故障预测、质量控制。 数据仓库与数据挖掘的集成实践: 构建分析型数据仓库:如何设计数据模型以更好地支持数据挖掘任务。 从数据仓库中提取特征:如何将数据仓库中的维度和度量转化为数据挖掘模型所需的输入特征。 模型部署与集成:如何将训练好的数据挖掘模型嵌入到BI平台或业务流程中,实现实时或近实时分析。 迭代与反馈:强调数据挖掘是一个持续迭代的过程,模型的表现需要不断监控和优化,并根据业务反馈调整模型和数据仓库。 大数据环境下的数据仓库与数据挖掘:探讨Hadoop、Spark等大数据技术在处理海量数据方面的应用,以及如何构建Hadoop生态下的数据仓库(如Hive, Impala)和数据挖掘平台(如Spark MLlib)。 数据科学与数据挖掘的未来趋势:展望机器学习、深度学习、人工智能在数据分析领域的进一步发展,以及数据伦理、数据隐私等新兴话题。 通过本书的学习,读者将能够系统地掌握数据仓库的设计、构建和管理技能,并能够熟练运用各种数据挖掘算法来发现数据中的隐藏价值,最终将这些洞察转化为实际的业务决策和竞争优势。本书内容既有理论深度,又贴合实践需求,适合数据仓库工程师、数据分析师、数据科学家、BI开发人员以及对数据分析和挖掘技术感兴趣的读者。