新書推薦:
《
第十三位陪审员
》
售價:NT$
245.0
《
微观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:NT$
709.0
《
Python贝叶斯深度学习
》
售價:NT$
407.0
《
文本的密码:社会语境中的宋代文学
》
售價:NT$
306.0
《
启微·狂骉年代:西洋赛马在中国
》
售價:NT$
357.0
《
有趣的中国古建筑
》
售價:NT$
305.0
《
十一年夏至
》
售價:NT$
347.0
《
如何打造成功的商业赛事
》
售價:NT$
407.0
|
編輯推薦: |
在数据科学家必备的技能中,机器学习和Python应该是位列前五的两项。机器学习灸手可热,在互联网、金融保险、电商、电信、制造业、零售业、医疗等领域发挥了越来越大的作用,关注度也越来越高。Python是全球前四大流行语言之一,它具有简单易学、应用几乎无限制等特性,因此在开发从业者眼中是全栈开发的。
针对机器学习与Python软件的特点,作者将两者相结合编写了本书,希望对读者有所帮助。
|
內容簡介: |
在大数据时代背景下,机器学习是人工智能研究领域中一个极其重要的方向,本书是一本机器学习方面的入门读物,注重理论与实践相结合,书中以Python 3.6.5为编写平台,共分13章,主要包括机器学习绪论、线性模型、树回归、K-means聚类算法、朴素贝叶斯、数据降维、支持向量机、随机森林、人工神经网络、协同过滤算法、基于矩阵分解的推荐算法、集成学习、数据预处理等内容。通过本书的学习,除使读者轻松掌握Python外,还能利用Python简单、快捷地解决各种机器学习问题。本书适合Python初学者,也适合研究Python的广大科研人员、学者、工程技术人员。
|
關於作者: |
丁伟雄(1971年生),男,北京航空航天大学毕业,佛山科学技术学院创业学院副院长,高级实验师。研究方向:计算机应用技术。编写的图书实例丰富,实用性强。
|
目錄:
|
目 录
第1章 机器学习绪论 1
1.1 机器学习的定义 1
1.1.1 绪论 1
1.1.2 机器学习发展历程 2
1.1.3 机器学习算法的分类 3
1.2 学习算法 4
1.2.1 监督学习 4
1.2.2 无监督学习 5
1.3 机器学习应用程序的步骤 6
1.4 Python语言 7
1.4.1 Python的风格 7
1.4.2 Python的优势 7
1.4.3 Python语言的缺点 8
1.5 Python的环境搭建 9
1.5.1 安装 10
1.5.2 使用pip安装第三方库 13
1.6 NumPy函数库基础 14
1.7 Python的基础知识 16
1.7.1 数和表达式 16
1.7.2 Python的标识符 18
1.7.3 Python的保留字符 19
1.7.4 行和缩进 19
1.7.5 多行语句 20
1.7.6 Python引号 20
1.7.7 Python空行 20
1.7.8 同一行显示多条语句 20
1.7.9 Print输出 21
第2章 线性模型 22
2.1 一般线性回归 23
2.1.1 线性回归公式表示法 23
2.1.2 线性回归的Python实现 25
2.2 局部加权线性回归 27
2.3 广义线性模型 30
2.4 逻辑回归分析 36
2.5 牛顿法 40
2.5.1 基本牛顿法的原理 40
2.5.2 基本牛顿法的流程 40
2.5.3 全局牛顿法 40
2.5.4 Armijo搜索 42
2.5.5 全局牛顿法求解线性回归模型 42
2.6 缩减法 43
2.6.1 岭回归 44
2.6.2 lasso回归 46
2.7 利用线性回归进行预测 47
2.7.1 训练线性回归模型 47
2.7.2 对新数据的预测 49
第3章 树回归 51
3.1 构建决策树的准备工作 52
3.1.1 特征选择 52
3.1.2 决策树的生成和修剪 60
3.2 Matplotlib注释绘制树形图 60
3.3 使用决策树执行分类 67
3.4 决策树的存储 71
3.5 Sklearn使用决策树预测隐形眼镜类型 73
3.5.1 实战背景 73
3.5.2 使用Sklearn构建决策树 73
3.6 复杂数据的局部性建模 80
3.7 连续型和离散型特征的树构建 81
3.8 分类回归树 82
3.8.1 构建树 83
3.8.2 剪枝 85
3.8.3 模型树 87
3.8.4 分类回归的Python实现 88
第4章 K-means聚类算法 92
4.1 K-means聚类算法的概述 92
4.2 相似性的度量 93
4.2.1 闵可夫斯基距离 93
4.2.2 曼哈顿距离 93
4.2.3 欧氏距离 93
4.3 K-means聚类算法的原理 94
4.3.1 K-means聚类算法的步骤 94
4.3.2 K-means算法与矩阵分解 95
4.3.3 K-means聚类算法的实现 96
4.4 K-近邻算法 104
4.5 各种聚类算法 107
4.5.1 划分聚类法 107
4.5.2 层次聚类法 108
4.5.3 密度聚类法 111
4.5.4 谱聚类法 116
4.5.5 Birch聚类 119
4.5.6 混合高斯模型 121
4.6 K-means算法 122
4.6.1 K-means算法存在的问题 122
4.6.2 K-means算法的思路 123
第5章 朴素贝叶斯 127
5.1 朴素贝叶斯理论 127
5.1.1 贝叶斯决策理论 127
5.1.2 条件概率 128
5.1.3 全概率公式 128
5.1.4 贝叶斯推断 129
5.1.5 朴素贝叶斯推断 130
5.2 朴素贝叶斯算法 131
5.3 朴素贝叶斯算法的优缺点 140
第6章 数据降维 141
6.1 维度灾难与降维 141
6.2 高维数据降维的方法 141
6.2.1 线性降维 142
6.2.2 非线性降维 146
6.2.3 SVD降维 153
6.2.4 流形学习降维 159
6.2.5 多维缩放降维 166
第7章 支持向量机 170
7.1 支持向量机概述 170
7.2 分类间隔 171
7.2.1 函数间距 172
7.2.2 几何间距 173
7.3 拉格朗日乘子 175
7.3.1 拉格朗日对偶性 175
7.3.2 优化间隔分类器 176
7.4 核函数 178
7.4.1 核函数的选择 180
7.4.2 松弛向量与软间隔最大化 180
7.5 SOM算法 181
7.5.1 坐标上升算法 182
7.5.2 SOM 182
7.6 SVM的优缺点 185
7.7 SVM的Python实现 185
第8章 随机森林 192
8.1 什么是随机森林 192
8.2 集成学习 192
8.2.1 集成学习的思想 193
8.2.2 集成学习中的典型方法 193
8.3 Stacking 194
8.3.1 Stacking的基本思想 194
8.3.2 Stacking的实现 195
8.4 随机森林算法 198
8.4.1 随机森林的特点 198
8.4.2 随机森林算法流程 199
8.5 随机森林算法实践 201
8.6 美国人口普查年收入50k分类 207
8.6.1 数据预处理 208
8.6.2 模型训练及验证 212
第9章 人工神经网络 217
9.1 感知机模型 217
9.1.1 感知机的定义 217
9.1.2 感知机的学习策略 218
9.1.3 感知机学习算法 218
9.1.4 感知机的Python实现 226
9.2 从感知机到神经网络 236
9.3 多层前馈神经网络 238
9.3.1 BP网络算法 241
9.3.2 BP神经网络的学习过程 244
9.3.3 BP神经网络中参数的设置 249
9.4 神经网络的Python实现 253
第10章 协同过滤算法 272
10.1 协同过滤的核心 272
10.2 协同过滤的分类 272
10.3 相似性的度量方法 273
10.3.1 欧氏距离 273
10.3.2 皮尔逊相关系数 273
10.3.3 余弦相似度 274
10.3.4 用Python实现余弦相似度的计算 274
10.4 基于用户的协同过滤算法 275
10.4.1 基于物品的协同过滤算法 275
10.4.2 基于矩阵分解的协同过滤算法 276
10.4.3 Python实现 276
10.5 基于项的协同过滤算法 280
10.6 利用协同过滤算法进行推荐 281
10.6.1 导入用户-商品数据 281
10.6.2 利用基于用户的协同过滤算法进行推荐 282
10.6.3 利用基于项的协同过滤算法进行推荐 283
第11章 基于矩阵分解的推荐算法 285
11.1 矩阵分解 285
11.2 利用矩阵分解进行预测 286
11.2.1 损失函数 286
11.2.2 损失函数的求解 286
11.2.3 加入正则项的损失函数即求解方法 286
11.2.4 预测 288
11.2.5 程序实现 289
11.3 非负矩阵分解 291
11.3.1 非负矩阵分解的形式定义 291
11.3.2 损失函数 291
11.3.3 优化问题的求解 292
11.3.4 利用乘法规则进行分解和预测 294
11.4 基于矩阵分解的推荐方法 295
11.4.1 LFM法 295
11.4.2 SVD法 298
11.4.3 SVD法 300
第12章 集成学习 304
12.1 集成学习的原理及误差 304
12.2 集成学习方法 305
12.2.1 Boosting算法 305
12.2.2 AdaBoost算法 305
12.2.3 AdaBoost与加法模型 309
12.2.4 提升树 310
12.2.5 Bagging算法 313
12.2.6 误差-分歧分解 314
12.2.7 多样性增强 315
12.2.8 Stacking算法 316
12.3 Python实现 317
第13章 数据预处理 322
13.1 数据预处理概述 322
13.1.1 为什么要对数据进行预处理 322
13.1.2 数据预处理的主要任务 323
13.2 去除唯一属性 323
13.3 处理缺失值 324
13.3.1 直接使用 324
13.3.2 删除特征 324
13.3.3 缺失值补全 324
13.3.4 数据清理 328
13.3.5 特征编码 330
13.3.6 数据标准化 331
13.3.7 正则化 332
13.3.8 特征选择 333
13.3.9 稀疏表示和字典学习 335
13.4 Python实现 337
参考文献 352
|
內容試閱:
|
前言
大家还没搞清PC的时候,移动互联网时代来了,还没有搞清移动互联网的时候,大数据时代来了。马云的这句话,仿佛一下拉开了大数据时代的序幕。而2016年,著名的计算机科学家吴军博士携带他的全新力作《智能时代:大数据与智能革命重新定义未来》,宣告智能时代到来了!
新的时代,需要新的技术;新的技术,需要新的人才。为满足时代的需要,深度学习、机器学习应运而来。那么什么是大数据、什么是机器学习、什么是深度学习呢?
(1)什么是大数据
大数据(Big Data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要使用新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
在维克托迈尔-舍恩伯格及肯尼斯库克耶编写的《大数据时代》中,大数据指不用随机分析法(抽样调查)这样的捷径,而采用所有数据进行分析处理。大数据的5V特点(IBM提出):Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性)。
(2)什么是机器学习
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径。它的应用已遍及人工智能的各个分支,如专家系统、自动推理、自然语言理解、模式识别、计算机视觉、智能机器人等领域。其中尤其典型的是专家系统中的知识获取瓶颈问题,人们一直在努力试图采用机器学习的方法加以克服。
(3)什么是深度学习
深度学习是指多层的人工神经网络和训练它的方法。一层神经网络会把大量矩阵数字作为输入,通过非线性激活方法取权重,再产生另一个数据集合作为输出。这就像生物神经大脑的工作机理一样,通过合适的矩阵数量,多层组织链接一起,形成神经网络大脑,进行精准复杂的处理,就像人们识别物体标注图片一样。
深度学习是从机器学习中的人工神经网络发展出来的新领域。早期所谓的深度是指超过一层的神经网络。但随着深度学习的快速发展,其内涵已经超出了传统的多层神经网络,甚至机器学习的范畴,逐渐朝着人工智能的方向快速发展。
在数据科学家必备的技能中,机器学习和Python应该是位列前五的两项。机器学习灸手可热,在互联网、金融保险、电商、电信、制造业、零售业、医疗等领域发挥了越来越大的作用,关注度也越来越高。Python是全球前四大流行语言之一,它具有简单易学、应用几乎无限制等特性,因此在开发从业者眼中是全栈开发的。
针对机器学习与Python软件的特点,我们将两者相结合编写了本书,其主要内容包括:
第1章 介绍机器学习绪论,主要包括机器学习的定义、学习算法、Python的安装与使用、Python基础知识等内容。
第2章,介绍线性模型,主要包括一般线性回归、局部加权线性回归、广义线性模型、逻辑回归分析、牛顿法等内容。
第3章,介绍树回归,主要包括决策树的构建、决策树的绘制、决策树的存储、CART回归树等内容。
第4章,介绍K-means聚类算法,主要包括相似性的度量、相似性的度量、K-近邻算法及各种聚类算法等内容。
第5章,介绍朴素贝叶斯,主要包括朴素贝叶斯理论、朴素贝叶斯算法等内容。
第6章,介绍数据降维,主要包括维度灾难与降维、高维数据的降维方法等内容。
第7章,介绍支持向量机,主要包括分类间隔、拉格朗日乘子、核函数、 SOM算法等内容。
第8章,介绍随机森林,主要包括集成学习、 Stacking、随机森林算法、随机森林算法实践等内容。
第9章,介绍人工神经网络,主要包括感知机模型、从感知机到神经网络、多层前馈神经网络等内容。
第10章,介绍协同过滤算法,主要包括协同过滤的核心、协同过滤的分类、相似度的度量方法等内容。
第11章,介绍基于矩阵分解的推荐算法,主要包括矩阵分解、利用矩阵分解进行预测、非负矩阵分解、基于矩阵分解的推荐方法等内容。
第12章,介绍集成学习,主要包括集成学习的原理及误差、集成学习方法等内容。
第13章,介绍数据预处理,主要包括数据预处理的概述、去除唯一属性、处理缺失值等内容。
本书主要由丁伟雄编写,此外参加编写的还有王宇华、吴茂、辛焕平、李晓东、李丹、李炳辉、顾艳春、方清城、邓奋发、周品、赵书兰、杨文茵、李伟平、宋晓光、李娅、张德丰、张彩霞、左军。
本书适合Python初学者,也适合研究Python的广大科研人员、学者、工程技术人员。
由于时间仓促,加之作者水平有限,所以错误和疏漏之处在所难免。在此,诚恳地期望得到各领域的专家和广大读者的批评指正。
编 著 者
|
|