- ISBN:9787030724380
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:16开
- 页数:236
- 出版时间:2022-09-01
- 条形码:9787030724380 ; 978-7-03-072438-0
内容简介
本书主要介绍统计机器学习领域常用的基础模型、算法和代码实现。包括统计机器学习、Python语言基础,常用的线性回归、贝叶斯分类器、逻辑回归、VM、核方法、集成学习,以及深度学习中的多层感知器、卷积神经网络、循环神经网络、变分自编码器、对抗生成网络和强化学习等模型与优化方法,使用Scikit-Learn、TensorFlow和PyTorch定制模型与训练等。 本书面向的主要读者是统计学、机器学习和人工智能等领域的高年级本科生和研究生,以及其他各领域有数据驱动任务的学生和从业人员。
目录
前言
第1章 引言 1
1.1 问题驱动 1
1.2 统计机器学习的基本任务 2
1.3 统计机器学习的总体目标和样本策略 3
1.3.1 监督学习 4
1.3.2 无监督学习 8
1.3.3 基于样本的统计机器学习方法 9
1.4 Anaconda、TensorFlow 2.0和PyTorch的安装 10
1.4.1 Anaconda的安装 10
1.4.2 TensorFlow 2.0的安装 11
1.4.3 PyTorch的安装 11
第2章 线性回归 13
2.1 一般线性回归模型 13
2.1.1 基本框架 13
2.1.2 梯度下降法 14
2.1.3 性能度量 15
2.2 多项式回归 15
2.3 线性回归的正则化方法 18
2.3.1 线性岭回归 19
2.3.2 LASSO回归 21
2.4 线性回归Python实现 24
第3章 线性分类器 37
3.1 概率生成模型 37
3.2 二分类概率生成模型 38
3.3 逻辑回归 39
3.4 Softmax回归 40
3.5 逻辑回归的限制 41
3.6 分类任务的Python实现 43
第4章 支持向量机 48
4.1 线性SVM分类器 48
4.2 线性支持向量回归 51
4.3 SVM的Python实现 52
4.3.1 软间隔分类 52
4.3.2 非线性SVM分类 55
4.3.3 支持向量回归的实现 58
第5章 核方法 61
5.1 特征映射 61
5.2 核函数 63
5.3 核方法的数学基础 64
5.3.1 希尔伯特空间 65
5.3.2 Riesz表示定理 67
5.3.3 再生核希尔伯特空间 67
5.4 核技巧 70
5.5 核方法的Python实现 73
5.5.1 基于核方法的岭回归和支持向量回归 73
5.5.2 基于核方法的支持向量分类 76
第6章 集成学习 78
6.1 决策树 78
6.1.1 决策树的基本概念 78
6.1.2 决策树的训练 80
6.2 学习器集成 81
6.3 Bagging和随机森林 81
6.3.1 Bagging 81
6.3.2 随机森林 83
6.4 Boosting 83
6.4.1 AdaBoost基本算法 84
6.4.2 AdaBoost算法的解释 87
6.4.3 多分类AdaBoost 91
6.4.4 Boosting的一般梯度下降算法 96
6.5 集成学习的Python实现 98
6.5.1 决策树的Python实现 98
6.5.2 Bagging的Python实现 100
6.5.3 随机森林的Python实现 101
6.5.4 Boosting的Python实现 102
第7章 深度学习的基础 104
7.1 前馈神经网络 104
7.1.1 感知器模型 104
7.1.2 多层感知器及其变体 107
7.1.3 BP算法 110
7.1.4 回归和分类任务中的MLP 114
7.2 利用Keras和TensorFlow实施MLP 115
7.2.1 使用Sequential API建立分类器 116
7.2.2 使用Functional API构建复杂模型 123
7.2.3 使用Subclassing API构建动态模型 123
7.2.4 保存和恢复模型 124
第8章 卷积神经网络 126
8.1 简介 126
8.2 CNN的网络架构 126
第9章 循环神经网络 132
9.1 框架 132
9.2 循环层 132
9.3 长短期记忆网络 136
9.4 基于RNN的时间序列预测 139
第10章 无监督学习 148
10.1 无监督学习的主要任务 148
10.2 自编码器 149
10.2.1 栈式自编码器 150
10.2.2 变分自编码器 152
10.3 GAN 163
10.3.1 经典GAN的基本思想 164
10.3.2 经典GAN的推广 168
10.3.3 WGAN 170
10.3.4 条件GAN 175
10.4 无监督学习的Python实现 181
10.4.1 PyTorch实战基础 181
10.4.2 图像分类的PyTorch实现 191
10.4.3 VAE的PyTorch实现 196
10.4.4 GAN的PyTorch实现 201
第11章 深度强化学习 205
11.1 深度强化学习的主要任务 205
11.2 强化学习的基本概念 205
11.2.1 强化学习的基本模型 206
11.2.2 价值函数 207
11.3 基于策略梯度的深度强化学习 207
11.4 基于值函数的深度强化学习 213
11.4.1 值函数的估计方法 213
11.4.2 Q-Learning 214
11.5 Actor-Critic方法 216
11.5.1 A2C和A3C方法 216
11.5.2 路径导数策略梯度方法 218
11.6 强化学习的PyTorch实现 220
11.6.1 导入必需的包 220
11.6.2 回放内存设置 222
11.6.3 获取状态输入 224
11.6.4 训练 230
参考文献 235
节选
第1章 引言 统计机器学习无论在格物致知的自然科学,还是在经世致用的社会科学,抑或是在风头正劲的信息科学中,都扮演着至关重要的角色.例如,统计学习方法在预测基因组学中的应用,根据公司的绩效和经济运行数据预测其股票价格;深度学习方法对图像处理、语音识别和自然语言处理等人工智能领域的重要进展起到关键作用. 1.1 问题驱动 统计学是一个方法论学科,其扎根于现实中的各类问题,机器学习更是如此.针对问题,从统计学的角度来考虑机器学习常称作统计机器学习或统计学习.下面三个例子分别对应于统计机器学习常见的回归、分类和生成任务. (1)从一个人血液的红外吸收光谱,估计(或者说预测)糖尿病患者血液中葡萄糖的含量. (2)从数字图像中识别手写邮政编码中的数字. (3)从海量的图像、文字和声音,来分别生成类似风格的图像、文字和声音等. 统计机器学习能为统计学领域、机器学习、大数据和人工智能以及其他诸多交叉学科问题的处理提供有效工具.数据驱动成为当今一大趋势.每天,我们会面对不同群体(总体)的各种观测数据.假设有来自某个总体的 m 个样本(又称实例),第 i 个样本上有各种指标的观测值,这里常指代 n 维的特征或称作输入变量X的第 i 次观测,是对应的标签或称作输出变量Y的第 i 次观测,写成数据矩阵为 (1.1.1) 其中的单向箭头反映了预测变量和响应变量的某种自然对应关系.在监督学习任务中,正是利用数据中的这种对应信息,学习输入变量X对输出变量Y的预测函数 f(X),用于预测未观测的输出变量或解释输入和输出变量之间的关系.若观测数据中不含有标签Y的观测值,则涉及常见的无监督学习任务,其同样需要根据数据学习一个预测函数 f(x),来描述特征变量X的某种分布规律.例如,学习特征变量X的密度函数 f(x).有了密度函数,我们可以用它做进一步的统计推断,或者用来生成与观测数据有近似分布的样本,如某种风格的图像生成. 1.2 统计机器学习的基本任务 根据上一节,若用一句话来近似描述何谓机器学习,可以概括为“统计机器学习”近似地是在执行“寻找一个函数. f”的任务. 完成该任务有以下主要的三步: **步,定义模型.用统计的语言,模型就是一个函数的集合满足某些性质 g .本步是为了解决从哪里寻找我们想要的那个函数. 第二步,构造损失函数.损失函数能提供一个准则,度量模型中的每个函数预测的精确性,为挑选出*优的函数确定依据. 第三步,建立优化算法.根据平均损失(或称作“风险”)*小的准则,给出寻找*优预测函数的算法,如常见的梯度下降算法. 例1.2.1 设观测值为来自服从二元正态总体的样本,这里分别表示二维正态总体分布的均值向量和协方差矩阵的取值. 根据对散点图1.1的观察,可以引导我们进行统计机器学习的三个步骤. 图1.1 二维正态散点图 **步,根据散点图看出(X, Y)取值有较明显的线性关系趋势,考虑定义所谓的简单线性模型为. 第二步,在线性回归问题中,常选择的损失函数之一为平方损失,在第 i 个样本上预测的平方损失形式为 (1.2.1) 而在所有 m 个样本上的总的损失(也称作残差平方和),记为 (1.2.2) 给定观测值的函数. 第三步,通过优化算法(如能求出显式解的“正规方程法”或者大规模数据时的“梯度下降法”),求出使得损失 L(w0,w1)达到*小值的,寻找到简单线性回归模型的预测函数,完成我们的基本任务. 注 1.2.1该简单线性回归模型(函数集 F)中,不同的系数向量确定了不同的函数.由此对应关系,可把该函数集中的每一个“函数”元素和二维欧氏空间 R2中的一个向量元素建立一个一一映射.即简单线性模型 F 本质上是一个二维的参数空间,自由变动的参数为.另外,每个具体的向量(w0,w1)T 自身又表示一个具体的函数 w,其定义域为含有两个点的集合 f0,1g,值域是 R.例如,若,则表示函数 w 将0对应到0,1对应到1;而若,则表示的函数γ是将0对应到1,1对应到0,即 w 和γ表示两个不同的函数.所有这些函数值列成的二维向量构成一个二维欧氏空间 R2.因此,对于简单线性回归任务,寻找一个线性预测函数,等价于寻找一个二维向量,而其又等价于寻找一个定义在上的函数.这个角度有利于我们考虑更复杂的统计机器学习模型和算法. 注1.2.2 以上三步彼此相互紧密相关,每一步的实施是一个由具体问题而定、动态选择的过程.下一节分别从总体和样本的角度更进一步描述机器学习过程. 1.3 统计机器学习的总体目标和样本策略 实际中,我们是通过随机样本研究机器学习,因此我们的主要目标是推断产生随机样本的总体分布,其是未知的.本节先从总体的角度明确统计机器学习的目标,然后考虑从样本着手实现逼近目标的主要策略. 1.3.1 监督学习 1.回归问题 设 表示一个随机的输入向量,表示一维的随机输出变量,(X,Y)的联合分布(此处不妨设为密度)为 g(x, y).监督学习的基本任务之一是,根据(X,Y)的联合分布 g(x, y),寻找一个预测函数 f(X),由X的值来预测Y.一个*常用和方便计算的损失函数是二次损失.在二次损失下,我们得到一个挑选*好预测函数 f 的准则,称为二次风险函数(risk function)或者二次期望损失(expected loss) (1.3.1) 这里表示Y关于X的条件密度.根据上面的计算,*小化 L(f)的解为,即Y关于X的条件期望函数,也称作均值回归函数. 以上均值回归函数的推导有一定的技巧性,若借助变分法则可以从*优化中常见的梯度等于0的求极值方法导出,这会帮助我们更好理解并记住这一重要回归函数形式的由来.以下,略微偏离主题,介绍变分法的少许知识及其在统计机器学习中的应用. 变分法是17世纪末发展起来的一门数学分支,20世纪中叶发展起来的有限元法,其数学基础就是变分法.如今,变分法已成为大学生、研究生、工程技术人员和各领域科学专家的**数学基础.为介绍变分法,首先看一个和机器学习有关的概率问题. 例1.3.1 设连续型随机变量X p(x),取值于区间[a, b],其相对熵为,问取什么样的密度函数 p(x),能使上面的相对熵达到*大. 记函数集为区间[a, b]上的概率分布密度函数g.上述问题,可以转化成如下的优化问题: 上述形式和常见的优化问题有些不同,通常的优化问题是在欧氏空间的某个子集中寻找一个*优解向量,而这里需要在函数空间的某个子集中寻找一个*优的函数.但变分法可以看成通常*优化的拓展,由类似的极值一阶条件,得到的欧拉方程一般为一个偏微分方程,其解正是一个函数.变分法简单地概括为求泛函的极值问题.统计机器学习三个步骤中的第二步中构造的平均损失函数(风险函数),更确切地应称作泛函,其定义域是**步给出的模型(函数集),值域为非负实数集合;第三步的优化则是求解该泛函的极值过程.下面的引理是给出微分方程(也可称作正规方程)的基础. 引理1.3.1 (变分法基本引理)设函数 f(x)在区间[a, b]上连续,任意函数η(x)在区间[a, b]上具有 n 阶连续导数,且对于某个非负整数满足条件,如果积分对满足上述条件的任意函数η(x)总成立,则在区间[a, b]上必有. 引理1.3.1的证明参见文献(老大中,2004).注意到引理中的 n 取得越大,对η(x)的光滑性要求越高,满足条件的η(x)一般更少,相应的积分方程对应条件是在减弱的.另外,上述引理中的 a, b 分别取,引理中的条件做适当的调整,引理的结论仍然成立. 以下,我们结合变分法基本原理,来推导一个基础优化问题的解. 考虑如下形式的一个基础优化问题: (1.3.2) 这里 L 是变量 f 的泛函,为简单起见,X假设是一维变量,函数 G 称为泛函的核. 如果. f 是待求*优解,则任一函数 f 可以表达为,其中η(x)满足η(a)=η(b)=0,这可以看成初始边界条件,其在*速降线等经典问题中有实际意义.η(x)在优化中可以看成向量、控制扰动的方向;.是一个实数,控制扰动的大小.假设 f(x)可导,其导函数表示为,因此,优化问题(1.3.2)等价于 (1.3.3) 显然,上式中的目标函数依赖于.但是,若是*优解,则对任意给定的都是的*小值点,即对任意的.假设积分和求导运算可以交换次序,上式变为. 此时,结合基本引理,可以导出下面的结论. 定理1.3.1 使*简泛函 (1.3.4)
-
全图解零基础word excel ppt 应用教程
¥15.6¥48.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥12.7¥39.8 -
机器学习
¥59.4¥108.0 -
情感计算
¥66.8¥89.0 -
LINUX企业运维实战(REDIS+ZABBIX+NGINX+PROMETHEUS+GRAFANA+LNMP)
¥48.3¥69.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
LINUX实战——从入门到精通
¥48.3¥69.0 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
数据驱动的工业人工智能:建模方法与应用
¥68.3¥99.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
UN NX 12.0多轴数控编程案例教程
¥24.3¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥38.7¥79.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥84.5¥119.0