大数据分析与处理:实践者的研究方法 / 数据科学与大数据专业系列教材
定价:¥79.00
作者: 车海莺,薛静锋,金福生,商亮
出版时间:2025-08-26
出版社:机械工业出版社
- 机械工业出版社
- 9787111786139
- 1-1
- 561455
- 平装
- 2025-08-26
- 671
内容简介
本书融合作者多年的教学与实践经验,是一本全面且实用的大数据分析与处理教材。全书分为六部分共20章,内容循序渐进,从大数据的基本概念出发,逐步深入探讨数据采集和预处理、数据存储、数据处理、大数据分析平台以及大数据应用等关键环节。本书详细介绍了PyTorch、TensorFlow和Spark MLlib等热门大数据分析平台,并通过深入剖析和实战演练,帮助读者轻松掌握这些先进工具的使用技巧。同时,本书针对数据可视化、文本分析、推荐系统等经典应用场景,通过案例分析和代码实现,引导读者从理论走向实践,快速掌握大数据分析的核心技能。本书适合作为普通高校数据科学与大数据相关专业的教材,也适合相关专业的技术人员使用。
目录
目 录
前言
第一部分 绪论
第1章 概述2
1.1 大数据的基本概念2
1.1.1 大数据的概念2
1.1.2 大数据的来源2
1.2 结构化和非结构化数据3
1.2.1 结构化数据的特点4
1.2.2 非结构化数据的特点4
1.3 大数据的特征5
1.3.1 规模性6
1.3.2 多样性6
1.3.3 高速性6
1.3.4 价值性6
1.3.5 真实性7
1.4 科学研究的第四范式7
1.4.1 科学研究的第四范式的
发展历程7
1.4.2 第四范式的概念和特点9
1.5 大数据的生命周期11
1.5.1 数据采集12
1.5.2 数据存储12
1.5.3 数据整合13
1.5.4 数据呈现与使用13
1.5.5 数据分析与应用13
1.5.6 数据归档14
1.5.7 数据销毁15
1.6 大数据的处理流程15
1.6.1 数据采集16
1.6.2 数据存储16
1.6.3 数据治理16
1.6.4 数据分析17
1.6.5 数据应用17
1.7 大数据的架构17
1.7.1 数据存储系统18
1.7.2 数据处理系统19
1.7.3 数据应用系统20
总结20
习题20
第二部分 数据采集和预处理
第2章 大数据的采集22
2.1 内部数据22
2.1.1 内部数据概述22
2.1.2 内部数据的价值23
2.1.3 内部数据的采集24
2.2 外部数据26
2.2.1 外部数据概述26
2.2.2 浅网数据28
2.2.3 深网数据32
总结34
习题34
第3章 大数据的预处理35
3.1 数据预处理概述35
3.1.1 数据预处理的意义35
3.1.2 数据预处理的方法35
3.2 数据质量36
3.2.1 单一数据源数据质量问题36
3.2.2 多数据源数据质量问题37
3.3 数据清洗技术37
3.3.1 残缺数据处理38
3.3.2 冗余数据处理38
3.3.3 噪声数据处理38
3.4 数据转换40
3.4.1 数据集成40
3.4.2 数据变换41
3.5 数据归约42
3.5.1 维归约43
3.5.2 数量归约44
3.5.3 数据压缩与变换45
总结45
习题45
第三部分 数据存储
第4章 数据存储系统48
4.1 数据建模48
4.1.1 数据建模概述48
4.1.2 如何对数据建模50
4.2 分布式文件系统53
4.2.1 分布式文件系统概述53
4.2.2 GFS55
4.2.3 HDFS57
4.2.4 主流分布式文件系统对比61
4.3 NoSQL数据库63
4.3.1 NoSQL概述64
4.3.2 NoSQL分类65
4.3.3 NoSQL与其他数据库的关系67
4.4 统一数据访问接口68
总结70
习题71
第5章 图数据库72
5.1 图数据库的发展72
5.1.1 图数据库的历史72
5.1.2 图数据库的现状和发展73
5.2 图数据库概述74
5.2.1 图数据库简介74
5.2.2 图数据库的定义75
5.2.3 图数据库的应用76
5.2.4 图数据库未来的发展趋势77
5.3 图数据库的特点及优缺点78
5.3.1 图数据库的特点78
5.3.2 图数据库的优缺点79
5.4 图数据库的主要技术80
5.4.1 图数据库的数据模型80
5.4.2 图数据库的存储引擎82
5.4.3 图数据库的操作语言83
5.4.4 图数据库的算法83
5.5 代表性图数据库—Neo4j84
5.5.1 Neo4j概述84
5.5.2 Neo4j图数据库的数据模型和
存储结构85
5.5.3 使用Neo4j的优势85
5.5.4 Cypher语句85
5.6 Neo4j图数据库的基础实验88
5.6.1 实验目的88
5.6.2 环境配置88
5.6.3 实验步骤89
5.6.4 实验总结96
5.7 Neo4j图数据库的进阶实验96
5.7.1 实验概述96
5.7.2 数据导入97
5.7.3 实验步骤与代码展示98
5.7.4 实验总结102
总结102
习题102
第四部分 数据处理
第6章 数据处理系统104
6.1 数据处理系统概述104
6.1.1 什么是数据处理104
6.1.2 数据处理系统的组成104
6.2 计算模型105
6.2.1 批处理模型概述105
6.2.2 流处理模型概述105
6.2.3 大规模图像数据处理
模型概述106
6.2.4 分布式图处理模型概述106
6.2.5 大规模并行处理模型概述106
6.2.6 大规模物理内存计算
模型概述106
6.3 计算平台与引擎106
6.3.1 Hadoop107
6.3.2 Spark107
总结109
习题109
第7章 批数据处理系统110
7.1 MapReduce110
7.1.1 MapReduce的架构111
7.1.2 MapReduce与RDBMS112
7.1.3 共享存储的批处理模型112
7.1.4 Hadoop113
7.2 MapReduce应用实例114
7.2.1 Top k问题114
7.2.2 k-means聚类117
总结117
习题117
第8章 流数据处理系统118
8.1 流计算的定义118
8.1.1 流处理出现的原因118
8.1.2 流处理的定义118
8.1.3 流计算的应用119
8.2 原生流处理—Storm121
8.2.1 Storm简介121
8.2.2 Storm的物理架构122
8.2.3 Storm的逻辑架构123
8.2.4 其他传统流处理系统124
8.3 微批流处理系统—
Spark Streaming124
8.3.1 Spark Streaming概述124
8.3.2 Spark Streaming的工作流程125
8.3.3 Spark Streaming的工作
原理和架构126
8.3.4 Spark Streaming的特性129
8.4 Flink129
8.4.1 批处理与流处理130
8.4.2 Flink提供的不同级别的
抽象131
8.4.3 无界数据流与有界数据流131
8.5 流数据处理实验132
8.5.1 Storm流数据处理实验132
8.5.2 Spark Streaming流数据
处理实验137
8.6 大数据处理体系结构147
8.6.1 批处理层148
8.6.2 服务层148
8.6.3 实时处理层149
总结150
习题150
第9章 分布式图处理151
9.1 分布式图处理概述151
9.2 分布式图处理的概念152
9.3 分布式图处理的工作原理153
9.4 分布式图处理的框架—Pregel153
9.4.1 Pregel的基础概念153
9.4.2 Pregel的工作原理156
9.4.3 Pregel的体系结构159
9.5 Pregel框架实验161
9.5.1 基于C++线程并发的Pregel
框架模拟162
9.5.2 节点最大值实验163
9.5.3 单源最短路径实验166
9.5.4 实验总结171
总结171
习题171
第10章 处理架构172
10.1 对称多处理架构172
10.2 非一致性内存访问架构172
10.3 大规模并行处理架构 173
10.4 SMP、NUMA和MPP的比较178
10.4.1 SMP与MPP的比较178
10.4.2 NUMA与MPP的比较178
总结179
习题179
第11章 内存计算180
11.1 SAP HANA180
11.1.1 SAP HANA概述180
11.1.2 SAP HANA的工作原理181
11.1.3 SAP HANA的优势184
11.2 Spark184
11.2.1 Spark的起源184
11.2.2 Spark的工作原理185
11.2.3 Spark的组件189
11.2.4 Spark的优势191
总结191
习题192
第12章 数据处理算法193
12.1 数据处理基础193
12.1.1 数据挖掘193
12.1.2 数据建模的一般流程193
12.1.3 数据建模方法的评估197
12.1.4 常见数据分类任务及其
表征手段199
12.2 机器学习方法201
12.2.1 机器学习的一般步骤201
12.2.2 传统SVM方法202
12.2.3 随机森林方法204
12.2.4 决策树方法205
12.3 深度学习方法208
12.3.1 线性回归模型209
12.3.2 感知器模型211
12.3.3 人工神经网络213
12.3.4 小结217
总结218
习题218
第五部分 大数据分析平台
第13章 PyTorch220
13.1 PyTorch的发展背景220
13.2 PyTorch结构概览221
13.2.1 torch221
13.2.2 torchvision222
13.3 数据载体模块223
13.3.1 初始化张量223
13.3.2 张量的属性226
13.3.3 张量的基本运算和操作226
13.3.4 张量与NumPy数组231
13.3.5 图像转换和处理233
13.3.6 小结235
13.4 求导模块235
13.4.1 张量、函数与计算图235
13.4.2 自动求导机制236
13.4.3 梯度计算237
13.4.4 禁用梯度跟踪239
13.4.5 小结239
13.5 效率工具模块240
13.5.1 数据导入和封装240
13.5.2 载入预训练模型244
13.5.3 训练结果可视化245
13.5.4 小结246
13.6 优化算法模块247
13.6.1 前置代码248
13.6.2 超参数248
13.6.3 循环优化250
13.6.4 损失函数250
13.6.5 优化器250
13.6.6 小结253
13.7 神经网络模块254
13.7.1 获取设备255
13.7.2 定义类255
13.7.3 模型的网络层256
13.7.4 模型参数259
13.7.5 保存、加载和使用模型259
13.7.6 小结260
13.8 运算性能模块260
13.8.1 GPU加速260
13.8.2 TorchElastic分布式训练261
13.8.3 小结262
13.9 PyTorch的基础实验—基于
LSTM的房价预测262
13.9.1 torch.nn模块介绍262
13.9.2 实验准备264
13.9.3 实验的具体步骤265
13.10 PyTorch的进阶实验—搭建
Transformer框架268
13.10.1 Transformer的起源与意义268
13.10.2 Transformer的整体结构269
13.10.3 Transformer的各组件271
13.10.4 Transformer的代码实现275
13.10.5 Transformer的应用280
总结282
习题282
第14章 TensorFlow283
14.1 TensorFlow概述283
14.2 TensorFlow的系统架构284
14.2.1 模型的构建、训练和验证285
14.2.2 模型的存储和部署287
14.3 神经网络的构建与TensorFlow
的基本用法287
14.3.1 神经网络前置知识287
14.3.2 TensorFlow的基本用法291
14.3.3 小结293
14.4 TensorFlow的特点、优势和
应用领域294
14.4.1 TensorFlow的特点294
14.4.2 TensorFlow的优势294
14.4.3 TensorFlow的应用领域294
14.5 比较PyTorch和TensorFlow295
14.6 TensorFlow实验297
14.6.1 tf.keras前置知识297
14.6.2 TensorFlow图像分类实验297
14.6.3 TensorFlow图像风格
迁移实验304
总结304
习题304
第15章 Spark MLlib306
15.1 Spark MLlib概述306
15.2 Spark MLlib的系统架构307
15.3 Spark MLlib的工作流307
总结310
习题310
第六部分 大数据应用
第16章 数据可视化312
16.1 数据可视化概述312
16.1.1 数据可视化的概念312
16.1.2 数据可视化的分类312
16.1.3 数据可视化与其他学科
领域的关系313
16.2 数据可视化基础315
16.2.1 数据可视化设计的原则315
16.2.2 数据可视化流程316
16.2.3 数据可视化的基本图表317
16.3 数据可视化工具和软件321
16.3.1 Power BI321
16.3.2 Tableau323
16.3.3 Gephi325
16.4 数据可视化分析案例326
16.4.1 连接数据326
16.4.2 数据初步处理326
16.4.3 图表绘制327
总结330
习题330
第17章 大数据分析应用—
文本分析331
17.1 文本分析概述331
17.1.1 文本数据331
17.1.2 文本分析332
17.2 文本分析相关技术335
17.2.1 人工文本分析335
17.2.2 基于词典的方法336
17.2.3 词袋法337
17.2.4 监督学习338
17.2.5 无监督学习338
17.2.6 循环神经网络345
17.2.7 长短时记忆网络347
17.3 情感分析案例348
17.3.1 数据获取349
17.3.2 数据预处理349
17.3.3 特征工程350
17.3.4 模型训练和使用352
总结354
习题355
第18章 大数据分析应用—
推荐系统356
18.1 推荐系统概述356
18.1.1 信息过载与推荐系统356
18.1.2 推荐系统的发展历史356
18.1.3 推荐系统的意义357
18.1.4 推荐系统的基本工作流程358
18.1.5 推荐系统的整体架构359
18.1.6 推荐系统的主要类型359
18.2 推荐系统的相关算法360
18.2.1 基于内容的推荐算法360
18.2.2 协同过滤推荐算法362
18.2.3 深度学习推荐算法370
18.2.4 混合推荐算法374
18.3 推荐系统的其他问题374
18.3.1 推荐系统的性能评估374
18.3.2 推荐系统的冷启动375
18.3.3 推荐系统的大规模
数据处理375
18.3.4 推荐系统中的稀疏性问题376
18.3.5 推荐系统中的长尾问题377
18.4 推荐系统案例377
18.4.1 背景377
18.4.2 数据378
18.4.3 模型379
18.4.4 环境搭建379
18.4.5 数据处理381
18.4.6 模型构建382
18.4.7 模型训练383
18.4.8 模型评估383
18.4.9 推荐384
18.4.10 案例总结384
总结384
习题385
第19章 图数据分析的应用—
知识图谱386
19.1 图数据分析概述386
19.1.1 图数据分析的概念386
19.1.2 图数据分析的应用386
19.1.3 图数据库与传统数据库387
19.2 知识图谱概述387
19.2.1 知识图谱的定义387
19.2.2 知识图谱的架构388
19.2.3 数据类型和存储方式389
19.3 知识图谱的相关技术391
19.3.1 信息抽取392
19.3.2 知识融合392
19.3.3 知识加工393
19.3.4 知识更新396
19.4 知识图谱的应用案例396
19.4.1 背景396
19.4.2 环境搭建397
19.4.3 数据获取397
19.4.4 数据处理398
19.4.5 实体关系抽取402
19.4.6 结果可视化402
总结405
习题405
第20章 图数据分析的应用—
社交网络406
20.1 社交网络概述406
20.1.1 社交网络的定义406
20.1.2 社交网络的起源与发展406
20.1.3 社交网络的应用领域406
20.1.4 社交网络分析与大数据
的关系407
20.1.5 社交网络分析工具407
20.2 社交网络分析的结构特性409
20.2.1 统计特性409
20.2.2 网络特性410
20.2.3 网络模型411
20.3 社交网络分析的研究412
20.4 基于图卷积网络的社交网络
分类实验412
20.4.1 实验目的413
20.4.2 实验内容和原理413
20.4.3 实验步骤414
总结419
习题419
参考文献420
前言
第一部分 绪论
第1章 概述2
1.1 大数据的基本概念2
1.1.1 大数据的概念2
1.1.2 大数据的来源2
1.2 结构化和非结构化数据3
1.2.1 结构化数据的特点4
1.2.2 非结构化数据的特点4
1.3 大数据的特征5
1.3.1 规模性6
1.3.2 多样性6
1.3.3 高速性6
1.3.4 价值性6
1.3.5 真实性7
1.4 科学研究的第四范式7
1.4.1 科学研究的第四范式的
发展历程7
1.4.2 第四范式的概念和特点9
1.5 大数据的生命周期11
1.5.1 数据采集12
1.5.2 数据存储12
1.5.3 数据整合13
1.5.4 数据呈现与使用13
1.5.5 数据分析与应用13
1.5.6 数据归档14
1.5.7 数据销毁15
1.6 大数据的处理流程15
1.6.1 数据采集16
1.6.2 数据存储16
1.6.3 数据治理16
1.6.4 数据分析17
1.6.5 数据应用17
1.7 大数据的架构17
1.7.1 数据存储系统18
1.7.2 数据处理系统19
1.7.3 数据应用系统20
总结20
习题20
第二部分 数据采集和预处理
第2章 大数据的采集22
2.1 内部数据22
2.1.1 内部数据概述22
2.1.2 内部数据的价值23
2.1.3 内部数据的采集24
2.2 外部数据26
2.2.1 外部数据概述26
2.2.2 浅网数据28
2.2.3 深网数据32
总结34
习题34
第3章 大数据的预处理35
3.1 数据预处理概述35
3.1.1 数据预处理的意义35
3.1.2 数据预处理的方法35
3.2 数据质量36
3.2.1 单一数据源数据质量问题36
3.2.2 多数据源数据质量问题37
3.3 数据清洗技术37
3.3.1 残缺数据处理38
3.3.2 冗余数据处理38
3.3.3 噪声数据处理38
3.4 数据转换40
3.4.1 数据集成40
3.4.2 数据变换41
3.5 数据归约42
3.5.1 维归约43
3.5.2 数量归约44
3.5.3 数据压缩与变换45
总结45
习题45
第三部分 数据存储
第4章 数据存储系统48
4.1 数据建模48
4.1.1 数据建模概述48
4.1.2 如何对数据建模50
4.2 分布式文件系统53
4.2.1 分布式文件系统概述53
4.2.2 GFS55
4.2.3 HDFS57
4.2.4 主流分布式文件系统对比61
4.3 NoSQL数据库63
4.3.1 NoSQL概述64
4.3.2 NoSQL分类65
4.3.3 NoSQL与其他数据库的关系67
4.4 统一数据访问接口68
总结70
习题71
第5章 图数据库72
5.1 图数据库的发展72
5.1.1 图数据库的历史72
5.1.2 图数据库的现状和发展73
5.2 图数据库概述74
5.2.1 图数据库简介74
5.2.2 图数据库的定义75
5.2.3 图数据库的应用76
5.2.4 图数据库未来的发展趋势77
5.3 图数据库的特点及优缺点78
5.3.1 图数据库的特点78
5.3.2 图数据库的优缺点79
5.4 图数据库的主要技术80
5.4.1 图数据库的数据模型80
5.4.2 图数据库的存储引擎82
5.4.3 图数据库的操作语言83
5.4.4 图数据库的算法83
5.5 代表性图数据库—Neo4j84
5.5.1 Neo4j概述84
5.5.2 Neo4j图数据库的数据模型和
存储结构85
5.5.3 使用Neo4j的优势85
5.5.4 Cypher语句85
5.6 Neo4j图数据库的基础实验88
5.6.1 实验目的88
5.6.2 环境配置88
5.6.3 实验步骤89
5.6.4 实验总结96
5.7 Neo4j图数据库的进阶实验96
5.7.1 实验概述96
5.7.2 数据导入97
5.7.3 实验步骤与代码展示98
5.7.4 实验总结102
总结102
习题102
第四部分 数据处理
第6章 数据处理系统104
6.1 数据处理系统概述104
6.1.1 什么是数据处理104
6.1.2 数据处理系统的组成104
6.2 计算模型105
6.2.1 批处理模型概述105
6.2.2 流处理模型概述105
6.2.3 大规模图像数据处理
模型概述106
6.2.4 分布式图处理模型概述106
6.2.5 大规模并行处理模型概述106
6.2.6 大规模物理内存计算
模型概述106
6.3 计算平台与引擎106
6.3.1 Hadoop107
6.3.2 Spark107
总结109
习题109
第7章 批数据处理系统110
7.1 MapReduce110
7.1.1 MapReduce的架构111
7.1.2 MapReduce与RDBMS112
7.1.3 共享存储的批处理模型112
7.1.4 Hadoop113
7.2 MapReduce应用实例114
7.2.1 Top k问题114
7.2.2 k-means聚类117
总结117
习题117
第8章 流数据处理系统118
8.1 流计算的定义118
8.1.1 流处理出现的原因118
8.1.2 流处理的定义118
8.1.3 流计算的应用119
8.2 原生流处理—Storm121
8.2.1 Storm简介121
8.2.2 Storm的物理架构122
8.2.3 Storm的逻辑架构123
8.2.4 其他传统流处理系统124
8.3 微批流处理系统—
Spark Streaming124
8.3.1 Spark Streaming概述124
8.3.2 Spark Streaming的工作流程125
8.3.3 Spark Streaming的工作
原理和架构126
8.3.4 Spark Streaming的特性129
8.4 Flink129
8.4.1 批处理与流处理130
8.4.2 Flink提供的不同级别的
抽象131
8.4.3 无界数据流与有界数据流131
8.5 流数据处理实验132
8.5.1 Storm流数据处理实验132
8.5.2 Spark Streaming流数据
处理实验137
8.6 大数据处理体系结构147
8.6.1 批处理层148
8.6.2 服务层148
8.6.3 实时处理层149
总结150
习题150
第9章 分布式图处理151
9.1 分布式图处理概述151
9.2 分布式图处理的概念152
9.3 分布式图处理的工作原理153
9.4 分布式图处理的框架—Pregel153
9.4.1 Pregel的基础概念153
9.4.2 Pregel的工作原理156
9.4.3 Pregel的体系结构159
9.5 Pregel框架实验161
9.5.1 基于C++线程并发的Pregel
框架模拟162
9.5.2 节点最大值实验163
9.5.3 单源最短路径实验166
9.5.4 实验总结171
总结171
习题171
第10章 处理架构172
10.1 对称多处理架构172
10.2 非一致性内存访问架构172
10.3 大规模并行处理架构 173
10.4 SMP、NUMA和MPP的比较178
10.4.1 SMP与MPP的比较178
10.4.2 NUMA与MPP的比较178
总结179
习题179
第11章 内存计算180
11.1 SAP HANA180
11.1.1 SAP HANA概述180
11.1.2 SAP HANA的工作原理181
11.1.3 SAP HANA的优势184
11.2 Spark184
11.2.1 Spark的起源184
11.2.2 Spark的工作原理185
11.2.3 Spark的组件189
11.2.4 Spark的优势191
总结191
习题192
第12章 数据处理算法193
12.1 数据处理基础193
12.1.1 数据挖掘193
12.1.2 数据建模的一般流程193
12.1.3 数据建模方法的评估197
12.1.4 常见数据分类任务及其
表征手段199
12.2 机器学习方法201
12.2.1 机器学习的一般步骤201
12.2.2 传统SVM方法202
12.2.3 随机森林方法204
12.2.4 决策树方法205
12.3 深度学习方法208
12.3.1 线性回归模型209
12.3.2 感知器模型211
12.3.3 人工神经网络213
12.3.4 小结217
总结218
习题218
第五部分 大数据分析平台
第13章 PyTorch220
13.1 PyTorch的发展背景220
13.2 PyTorch结构概览221
13.2.1 torch221
13.2.2 torchvision222
13.3 数据载体模块223
13.3.1 初始化张量223
13.3.2 张量的属性226
13.3.3 张量的基本运算和操作226
13.3.4 张量与NumPy数组231
13.3.5 图像转换和处理233
13.3.6 小结235
13.4 求导模块235
13.4.1 张量、函数与计算图235
13.4.2 自动求导机制236
13.4.3 梯度计算237
13.4.4 禁用梯度跟踪239
13.4.5 小结239
13.5 效率工具模块240
13.5.1 数据导入和封装240
13.5.2 载入预训练模型244
13.5.3 训练结果可视化245
13.5.4 小结246
13.6 优化算法模块247
13.6.1 前置代码248
13.6.2 超参数248
13.6.3 循环优化250
13.6.4 损失函数250
13.6.5 优化器250
13.6.6 小结253
13.7 神经网络模块254
13.7.1 获取设备255
13.7.2 定义类255
13.7.3 模型的网络层256
13.7.4 模型参数259
13.7.5 保存、加载和使用模型259
13.7.6 小结260
13.8 运算性能模块260
13.8.1 GPU加速260
13.8.2 TorchElastic分布式训练261
13.8.3 小结262
13.9 PyTorch的基础实验—基于
LSTM的房价预测262
13.9.1 torch.nn模块介绍262
13.9.2 实验准备264
13.9.3 实验的具体步骤265
13.10 PyTorch的进阶实验—搭建
Transformer框架268
13.10.1 Transformer的起源与意义268
13.10.2 Transformer的整体结构269
13.10.3 Transformer的各组件271
13.10.4 Transformer的代码实现275
13.10.5 Transformer的应用280
总结282
习题282
第14章 TensorFlow283
14.1 TensorFlow概述283
14.2 TensorFlow的系统架构284
14.2.1 模型的构建、训练和验证285
14.2.2 模型的存储和部署287
14.3 神经网络的构建与TensorFlow
的基本用法287
14.3.1 神经网络前置知识287
14.3.2 TensorFlow的基本用法291
14.3.3 小结293
14.4 TensorFlow的特点、优势和
应用领域294
14.4.1 TensorFlow的特点294
14.4.2 TensorFlow的优势294
14.4.3 TensorFlow的应用领域294
14.5 比较PyTorch和TensorFlow295
14.6 TensorFlow实验297
14.6.1 tf.keras前置知识297
14.6.2 TensorFlow图像分类实验297
14.6.3 TensorFlow图像风格
迁移实验304
总结304
习题304
第15章 Spark MLlib306
15.1 Spark MLlib概述306
15.2 Spark MLlib的系统架构307
15.3 Spark MLlib的工作流307
总结310
习题310
第六部分 大数据应用
第16章 数据可视化312
16.1 数据可视化概述312
16.1.1 数据可视化的概念312
16.1.2 数据可视化的分类312
16.1.3 数据可视化与其他学科
领域的关系313
16.2 数据可视化基础315
16.2.1 数据可视化设计的原则315
16.2.2 数据可视化流程316
16.2.3 数据可视化的基本图表317
16.3 数据可视化工具和软件321
16.3.1 Power BI321
16.3.2 Tableau323
16.3.3 Gephi325
16.4 数据可视化分析案例326
16.4.1 连接数据326
16.4.2 数据初步处理326
16.4.3 图表绘制327
总结330
习题330
第17章 大数据分析应用—
文本分析331
17.1 文本分析概述331
17.1.1 文本数据331
17.1.2 文本分析332
17.2 文本分析相关技术335
17.2.1 人工文本分析335
17.2.2 基于词典的方法336
17.2.3 词袋法337
17.2.4 监督学习338
17.2.5 无监督学习338
17.2.6 循环神经网络345
17.2.7 长短时记忆网络347
17.3 情感分析案例348
17.3.1 数据获取349
17.3.2 数据预处理349
17.3.3 特征工程350
17.3.4 模型训练和使用352
总结354
习题355
第18章 大数据分析应用—
推荐系统356
18.1 推荐系统概述356
18.1.1 信息过载与推荐系统356
18.1.2 推荐系统的发展历史356
18.1.3 推荐系统的意义357
18.1.4 推荐系统的基本工作流程358
18.1.5 推荐系统的整体架构359
18.1.6 推荐系统的主要类型359
18.2 推荐系统的相关算法360
18.2.1 基于内容的推荐算法360
18.2.2 协同过滤推荐算法362
18.2.3 深度学习推荐算法370
18.2.4 混合推荐算法374
18.3 推荐系统的其他问题374
18.3.1 推荐系统的性能评估374
18.3.2 推荐系统的冷启动375
18.3.3 推荐系统的大规模
数据处理375
18.3.4 推荐系统中的稀疏性问题376
18.3.5 推荐系统中的长尾问题377
18.4 推荐系统案例377
18.4.1 背景377
18.4.2 数据378
18.4.3 模型379
18.4.4 环境搭建379
18.4.5 数据处理381
18.4.6 模型构建382
18.4.7 模型训练383
18.4.8 模型评估383
18.4.9 推荐384
18.4.10 案例总结384
总结384
习题385
第19章 图数据分析的应用—
知识图谱386
19.1 图数据分析概述386
19.1.1 图数据分析的概念386
19.1.2 图数据分析的应用386
19.1.3 图数据库与传统数据库387
19.2 知识图谱概述387
19.2.1 知识图谱的定义387
19.2.2 知识图谱的架构388
19.2.3 数据类型和存储方式389
19.3 知识图谱的相关技术391
19.3.1 信息抽取392
19.3.2 知识融合392
19.3.3 知识加工393
19.3.4 知识更新396
19.4 知识图谱的应用案例396
19.4.1 背景396
19.4.2 环境搭建397
19.4.3 数据获取397
19.4.4 数据处理398
19.4.5 实体关系抽取402
19.4.6 结果可视化402
总结405
习题405
第20章 图数据分析的应用—
社交网络406
20.1 社交网络概述406
20.1.1 社交网络的定义406
20.1.2 社交网络的起源与发展406
20.1.3 社交网络的应用领域406
20.1.4 社交网络分析与大数据
的关系407
20.1.5 社交网络分析工具407
20.2 社交网络分析的结构特性409
20.2.1 统计特性409
20.2.2 网络特性410
20.2.3 网络模型411
20.3 社交网络分析的研究412
20.4 基于图卷积网络的社交网络
分类实验412
20.4.1 实验目的413
20.4.2 实验内容和原理413
20.4.3 实验步骤414
总结419
习题419
参考文献420