新書推薦:
《
甲骨文丛书·古代中国的军事文化
》
售價:HK$
99.7
《
中国王朝内争实录(套装全4册):从未见过的王朝内争编著史
》
售價:HK$
244.2
《
半导体纳米器件:物理、技术和应用
》
售價:HK$
177.0
《
创客精选项目设计与制作 第2版 刘笑笑 颜志勇 严国陶
》
售價:HK$
61.6
《
佛山华家班粤菜传承 华家班59位大厨 102道粤菜 图文并茂 菜式制作视频 粤菜故事技法 佛山传统文化 广东科技
》
售價:HK$
221.8
《
武人琴音(十周年纪念版 逝去的武林系列收官之作 形意拳一门三代:尚云祥、韩伯言、韩瑜的人生故事 凸显百年武人命运)
》
售價:HK$
43.7
《
剑桥斯堪的纳维亚戏剧史(剑桥世界戏剧史译丛)
》
售價:HK$
154.6
《
禅心与箭术:过松弛而有力的生活(乔布斯精神导师、世界禅者——铃木大拙荐)
》
售價:HK$
66.1
|
編輯推薦: |
本书是作者近几年面向本科生和研究生开设的数据挖掘及应用的教学实践与积累,介绍数据挖掘的经典算法、典型应用,以及Python数据分析、挖掘实现和6个经典应用案例。
|
內容簡介: |
本教材以数据挖掘的经典算法为主线,基础部分讲清楚数据挖掘的过程和经典算法:数据探索、数据预处理、分类与回归、聚类分析、关联规则挖掘、偏差检测等。同时增加实现应用部分,在应用实现部分,以Python作为描述语言,以解决某个应用的挖掘目标为前提,介绍案例背景,阐述分析方法与过程,完成模型构建,给出算法的具体实现,通过此项目的方法提升学生的算法理解和应用能力,适应当今大数据时代对于高级工程师的数据分析能力。
|
關於作者: |
孙家泽,男,博士,副教授,计算机软件方向硕士研究生导师。1980年7月出生,汉族。2006年至今,西安邮电大学计算机学院任教,2017-2018美国西密歇根大学访问学者,主讲数据挖掘,数据库技术,高级语言程序设计等课程,近5年先后主持多项软件工程和数据分析类的项目,获省市科技进步奖6次,授权国家发明专利2项,正在公开实审发明专利6项,软件著作权5项,学术专著2部,参编教材2部,发表论文30多篇,多篇被SCIEI检索。主要从事数据挖掘、软件测试和群体智能算法等方面研究。
|
目錄:
|
第1章数据挖掘导论1
1.1为什么进行数据挖掘2
1.1.1数据挖掘起源2
1.1.2数据挖掘是数据处理的高级阶段3
1.2什么是数据挖掘4
1.2.1广义技术角度的定义4
1.2.2狭义技术角度的定义5
1.2.3商业角度的定义6
1.2.4数据挖掘与机器学习6
1.3挖掘什么类型的数据7
1.3.1数据库数据7
1.3.2数据仓库数据8
1.3.3事务数据9
1.3.4其他类型的数据9
1.4能挖掘到什么知识10
1.4.1广义知识11
1.4.2关联知识12
1.4.3聚类知识13
1.4.4分类知识13
1.4.5预测型知识14
1.4.6偏差型知识14
1.4.7有价值的知识15
1.5数据挖掘方法15
1.5.1统计学16
1.5.2机器学习16
1.5.3数据库系统和数据仓库18
1.5.4智能优化19
1.6数据挖掘过程20
1.6.1Fayyad数据挖掘模型20
1.6.2CRISPDM模型211.6.3CRISPDM案例25
1.6.4数据挖掘过程的工作量26
1.6.5数据挖掘需要的人员26
1.7数据挖掘应用27
1.7.1数据挖掘在市场营销中的应用27
1.7.2数据挖掘在电信行业的应用28
1.7.3数据挖掘在银行业的应用29
1.7.4数据挖掘在社交网络分析中的应用29
1.7.5数据挖掘在软件工程中的应用30
1.8数据挖掘中的隐私权保护33
1.8.1侵犯隐私权的表现34
1.8.2保护隐私权的对策35
1.9数据挖掘课程学习方法和资源36
1.9.1数据挖掘课程学习方法36
1.9.2开源数据挖掘工具37
1.9.3经典测试数据集39
1.9.4著名国际会议和期刊40
1.10思考与练习41
数据挖掘算法与应用Python实现目录第2章数据探索与预处理43
2.1数据属性类型44
2.2数据的统计描述45
2.2.1中心趋势度量: 均值、中位数和众数45
2.2.2度量数据散布47
2.3统计描述图形49
2.4数据相似性度量53
2.4.1数据矩阵与相异性矩阵53
2.4.2标称属性的相异性度量54
2.4.3二元属性的相异性度量54
2.4.4数值属性的相异性56
2.4.5序数属性的邻近性度量58
2.5数据清洗59
2.5.1缺失值处理59
2.5.2噪声数据处理62
2.5.3异常值处理67
2.6数据集成68
2.6.1实体识别问题68
2.6.2冗余和相关分析69
2.6.3数据值冲突的检测与处理71
2.7数据变换72
2.7.1数据变换策略概述72
2.7.2数据规范化72
2.7.3数据离散化和概念分层74
2.8数据归约78
2.8.1数值归约78
2.8.2属性归约81
2.9对数据预处理的点85
2.10思考与练习86
第3章关联规则挖掘87
3.1基本概念87
3.2Apriori算法89
3.2.1Apriori算法详解90
3.2.2Apriori算法的例子95
3.2.3Apriori算法总结98
3.3FPGrowth算法98
3.3.1FPGrowth算法详解99
3.3.2FPGrowth算法的例子108
3.4关联规则评价109
3.5思考与练习112
第4章聚类分析114
4.1聚类分析简介114
4.2基于划分的方法115
4.2.1kmeans算法115
4.2.2kmedoids算法118
4.3基于层次的方法120
4.3.1AGNES算法121
4.3.2DIANA算法122
4.3.3BIRCH算法124
4.4基于密度的方法129
4.5基于概率的聚类133
4.6聚类图数据138
4.6.1聚类图数据度量138
4.6.2复杂网络140
4.7聚类评估143
4.7.1估计聚类趋势144
4.7.2确定簇数145
4.7.3测定聚类质量145
4.8思考与练习152
第5章分类154
5.1基本概念154
5.1.1什么是分类154
5.1.2分类的过程155
5.1.3分类器常见构造方法157
5.2KNN分类157
5.3贝叶斯分类160
5.3.1贝叶斯定理160
5.3.2朴素贝叶斯分类算法161
5.4决策树分类164
5.4.1相关定义165
5.4.2CART算法原理166
5.4.3CART算法实例167
5.4.4CART算法的优缺点169
5.4.5ID3算法原理169
5.4.6ID3算法实例170
5.4.7ID3算法的优缺点175
5.4.8C4.5算法原理176
5.4.9C4.5算法实例176
5.4.10C4.5算法的优缺点184
5.4.113种算法的比较185
5.5分类算法评价185
5.5.1常用术语185
5.5.2评价指标186
5.5.3分类器性能的表示189
5.5.4分类器性能的评估方法192
5.6思考与练习193
第6章高级分类算法195
6.1组合分类算法195
6.1.1算法起源195
6.1.2AdaBoost算法基本原理196
6.1.3分类器创建197
6.1.4算法实例199
6.1.5AdaBoost算法的优缺点206
6.2粒子群分类算法206
6.2.1粒子群优化算法简介207
6.2.2基本粒子群优化算法207
6.2.3粒子群优化算法的特点209
6.2.4基于粒子群优化算法的分类器构造210
6.3支持向量机分类算法214
6.3.1支持向量机的基本概念214
6.3.2感知机模型215
6.3.3硬间隔支持向量机215
6.3.4软间隔支持向量机219
6.3.5非线性支持向量机221
6.3.6支持向量机算法实例222
6.3.7支持向量机算法的优缺点224
6.4BP神经网络分类算法224
6.4.1算法起源224
6.4.2BP神经网络的理论基础225
6.4.3BP神经网络基本原理229
6.4.4BP神经网络的学习机制230
6.4.5BP算法步骤233
6.4.6BP算法实例233
6.4.7BP算法的优缺点235
6.5思考与练习235
第7章Python数据分析237
7.1搭建Python开发平台237
7.2Python数据分析库238
7.2.1NumPy238
7.2.2Pandas246
7.2.3SciPy251
7.2.4ScikitLearn252
7.3Python数据可视化254
7.3.1Matplotlib254
7.3.2Seaborn261
7.3.3Bokeh265
7.4思考与练习267
第8章Python数据挖掘269
8.1数据探索269
8.2数据预处理270
8.2.1数据清洗271
8.2.2数据集成275
8.2.3数据归约277
8.2.4数据变换278
8.3聚类分析算法280
8.3.1kmeans算法280
8.3.2DBSCAN算法285
8.4关联规则算法288
8.4.1Apriori算法288
8.4.2FP树算法293
8.5分类算法298
8.5.1ID3算法299
8.5.2C4.5算法305
8.5.3KNN算法311
8.6思考与练习317
第9章泰坦尼克号乘客生存率预测318
9.1背景与挖掘目标318
9.2算法介绍318
9.2.1线性回归算法318
9.2.2逻辑回归算法320
9.2.3随机森林算法322
9.3分析方法与过程326
9.3.1数据抽取326
9.3.2数据探索与分析327
9.3.3数据预处理330
9.3.4模型构建333
9.3.5模型检验335
9.4思考与练习336
第10章基于关联规则的电影推荐338
10.1选择数据源338
10.2数据探索340
10.2.1异常值分析340
10.2.2周期性分析341
10.2.3统计量分析342
10.3数据预处理344
10.3.1数据加载344
10.3.2缺失值处理344
10.3.3异常值处理345
10.4数据挖掘算法实现346
10.5算法评估346
10.6主要代码348
10.6.1频繁项集生成代码348
10.6.2关联规则生成代码350
10.6.3电影推荐代码351
10.7思考与练习351
第11章航空公司客户价值分析353
11.1背景与挖掘目标353
11.2分析方法与过程353
11.2.1数据抽取355
11.2.2数据探索356
11.2.3数据预处理357
11.2.4模型构建359
11.2.5模型检验360
11.3思考与练习361
第12章基于协同过滤的音乐推荐363
12.1推荐系统和协同过滤算法363
12.1.1推荐系统发展概况363
12.1.2基于用户的协同过滤算法365
12.1.3基于项目的协同过滤算法368
12.1.4两种算法的比较369
12.1.5协同过滤算法和基于内容的过滤算法比较370
12.1.6推荐系统的评价370
12.2音乐推荐371
12.2.1数据获取371
12.2.2数据预处理372
12.2.3数据分析及算法设计372
12.2.4结果输出和模型评价375
12.3思考与练习377
第13章基于支持向量机的手写数字识别378
13.1背景与支持向量机的概念378
13.1.1最优超平面378
13.1.2软间隔378
13.1.3线性不可分问题379
13.1.4支持向量机类型379
13.1.5支持向量机举例379
13.1.6支持向量机的应用381
13.2分析方法与过程382
13.2.1数据集介绍382
13.2.2数据集读取383
13.2.3数据集可视化383
13.3模型构建384
13.4模型检验386
13.5思考与练习387
第14章基于神经网络的代码坏味检测388
14.1神经网络388
14.2代码坏味检测389
14.2.1代码坏味简介389
14.2.2代码坏味研究现状391
14.2.3代码坏味公开数据集392
14.3基于神经网络算法的代码坏味检测392
14.3.1准备数据392
14.3.2构建神经网络393
14.3.3训练模型395
14.3.4生成预测结果398
14.4思考与练习399
参考文献400
|
內容試閱:
|
数据挖掘是计算机科学和人工智能中非常重要的一个领域,融合了数据库、人工智能、统计学、机器学习、模式识别等多个领域的理论与技术。在过去的几十年中,各种信息系统以及互联网产生的大量数据已经将人们湮没在信息的汪洋大海中。存储数据的爆炸性增长激起了社会对新技术和自动工具的需求,以便帮助人们将海量数据转换成信息和知识。数据挖掘作为一种大有前途的工具和方法引起了产业界和学术界的极大关注,并形成了信息领域的热点,大数据作为其产业化的表现已经上升到国家战略层面。本书中的算法采用Python语言编写。Python代码简单优雅、易于上手,科学计算软件包十分丰富,已成为不少大学和研究机构进行教学和科学计算的语言。相信用Python编写的数据挖掘算法能让读者尽快领略到这门学科的精妙之处。
本书作为数据挖掘领域的入门教材,在内容上尽可能涵盖数据挖掘经典算法及典型应用。全书共14章,大致分为3个部分:
第1部分第1~6章介绍数据挖掘的基础知识数据挖掘过程、数据探索和数据预处理和经典算法关联规则、聚类、贝叶斯分类器、决策树、集成学习、智能优化、神经网络和支持向量机等。第1部分是数据挖掘概念和算法的描述,本质上和具体编程语言无关,读者可以使用任何自己熟悉的计算机语言来描述。
第2部分第7、8章讨论Python数据分析和挖掘。第7章作为数据挖掘过程的Python描述的铺垫,讨论Python数据分析NumPy、Pandas和ScikitLearn,Python数据可视化Matplotlib、Seaborn和Bokeh。第8章讨论数据挖掘的Python实现,与第1~6章相呼应,给出了数据挖掘过程中数据探索、数据预处理、聚类算法、关联规则算法以及分类算法的Python实现。
第3部分第9~14章是数据挖掘算法应用部分,介绍了来自日常生活和学术研究的6个真实应用案例,这6个案例包括基于线性回归和随机森林的泰坦尼克号乘客生存预测、基于关联规则Apriori算法的电影推荐、航空公司价值客户分析、基于协同过滤的音乐推荐、基于支持向量机的手写数字图片识别和基于神经网络的代码坏味检测等,通过对这6个案例的数据挖掘全过程深入浅出的剖析,用Python语言实现案例全过程,使读者逐渐加深对经典算法的理解,获得数据挖掘应用项目经验,提高编程能力,同时快速领悟看似难懂的数据挖掘理论。
本书3个部分的内容呈现递进深入的关系: 第1部分是经典算法;第3部分是用Python实现的算法应用案例;第2部分介绍的数据挖掘算法Python实现则是第1部分和第3部分的衔接,提供了数据挖掘过程的Python描述,读者可根据自己的知识储备、兴趣和时间情况选择阅读。本书通过经典算法、算法的Python实现和实际项目应用案例三位一体的方法强化读者对经典算法的理解和掌握,对经典算法真正达到精和通的水平。根据课时情况,一个学期32学时的本科生课程可考虑讲授前5章中的部分经典内容;一个学期48学时的本科生课程可考虑讲授前6章中的经典内容;第2部分第7、8章对于有Python基础的学生可作为课内实验的参考;想更深入地学习数据挖掘算法的本科生或研究生可以选择第3部分的部分或全部应用案例。
本书的第1~12章由孙家泽编写,第13、14章由王曙燕编写。孙家泽负责全书的统稿工作。感谢西安邮电大学可信软件研究团队的各位老师和同学在书稿检查和项目案例编写、测试中给予的帮助和支持。还有要感谢很多领域的专家在网络上共享的资源,这些资源对于本书的编写有很大的启发。这里还要特别感谢本书编辑龙启铭对本书出版给予的热情而专业的帮助。
数据挖掘技术的发展日新月异,大数据作为数据挖掘产业化最明显的表现以及创新和生产力提升的前沿已经上升到国家战略层面,与几乎所有的学科都有深度交叉。限于作者的才学、时间和精力,书中不妥之处在所难免,恳请读者批评指正。
孙家泽2020年10月
|
|