机器学习观止核心原理与实践
更新日期:2024-07-13 00:59:56
书店:文轩网旗舰店
出版时间:2021-03
浏览量:1173
价格:0.0¥

书籍下载

内容介绍

作  者:林学森 著
定  价:168
出 版 社:清华大学出版社
出版日期:2021年03月01日
页  数:772
装  帧:平装
ISBN:9787302557449
主编推荐
"一个处于工程应用前沿的首席技术专家带你系统学习AI技术: 学术 应用,综合学习,融会贯通; 软件 硬件,系统学习,整体思考; 算法 平台,密切结合,释疑解惑。 "
目录
机器学习基础知识篇
章 人工智能概述 002
1.1 人工智能的定义 002
1.2 人工智能发展简史 003
1.2.1 史前文明,曙光初现(1956年前) 004
1.2.2 初出茅庐,一战成名(1956-1974年) 008
1.2.3 寒风凛冽,首次入冬(1974-1980年) 010
1.2.4 卷土重来,威震八方(1980-1987年) 010
1.2.5 失望弥漫,再度入冬(1987-1993年) 012
1.2.6 重出江湖,渐入佳境(1993年至今) 013
1.3 人工智能经典流派 016
1.3.1 符号主义 018
1.3.2 连接主义 019
1.3.3 行为主义 023
1.3.4 贝叶斯派 026
1.4 人工智能与机器学习 027
1.5 如何选择机器学习算法 029
1.5.1 没有免费的午餐理论 030
1.5.2 Scikit Learn小抄 031
1.5.3 Microsoft Azure小抄 032
1.6 机器学典型应用场景 032
1.6.1 计算机图像领域 035
1.6.2 自然语言处理简述及其应用 036
1.6.3 制造业中的预测性维护 038
1. 软件自动化开发和测试 042
1.7 本书的组织结构 043
第2章 机器学习中的数学基础 045
2.1 微分学 045
2.1.1 链式求导法则 045
2.1.2 对数函数求导 045
2.1.3 梯度和梯度下降算法 046
2.2 线性代数 047
2.2.1 向量 047
2.2.2 矩阵拼接 052
2.2.3 特征值和特征向量 057
2.2.4 仿射变换 059
2.3 概率论 060
2.3.1 概率分布 061
2.3.2 先验/后验概率 062
2.3.3 大似然估计 063
2.3.4 贝叶斯法则 0
2.4 统计学 065
2.4.1 数据的标准化和归一化 065
2.4.2 标准差 066
2.4.3 方差和偏差 066
2.4.4 协方差和协方差矩阵 067
2.5 优化理论 068
2.5.1 概述 068
2.5.2 函数等高线 070
2.5.3 拉格朗日乘子法 071
2.5.4 拉格朗日对偶性 074
2.5.5 KKT 079
2.6 其他 088
2.6.1 训练、验证和测试数据集 088
2.6.2 过拟合和欠拟合 090
2.6.3 奥卡姆的剃刀 092
2. 信息熵 093
2.6.5 IOU 094
2.6.6 NMS 095
2.6.7 Huffman树 096
第3章 机器学习模型的度量指标 099
3.1 Precision、Recall和mAP 099
3.2 F1 Score 101
3.3 混淆矩阵 102
3.4 ROC 103
3.5 AUC 105
3.6 PRC 107
3.7 工业界使用的典型AI指标 108
经典机器学习篇
第4章 回归算法 112
4.1 回归分析 112
4.2 线性回归 112
4.2.1 线性回归的定义 112
4.2.2 线性回归的损失函数 113
4.2.3 线性回归范例 113
4.3 逻辑回归 115
4.3.1 逻辑回归——二分类 115
4.3.2 逻辑回归——多分类及Softmax 119
第5章 K-NN算法 122
5.1 K-NN概述 122
5.2 K-NN分类算法 123
5.3 K-NN回归算法 124
5.4 K-NN的优缺点 125
5.4.1 K-NN的优点 125
5.4.2 K-NN的缺点 126
5.5 K-NN工程范例 126
第6章 k-means 129
6.1 k-means概述 129
6.2 k-means核心算法 129
6.3 k-means算法的优缺点 131
6.3.1 k-means算法的优点 131
6.3.2 k-means算法的缺点 131
k-means工程范例 132
第7章 朴素贝叶斯 135
7.1 朴素贝叶斯分类算法 135
7.2 朴素贝叶斯的实际应用 137
第8章 决策树和随机森林 141
8.1 决策树 141
8.1.1 决策树的主要组成元素 141
8.1.2 决策树的经典算法 141
8.1.3 决策树的优缺点 145
8.1.4 决策树的过拟合和剪枝 145
8.2 随机森林 146
第9章 支持向量机 149
9.1 SVM可以做什么 149
9.2 SVM的数学表述 151
9.2.1 决策面的数学表述 151
9.2.2 分类间隔的数学表述 152
9.2.3 比较超平面的数学公式 153
9.2.4 优决策面的数学表述 159
9.3 SVM相关的优化理论 160
9.3.1 感知机学习算法 160
9.3.2 SVM优化问题 173
9.4 硬间隔SVM 174
9.5 软间隔SVM 177
9.6 核函数技巧 182
9.7 多分类SVM 187
9.8 SVM实践 193
0章 PCA降维 196
10.1 降维概述 196
10.2 PCA降维实现原理 197
10.2.1 PCA的直观理解 197
10.2.2 PCA的理论基础——大方差理论 199
10.2.3 PCA的核心处理过程 199
10.3 PCA实例 200
1章 集成学习 202
11.1 集成学习概述 202
11.2 集成学习架构 203
11.2.1 聚合法 203
11.2.2 提升法 204
11.2.3 堆叠法 205
11.3 典型的集成方法 206
11.3.1 平均法 206
11.3.2 投票法 207
11.3.3 学习法 208
深度学习进阶篇
2章 深度神经网络 212
12.1 神经元 212
12.2 激活函数 214
12.2.1 Sigmoid 214
12.2.2 tanh 216
12.2.3 ReLU 217
12.2.4 Leaky ReLU 218
12.2.5 ReLU的其他变种 219
12.2.6 激活函数的选择 220
12.3 前向传播和后向传播算法 220
12.4 损失函数 224
12.4.1 分类场景 225
12.4.2 回归场景 228
12.4.3 其他任务类型的损失函数 230
3章 卷积神经网络 232
13.1 CNN发展历史简述 232
13.2 CNN的核心组成元素 233
13.2.1 卷积层 233
13.2.2 池化层 235
13.2.3 全连接层 236
13.2.4 Softmax层 237
13.3 CNN经典框架 237
13.3.1 LeNet 237
13.3.2 AlexNet 238
13.3.3 VGG 240
13.3.4 GoogLeNet 242
13.3.5 ResNet 245
13.4 CNN的典型特性 249
13.4.1 CNN位移不变性 250
13.4.2 CNN尺度不变性 252
13.4.3 CNN旋转不变性 253
13.4.4 CNN视角不变性 255
4章 RNN与LSTM 256
14.1 RNN 256
14.2 RNN的多种形态 257
14.3 RNN存在的不足 258
14.4 LSTM 259
14.5 LSTM核心框架 259
14.5.1 遗忘门 261
14.5.2 输入门 261
14.5.3 输出门 262
14.6 GRU 263
5章 深度强化学习 265
15.1 强化学习和MDP 265
15.1.1 强化学基础概念 265
15.1.2 MDP 266
15.1.3 强化学核心三要素 267
15.2 MDP问题的解决方案分类 268
15.3 基于模型的动态规划算法 269
15.4 基于无模型的强化学习算法 272
15.4.1 蒙特·卡罗强化学习算法 272
15.4.2 时间差分算法 275
15.5 DQN 278
15.6 基于策略的强化学习算法 280
15.6.1 有限差分策略梯度 283
15.6.2 蒙特·卡罗策略梯度 283
6章 MCTS 285
16.1 MCTS概述 285
16.2 MCTS算法核心处理过程 286
16.3 UCB和UCT 286
1 MCTS实例解析 288
机器学习应用实践及相关原理
7章 数据集的建设 292
17.1 数据集建设的核心目标 292
17.2 数据采集和标注 294
17.2.1 数据从哪来 294
17.2.2 数据分布和多样性 296
17.2.3 如何扩大数据量 298
17.3 数据分析和处理 299
17.3.1 数据集分析的典型方法 299
17.3.2 标签类别合理性 301
17.3.3 数据清洗 303
8章 CNN训练技巧 304
18.1 数据预处理 304
18.1.1 数据零中心化 304
18.1.2 数据标准化 306
18.1.3 尺寸调整 306
18.1.4 其他 307
18.2 数据增强 308
18.3 CNN核心组件择优 309
18.3.1 激活函数 309
18.3.2 超参数设定 309
18.4 参数初始化策略 310
18.4.1 全零初始化策略 310
18.4.2 随机初始化策略 311
18.4.3 采用预训练模型 319
18.5 模型过拟合解决方法 319
18.5.1 正则化 319
18.5.2 批标准化 320
18.6 模型的可解释性 328
18.6.1 反卷积网络 331
18.6.2 类别激活映射 334
18.6.3 LIME 339
18. 可视化集成工具Darkon 344
18.7 Auto ML 346
9章 CV和视觉识别经典模型 348
19.1 CV发展简史 348
19.2 视觉识别概述 353
19.3 R-CNN 359
19.3.1 R-CNN简述 359
19.3.2 R-CNN中的候选区域 360
19.3.3 R-CNN算法处理流程 361
19.4 Fast R-CNN 3
19.5 SPP-Net 365
19.5.1 空间金字塔池化 366
19.5.2 特征图和原图的映射关系 367
19.5.3 基于SPP-Net的目标识别 367
19.6 Faster R-CNN 368
19.6.1 Faster R-CNN简述 368
19.6.2 候选区域网络 370
19.6.3 分类器和边框回归 375
19.7 YOLO 375
19.8 SSD 383
19.8.1 SSD的网络框架 383
19.8.2 SSD的应用推理过程 384
19.8.3 SSD的性能评估和缺点 388
19.9 不基于CNN来实现目标识别 390
19.9.1 相关的OpenCV函数 390
利用OpenCV识别形状物体范例 394
第20章 自然语言处理和CNN 397
20.1 NLP简述 397
20.2 NLP发展历史 399
20.3 自然语言基础 400
20.4 词的表达方式 403
20.5 自然语言模型 405
20.5.1 基于N-Gram的语言模型 406
20.5.2 基于神经网络的语言模型——经典NNLM 409
20.5.3 基于神经网络的语言模型——NNLM的改进者CBOW模型 411
20.5.4 基于神经网络的语言模型——NNLM的改进者Skip-gram模型 414
20.6 word2vec 416
20.6.1 word2vec简介 416
20.6.2 word2vec源码与编译 417
20.6.3 word2vec使用范例 418
20.7 常用语料库 420
20.8 NLP应用:文本分类 424
20.8.1 传统的文本分类方法 424
20.8.2 基于深度学文本分类方法 425
第21章 自然语言处理和CNN 430
21.1 应用程序场景识别背景 430
21.2 特征向量 431
21.3 数据采集 432
21.4 算法模型 433
21.5 落地应用 433
第22章 软件自动修复 436
22.1 什么是软件自动修复 436
22.1.1 软件自动修复的定义 436
22.1.2 软件自动修复的价值 437
22.2 软件自动修复基础知识 437
22.2.1 软件自动修复技术分类 437
22.2.2 软件自动修复基础概念 439
22.3 阶段1:缺陷定位 441
22.3.1 基于程序频谱的缺陷定位 443
22.3.2 SFL中测试套件的构造 447
22.3.3 SFL中程序频谱的构造 451
22.4 阶段2:补丁生成 458
22.4.1 基于搜索的补丁生成和自动修复 459
22.4.2 基于模板的补丁生成和自动修复 460
22.5 APR领域经典框架 462
22.5.1 Facebook SapFix 463
22.5.2 Microsoft DeepCoder 465
22.5.3 GenProg 474
第23章 基于强化学经典应用——AlphaGO 479
23.1 AlphaGO简述 479
23.2 AlphaGO核心原理 480
23.3 策略网络 481
23.4 估值网络 483
23.5 MCTS 483
机器学台篇
第24章 分布式机器学习框架基础知识 488
24.1 分布式机器学理念 488
24.2 GPU硬件设备 491
24.2.1 GPU架构 492
24.2.2 GPU的共享访问 494
24.3 网络标准 498
24.3.1 Ethernet 498
24.3.2 InfiniBand 499
24.4 分布式通信框架 500
24.4.1 MPI 500
24.4.2 P2P和聚合通信 503
24.4.3 NCCL 505
24.4.4 NV-Link 508
24.4.5 RDM10
24.5 经典分布式ML框架Caffe-MPI 511
第25章 Tensorflow 514
25.1 Tensorflow安装过程 514
25.2 Tensorflow基础知识 516
25.2.1 Tensorflow核心概念 516
25.2.2 Tensorflow模型/数据的保存和恢复 519
25.2.3 Tensorflow模型fine-tuning 523
25.2.4 Tensorflow模型调试 526
25.2.5 Tensorflow的多语言支持 528
25.2.6 可视化利器TensorBoard 529
25.3 Tensorflow分布式训练 533
25.3.1 Tensorflow的分布式原理 533
25.3.2 单机多GPU下的并行计算 535
25.3.3 多机多GPU下的分布式计算 542
25.4 Tensorflow分布式部署 549
25.4.1 Tensorflow Serving概述 549
25.4.2 基于GPU的Tensorflow Serving 549
25.4.3 Tensorflow Serving的核心概念 552
25.4.4 Tensorflow模型分布式部署实例 553
25.5 Tensorflow范例解析 560
25.6 Tensorflow的“变种” 563
25.6.1 Tensorflow Lite 563
25.6.2 Tensorflow RS 565
第26章 Caffe 568
26.1 Caffe的安装 568
26.1.1 Ubuntu下安装Caffe 568
26.1.2 Windows下安装Caffe 572
26.2 Caffe支持的数据集格式 587
26.2.1 LevelDB 587
26.2.2 LMDB 590
26.2.3 数据库的生成 592
26.3 Caffe中的网络模型构建 594
2 Google Protocol Buffer 598
26.5 Caffe2源码结构 600
26.6 Caffe工程范例 601
26.7 Caffe中的Model Zoo 607
第27章 scikit-learn 609
27.1 scikit-learn的安装 610
27.2 scikit-learn中的机器学习算法 610
27.2.1 分类 610
27.2.2 回归 611
27.2.3 聚类 611
27.2.4 降维 612
27.3 scikit-learn中的Model selection 613
27.3.1 网络搜索 613
27.3.2 交验证 616
27.3.3 度量标准 616
27.4 scikit-learn中的预处理 619
27.4.1 数据标准化等预处理 619
27.4.2 数据特征提取预处理 621
第28章 主流AI云平台 628
28.1 Microsoft OpenPAI 628
28.2 Google Cloud 631
28.3 Baidu 631
28.3.1 百度AI云服务 632
28.3.2 PaddlePaddle 636
28.4 637
28.4.1 阿里飞天平台 638
28.4.2 MaxCompute平台 639
28.4.3 PAI 0
第29章 图像处理基础 650
29.1 光、色彩和人类视觉系统 650
29.2 图像的颜色模型 653
29.3 图像的基本属性 655
29.3.1 灰度值 655
29.3.2 亮度 656
29.3.3 对比度 657
29.3.4 色相 658
29.3.5 饱和度 658
29.4 图像特征 659
29.4.1 颜色特征 659
29.4.2 纹理特征 660
29.4.3 形状特征 661
29.5 图像的典型特征描述子 661
29.5.1 LBP 661
29.5.2 HOG 677
29.5.3 Haar-like 特征 681
29.5.4 图像的傅里叶变换 686
29.6 图像处理实例(图像质量检测) 690
第30章 程序切片技术 693
30.1 程序切片综述 693
30.2 程序切片基础知识 695
30.2.1 控制流图 695
30.2.2 控制流分析 699
30.2.3 数据流 706
30.3 静态切片技术 715
30.3.1 基本定义 715
30.3.2 静态切片算法 717
30.4 动态切片技术 721
30.4.1 动态切片基本概念 721
30.4.2 动态切片算法概述 723
30.4.3 基于PDG的动态切片算法 723
第31章 业界主流数据集分析 726
31.1 ImageNet简述 726
31.2 ImageNet的构建逻辑 726
31.3 ImageNet数据源的选择与处理 730
31.4 ImageNet的下载 733
参考文献 736
内容简介
本书在写作伊始,就把读者设想为一位虽然没有任何AI基础,但对技术本身抱有浓厚兴趣、喜欢“抽丝剥茧”、探究的“有识之士”。有别于市面上部分AI技术书籍从一开始就直接讲解各种“高深莫测”算法的叙述手法,本书尝试先从零开始构建基础技术点,而后“循序渐进”地读者前进,终“直捣黄龙”,赢取后的胜利。全书据此分为5篇,共31章,内容基本覆盖了由AI发展历史、数学基础知识、机器学习算法等经典知识点以及深度学习、深度强化学习等较新理论知识所组成的AI核心技术。同时注重“理论联系实践”,通过多个章节重点介绍了如何在工程项目中运用AI来解决问题的诸多经验以及相应的模型算法,以期让读者既能享受到“知其所以然”的乐趣,还能体会到“知其然”的轻松和愉悦。本书适合对AI感兴趣的读者阅读,从事AI领域工作的研究人员、工程开发人员、高校本科生和研究生都可以从本书中学到机器学相关知识。
作者简介
林学森 著
林学森,香港中文大学计算机硕士,曾于多家跨国企业担任研发和管理工作,并已在国内外会议、杂志上发表多篇文章,获得多项发明。现为某世界500强科技公司不错专家、架构师。有丰富的技术研发与项目管理经验,擅长操作系统架构设计与内核分析。