新書推薦:
《
女人的胜利
》
售價:HK$
55.9
《
数据有道:数据分析+图论与网络+微课+Python编程(鸢尾花数学大系:从加减乘除到机器学习)
》
售價:HK$
266.6
《
500万次倾听:陪伤心的人聊聊
》
售價:HK$
53.8
《
英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。)
》
售價:HK$
80.6
《
万千心理·儿童心理治疗中的心智化:临床实践指导
》
售價:HK$
87.4
《
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
》
售價:HK$
66.1
《
周易
》
售價:HK$
44.6
《
东南亚的传统与发展
》
售價:HK$
67.2
編輯推薦:
本书帮助读者入门深度学习深度学习入门,与其他深度学习入门图书的区别在于,本书中包含大量图解,并且采用口语化文字写作。由于作者是计算机图形学和深度学习方面的专家,所以在用图形图像来解释专业概念上具有一定优势和经验,因此本书中的大量图解也是本书一大特色。有了图解就意味着一些比较专业知识不一定需要用大量数学和公式去解释,所以这本书面向读者人群可以扩大到非计算机专业人士,哪怕是对深度学习、人工智能完全没有学习基础的人,也可以读懂。
內容簡介:
本书适合任何想要深入了解深度学习这个迷人领域的人,您不需要具备高级数学和编程知识就可以掌握其根本原理。如果您想知道这些工具是如何工作的,并学会自己使用它们,答案尽在书中。而且,如果您已经准备好编写自己的程序,那么随附的Github存储库中还有大量补充的Python笔记本可以帮助您。
本书讲解语言通俗易懂,包含大量的的彩色插图和具有启发性的类比,以及丰富的现实世界的例子,深入地地解释了深度学习的关键概念,包括:
?文本生成器如何创建新颖的故事和文章。
?深度学习系统如何在人类游戏中学习游戏并获胜。
?图像分类系统如何识别照片中的物体或人。
?如何以对日常生活有用的方式思考概率。
?如何使用构成现代人工智能核心的机器学习技术。
各种各样的智力冒险家都可以使用本书中涵盖的强大思想来构建智能系统,帮助我们更好地理解世界和生活在其中的每个人。这就是人工智能的未来,这本书可以让你充分想象它的未来。
關於作者:
[美]安德鲁·格拉斯纳:
拥有北卡罗来纳州教堂山分校计算机科学博士学位,他是一位专门从事计算机图形学和深度学习的研究的科学家。他目前是Weta Digital(维塔数码)的高级研究科学家,致力于将深度学习与电影和电视世界级视觉效果的制作相结合。他曾在IBM沃森实验室、施乐PARC和微软研究所等实验室担任研究员。同时他也是最早的图形研究杂志ACM-TOG9(计算机图形学国际顶级期刊)的主编,和最早的计算机图形学会议SIGGRAPH(Special Interest Group for Computer GRAPHICS,由美国计算机协会计算机图形专业组组织的计算机图形学顶级年度会议)的技术论文主席。他撰写或编辑了十几本关于计算机图形学的技术书籍,包括著名的Principles of Digital Image Synthesis、Graphics Gems系列等。
译者简介:
赵鸣,2006年获华中师范大学计算机辅助教学硕士学位,2015年获哈尔滨工业大学计算机应用方向博士学位,现任长江大学教授。目前主持在研省部级项目四项,横向项目两项。他的研究兴趣包括计算智能、图像和信号处理、模式识别等。他是荆州市智慧警务专家成员,也是IEEE高级成员
曾小健,出版AI图书多部,在量化金融和AI领域有多年经验,计算机博士在读,CSDN博客专家,多个大模型开源项目源码贡献人,曾在华为云、中关村在线等多所大型互联网科技企业担任重要职务,GitHub:ArtificialZeng; CSDN:AI生成曾小健。
李现伟,日本早稻田大学博士毕业,硕士生导师,主要从事大数据、机器学习、物联网等方向的教学与工作。发表SCI论文20余篇,主持和参与安徽省自然科学基金、安徽省重点研究与开发计划、安徽省教育厅优秀青年基金项目等多项。获得中国发明协会创业奖成果奖二等奖,获得绿色矿山科学技术奖二等奖一项。
任玉柱,毕业于国防科学技术大学网络工程专业,主要研究方向为信息安全,机器学习,人工智能,发表相关领域研究文章3篇。
目錄 :
详细目录
致谢
前言
这本书是为谁准备的···············································································
这本书没有复杂的数学和代码
如果你想要的话,这里有代码
图片也可以找到!
勘误
关于本书
第1部分:基础理论
第2部分:初级机器学习
第3部分:深度学习的基础
第4部分:进阶知识
最后的话·····························································································
第一部分 基础理论 1
第1 章 机器学习技术概述 2
1.1 专家系统
1.2 监督学习
1.3 无监督学习
1.4 强化学习
1.5 深度学习
1.6 本章总结
第2 章 统计学基础 11
2.1 描述随机性
2.2 随机变量与概率分布
2.3 常见的分布
详细目录 VII
2.3.1 连续分布
2.3.2 离散分布
2.4 随机值的集合
2.4.1 期望值
2.4.2 依赖
2.4.3 独立同分布变量
2.5 采样与替换
2.5.1 替换采样法
2.5.2 无替换采样法
2.6 自采样法
2.7 协方差和相关性
2.7.1 协方差
2.7.2 相关性
2.8 统计数据的局限性
2.9 高维空间
2.10 本章总结
第3 章 性能度量 37
3.1 不同类型的概率
3.1.1 投掷飞镖
3.1.2 简单概率
3.1.3 条件概率
3.1.4 联合概率
3.1.5 边缘概率
3.2 评价正确性
3.2.1 样本分类
3.2.2 混淆矩阵
3.2.3 错误的特征
3.2.4 评价正确与否
3.2.5 准确率
3.2.6 精度
3.2.7 召回率
3.2.8 精度与召回率的权衡
3.2.9 误导性结果
3.2.10 F1分数
3.2.11 关于这些指标
3.2.12 其他评价方式
3.3 正确构造混淆矩阵
3.4 本章总结
第4 章 贝叶斯方法 66
4.1 频率法与贝叶斯概率
4.1.1 频率法
4.1.2 贝叶斯方法
4.1.3 频率派与贝叶斯派
4.2 频率法抛掷硬币
4.3 贝叶斯方法抛掷硬币
4.3.1 启发性的例子
4.3.2 绘制抛掷硬币的概率
4.3.3 用概率表示抛掷硬币
4.3.4 贝叶斯公式
4.3.5 关于贝叶斯公式的讨论
4.4 贝叶斯公式与混淆矩阵
4.5 再论贝叶斯公式
4.5.1 后验-先验循环
4.5.2 贝叶斯循环实战
4.6 多重假设
4.7 本章总结
第5 章 曲线和曲面
5.1 函数的性质
5.2 导数
5.2.1 最大值和最小值
5.2.2 切线
5.2.3 用导数求最小值和最大值
5.3 梯度
5.3.1 水、重力和梯度
5.3.2 用梯度求最大值和最小值
5.3.3 鞍点
5.4 本章总结
第6 章 信息论
6.1 信息带给我们的惊讶感
6.1.1 为什么会惊讶
6.1.2 信息解密
6.2 衡量信息量
6.3 自适应码
6.3.1 摩斯电码
6.3.2 调整摩斯电码
6.4 熵
6.5 交叉熵
6.5.1 两种自适应码
6.5.2 使用编码
6.5.3 实践中的交叉熵 ·
6.6 KL散度
6.7 本章总结
第二部分 初级机器学习
第7 章 分类
7.1 二维空间的二元分类问题
7.2 二维空间的多分类问题
7.3 多元分类
7.3.1 一对多
7.3.2 一对一
7.4 聚类
7.5 维度诅咒
7.5.1 维度和密度
7.5.2 高维奇异性
7.6 本章总结
第8 章 训练和测试
8.1 训练
8.2 测试
8.2.1 测试集
8.2.2 验证集
8.3 交叉验证
8.4 k-Fold交叉验证法
8.5 本章总结
第9 章 过拟合与欠拟合
9.1 找到一个好的拟合
9.1.1 过拟合
9.1.2 欠拟合
9.2 检测和解决过拟合
9.2.1 提前停止
9.2.2 正则化
9.3 偏差和方差
9.3.1 匹配基础数据
9.3.2 高偏差与低方差
9.3.3 低偏差与高方差
9.3.4 比较曲线
9.4 用贝叶斯方法拟合直线
9.5 本章总结
第10 章 数据预处理
10.1 基本数据清洗
10.2 数据一致性
10.3 数据类型
10.4 独热编码
10.5 归一化与标准化
10.5.1 归一化
10.5.2 标准化
10.5.3 记录转换过程
10.6 其他转换方式
10.6.1 切片处理
10.6.2 样本切片
10.6.3 特征切片
10.6.4 元素切片
10.7 逆变换
10.8 交叉验证中的信息泄露
10.9 收缩数据集
10.9.1 特征选择
10.9.2 降维
10.10 主成分分析
10.10.1 简单图像的PCA处理
10.10.2 真实图像的主成分分析
10.11 本章总结
第11 章 分类器
11.1 常见分类器
11.2 k-最近邻算法
11.3 决策树
11.3.1 决策树概览
11.3.2 决策树构建
11.3.3 过拟合树
11.3.4 拆分节点
11.4 支持向量机
11.4.1 基础算法
11.4.2 支持向量机核函数
11.5 朴素贝叶斯
11.6 分类器的对比
11.7 本章总结
第12 章 集成学习
12.1 投票
12.2 决策树的集成
12.2.1 装袋算法
12.2.2 随机森林
12.2.3 极端随机树集成
12.3 助推法
12.4 本章总结
第三部分 深度学习的基础
第13 章 神经网络
13.1 生物神经元
13.2 人工神经元
13.2.1 感知器
13.2.2 现代人工神经元
13.3 绘制神经元
13.4 前馈网络
13.5 神经网络图
13.6 初始化权重
13.7 深度神经网络
13.8 全连接层
13.9 张量
13.10 防止坍缩
13.11 激活函数
13.11.1 直线函数
13.11.2 阶跃函数
13.11.3 分段线性函数
13.11.4 平滑函数
13.11.5 激活函数图像总结
13.11.6 比较激活函数
13.12 Softmax函数
13.13 本章总结
第14 章 反向传播算法
14.1 训练过程概述
14.1.1 降低误差
14.1.2 一种缓慢的学习算法
14.1.3 梯度下降
14.2 快速开始
14.3 微型神经网络中的反向传播
14.3.1 寻找输出神经元的增量
14.3.2 使用δ来调整权重
14.3.3 其他神经元的δ值
14.4 大型神经网络中的反向传播算法
14.5 学习率
14.5.1 构建二分类器
14.5.2 选择学习率
14.5.3 更小的学习率
14.6 本章总结
第15 章 优化器
15.1 用二维曲线表示误差
15.2 调整学习率
15.2.1 恒定大小的更新
15.2.2 随着时间的推移改变学习率
15.2.3 衰减调整策略
15.3 更新策略
15.3.1 批量梯度下降法
15.3.2 随机梯度下降法
15.3.3 小批次梯度下降法
15.4 梯度下降的变体
15.4.1 动量
15.4.2 内斯特罗夫动量
15.4.3 AdaGrad算法
15.4.4 Adadelta和RMSProp算法
15.4.5 Adam算法
15.5 优化器的选择
15.6 正则化
15.6.1 Dropout
15.6.2 BatchNorm
15.7 本章总结
第四部分 进阶知识
第16 章 卷积神经网络
16.1 初识卷积
16.1.1 颜色检测
16.1.2 权重共享
16.1.3 大一点的卷积核
16.1.4 卷积核和特征
16.1.5 填充
16.2 多维卷积
16.3 多重卷积核
16.4 卷积层
16.4.1 一维卷积
16.4.2 1×1卷积
16.5 更改输出大小
16.5.1 池化
16.5.2 跨步前进
16.5.3 转置卷积
16.6 卷积核的层次结构
16.6.1 简化假设
16.6.2 寻找面具
16.6.3 寻找眼睛、鼻子和嘴巴
16.6.4 应用卷积核
16.7 本章总结
第17 章 卷积网络实践
17.1 手写数字分类
17.2 VGG16
17.3 图解卷积核(1)
17.4 图解卷积核(2)
17.5 对抗样本
17.6 本章总结
第18 章 自编码器
18.1 编码简介
18.2 混合表示
18.3 最简单的自编码器
18.4 更好的自编码器
18.5 探索自编码器
18.5.1 探索潜在变量
18.5.2 参数空间
18.5.3 混合潜在变量
18.5.4 基于新输入的预测
18.6 卷积自编码器
18.6.1 混合潜在变量
18.6.2 基于新输入的预测
18.7 去噪
18.8 可变自编码器
18.8.1 潜在变量的分布
18.8.2 可变自编码器结构
18.9 探索VAE
18.9.1 使用MNIST样本
18.9.2 使用两个潜在变量
18.9.3 产生新的输入
18.10 本章总结
第19 章 循环神经网络
19.1 处理语言
19.1.1 常见的NLP任务
19.1.2 文本数值化
19.1.3 微调和下游网络
19.2 全连接预测
19.2.1 测试网络
19.2.2 失败的原因
19.3 循环神经网络
19.3.1 状态
XVI
19.3.2 卷起图表
19.3.3 实践循环单元
19.3.4 训练循环神经网络
19.3.5 长短期记忆与门控循环网络
19.4 使用循环神经网络
19.4.1 处理太阳黑子数据
19.4.2 生成文本
19.4.3 其他架构
19.5 Seq2Seq
19.6 本章总结
第20 章 注意力机制和Transformer模型
20.1 嵌入
20.1.1 词嵌入技术
20.1.2 ELMo模型
20.2 注意力机制
20.2.1 形象比喻
20.2.2 自注意力机制
20.2.3 Q/KV注意力机制
20.2.4 多头注意力机制
20.2.5 层图标
20.3 Transformer模型
20.3.1 跳跃连接
20.3.2 Norm-Add
20.3.3 位置编码
20.3.4 构建Transformer模块
20.3.5 运行Transformer模块
20.4 BERT和GPT-2
20.4.1 BERT
20.4.2 GPT-2
20.4.3 生成器讨论
20.4.4 数据中毒
20.5 本章总结
第21 章 强化学习
21.1 基本思想
21.2 学习新游戏
21.3 强化学习的结构
21.3.1 步骤1:代理选择操作
21.3.2 步骤2:环境做出反应
21.3.3 步骤3:代理自我更新
21.3.4 回到全局
21.3.5 理解回报
21.4 Flippers
21.5 L-Learning
21.5.1 基础知识
21.5.2 L-Learning算法
21.5.3 性能测试
21.5.4 不可预测性
21.6 Q-Learning
21.6.1 Q值和更新
21.6.2 Q-Learning策略
21.6.3 策略总览
21.6.4 房间里的大象
21.6.5 Q-Learning的作用
21.7 SARSA
21.7.1 SARSA算法
21.7.2 SARSA的作用
21.7.3 Q-Learning与SARSA的比较
21.8 纵观全局
21.9 本章总结
第22 章 生成对抗网络
22.1 伪造筹码
22.1.1 从经验中学习
22.1.2 训练生成器网络
22.1.3 学习过程
22.1.4 理解对抗性
22.2 实现生成对抗网络
22.2.1 鉴别器
22.2.2 生成器
22.2.3 训练生成对抗网络
22.3 生成对抗网络的作用
22.3.1 构建鉴别器和生成器
22.3.2 训练网络
22.3.3 测试网络
22.4 深度卷积生成对抗网络
22.5 挑战
22.5.1 大样本训练
22.5.2 模态崩溃
22.5.3 使用生成的数据训练
22.6 本章总结
第23 章 创意应用
23.1 深梦系统
23.1.1 刺激卷积核
23.1.2 测试我们的算法
23.2 神经风格迁移
23.2.1 表现风格
23.2.2 表现内容
23.2.3 风格和内容
23.2.4 测试算法
23.3 生成本书更多内容
23.4 本章总结
23.5 最后的思考
参考文献
图片来源
索引
內容試閱 :
第15章 优化器
训练神经网络通常是一个非常耗时的过程,任何能加速这个过程的方法都将受到我们的欢迎。本章将介绍一系列优化神经网络的方法,这些方法旨在通过提高梯度下降的效率来加快学习速
度。我们的目标是使梯度下降运行得更快,并避免一些可能导致其陷入困境的问题。这些方法还自动完成了一些寻找最佳学习率的工作,包括可以随着时间的推移自动调整学习率的算法。这些方法统称为优化器。每个优化器都有其优点和缺点,为了在训练神经网络时做出正确的选择,我们需要了解它们。让我们先绘制一些能够直观地表示误差的图形,并观察误差是如何变化的。这些图形将帮助我们建立一些与后面介绍的算法相关的基础知识。
15.1 用二维曲线表示误差
从几何思想的角度来思考系统中的错误是比较直观的,所以我们经常将误差绘制为二维曲线。
为了熟悉这种二维误差曲线,我们参考一个将两个类的样本拆分为排列在一条线上的点的示例。负值处的点属于一类,零及正值方向的点属于另一类,如图15-1所示。图15-1:一条线上的两类点。0值左边的点为类0,用蓝色表示;其他点为类1,用黄色表示让我们为这些样本构建一个分类器。在本例中,边界仅包含一个数字。该数字左侧的所有样本都分配给类0,右侧的所有样本则分配给类1。想象如果我们沿着这条线移动这个分界点,就可以计算出被错误分类的样本数量,并称之为误差。我们可以将结果总结为一张图,其中X轴显示了每个潜在的分界点,与该点相关的误差绘制为其上方曲线中的一个点。图15-2显示了这个过程。
根据第14章介绍的使用平滑误差函数曲线计算梯度(从而应用反向传播算法)的方法,我们可以对图15-2的误差曲线进行平滑处理,如下页图15-3所示。
对于这组特定的随机数据,边界点为0或者0左边一点时,误差是0。因此不管从哪
里开始,我们都希望分类器最终在0这一点结束。
我们的目标是找到一种方法来定位任何误差曲线的最小值。如果能做到,就可以将
其应用于神经网络的所有权重,从而减少整个神经网络的误差。
15.2 调整学习率
使用梯度下降来训练系统时,最关键的超参数是学习率,通常用小写希腊字母
η(eta)表示,取值范围在0.01至0.0001之间。η取较大的值会带来更快的学习,但可能
会导致我们过度调整神经元的参数,从而错过误差的最佳取值(波谷)。η取较小的值
( 接近0,但始终为正)会导致学习速度减慢,并可能陷入局部的波谷(局部最优解),
即使附近有更深的波谷(全局最优解),它们也可能永远无法到达。下页图15-4以图形
方式概括了这些现象。
许多优化器都包含一个重要思想,那就是我们可以通过改变学习率来提高学习效
率。这种思想类似于使用金属探测器在海滩上寻找埋藏的金属。我们首先要迈出大步,
在海滩上寻找大致的位置,但当探测器亮起,我们会采取越来越小的移动步伐来确定金
属物体的详细位置。同样,我们通常在深度学习过程的早期沿着误差曲线迈出大步,同
时寻找低谷。随着时间的推移,越来越接近它的最低点,采取的学习率也越来越小,最
终找到那个山谷。
我们可以用一条简单的误差曲线来表示这个优化器,该曲线包含一个孤立的具有负
高斯曲线形状的谷值,如图15-5所示。
为了清晰展示,图15-6中的坡度已缩小到其实际值的25%。我们可以看到,该曲线
小于0的输入值,梯度为负;而大于0的输入数值,梯度为正。当输入为0时,处于碗的
最底部,因此那里的梯度为0,仅绘制为一个点。
15.2.1 恒定大小的更新
首先来观察使用恒定的学习率时会发生什么?换句话说,总是用相同的η值来缩放梯度,该值在整个训练过程中保持不变。图15-7显示了恒定大小更新的基本步骤。