| 作者 |
| 奥雷利安·杰龙 尼克·麦克卢尔 |
| 丛书名 |
| O’Reilly精品图书系列 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9782010141443 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)--------------------------- 本书分为两部分。第一部分,机器学习基础,涵盖以下主题:什么是机器学习,它试图解决什么问题,以及系统的主要类别和基本概念;第二部分,神经网络和深度学习,涵盖以下主题:什么是神经网络以及它们有什么用,使用TensorFlow和Keras构建和训练神经网络的技术,以及如何使用强化学习构建可以通过反复试错,学习好的策略的代理程序。第一部分主要基于Scikit-Learn,而第二部分则使用TensorFlow和Keras。 ---------------------------TensorFlow机器学习实战指南(原书第2版)--------------------------- 本书由资深数据科学家撰写,从实战角度系统讲解TensorFlow基本概念及各种应用实践。真实的应用场景和数据,丰富的代码实例,详尽的操作步骤,带领读者由浅入深系统掌握TensorFlow机器学习算法及其实现。 本书第1章和第2章介绍了关于TensorFlow使用的基础知识,后续章节则针对一些典型算法和典型应用场景进行了实现,并配有较详细的程序说明,可读性非常强。读者如果能对其中代码进行复现,则必定会对TensorFlow的使用了如指掌。 |
| 目录 |
---------------------------机器学习实战:基于Scikit-Learn、Keras和TensorFlow(原书第2版)--------------------------- 前言1 第一部分 机器学习的基础知识11 第1章 机器学习概览13 1.1 什么是机器学习14 1.2 为什么使用机器学习14 1.3 机器学习的应用示例16 1.4 机器学习系统的类型18 1.5 机器学习的主要挑战32 1.6 测试与验证38 1.7 练习题40 第2章 端到端的机器学习项目42 2.1 使用真实数据42 2.2 观察大局44 2.3 获取数据48 2.4 从数据探索和可视化中获得洞见60 2.5 机器学习算法的数据准备66 2.6 选择和训练模型74 2.7 微调模型77 2.8 启动、监控和维护你的系统82 2.9 试试看84 2.10 练习题84 第3章 分类86 3.1 MNIST86 3.2 训练二元分类器88 3.3 性能测量89 3.4 多类分类器99 3.5 误差分析101 3.6 多标签分类104 3.7 多输出分类105 3.8 练习题107 第4章 训练模型108 4.1 线性回归109 4.2 梯度下降113 4.3 多项式回归122 4.4 学习曲线124 4.5 正则化线性模型127 4.6 逻辑回归134 4.7 练习题141 第5章 支持向量机143 5.1 线性SVM分类143 5.2 非线性SVM分类146 5.3 SVM回归151 5.4 工作原理152 5.5 练习题160 第6章 决策树162 6.1 训练和可视化决策树162 6.2 做出预测163 6.3 估计类概率165 6.4 CART训练算法166 6.5 计算复杂度166 6.6 基尼不纯度或熵167 6.7 正则化超参数167 6.8 回归168 6.9 不稳定性170 6.10 练习题172 第7章 集成学习和随机森林173 7.1 投票分类器173 7.2 bagging和pasting176 7.3 随机补丁和随机子空间179 7.4 随机森林180 7.5 提升法182 7.6 堆叠法190 7.7 练习题192 第8章 降维193 8.1 维度的诅咒194 8.2 降维的主要方法195 8.3 PCA198 8.4 内核PCA204 8.5 LLE206 8.6 其他降维技术208 8.7 练习题209 第9章 无监督学习技术211 9.1 聚类212 9.2 高斯混合模型232 9.3 练习题245 第二部分 神经网络与深度学习247 第10章 Keras人工神经网络简介249 10.1 从生物神经元到人工神经元250 10.2 使用Keras实现MLP262 10.3 微调神经网络超参数284 10.4 练习题290 第11章 训练深度神经网络293 11.1 梯度消失与梯度爆炸问题293 11.2 重用预训练层305 11.3 更快的优化器310 11.4 通过正则化避免过拟合321 11.5 总结和实用指南327 11.6 练习题329 第12章 使用TensorFlow自定义模型和训练330 12.1 TensorFlow快速浏览330 12.2 像NumPy一样使用TensorFlow333 12.3 定制模型和训练算法338 12.4 TensorFlow函数和图356 12.5 练习题360 第13章 使用TensorFlow加载和预处理数据362 13.1 数据API363 13.2 TFRecord格式372 13.3 预处理输入特征377 13.4 TF Transform385 13.5 TensorFlow数据集项目386 13.6 练习题388 第14章 使用卷积神经网络的深度计算机视觉390 14.1 视觉皮层的架构390 14.2 卷积层392 14.3 池化层399 14.4 CNN架构402 14.5 使用Keras实现ResNet-34 CNN416 14.6 使用Keras的预训练模型417 14.7 迁移学习的预训练模型418 14.8 分类和定位421 14.9 物体检测422 14.10 语义分割428 14.11 练习题431 第15章 使用RNN和CNN处理序列432 15.1 循环神经元和层432 15.2 训练RNN436 15.3 预测时间序列437 15.4 处理长序列444 15.5 练习题453 第16章 使用RNN和注意力机制进行自然语言处理455 16.1 使用字符RNN生成莎士比亚文本456 16.2 情感分析464 16.3 神经机器翻译的编码器-解码器网络470 16.4 注意力机制476 16.5 最近语言模型的创新486 16.6 练习题488 第17章 使用自动编码器和GAN的表征学习和生成学习489 17.1 有效的数据表征490 17.2 使用不完整的线性自动编码器执行PCA491 17.3 堆叠式自动编码器493 17.4 卷积自动编码器499 17.5 循环自动编码器500 17.6 去噪自动编码器501 17.7 稀疏自动编码器502 17.8变分自动编码器505 17.9 生成式对抗网络510 17.10 练习题522 第18章 强化学习523 18.1 学习优化奖励524 18.2 策略搜索525 18.3 OpenAI Gym介绍526 18.4 神经网络策略529 18.5 评估动作:信用分配问题531 18.6 策略梯度532 18.7 马尔可夫决策过程536 18.8 时序差分学习540 18.9 Q学习540 18.10 实现深度Q学习544 18.11 深度Q学习的变体547 18.12 TF-Agents库550 18.13 一些流行的RL算法概述568 18.14 练习题569 第19章 大规模训练和部署TensorFlow模型571 19.1 为TensorFlow模型提供服务572 19.2 将模型部署到移动端或嵌入式设备586 19.3 使用GPU加速计算589 19.4 跨多个设备的训练模型600 19.5 练习题613 19.6 致谢613 附录A 课后练习题解答614 附录B 机器学习项目清单642 附录C SVM对偶问题647 附录D 自动微分650 附录E 其他流行的人工神经网络架构656 附录F 特殊数据结构663 附录G TensorFlow图669 ---------------------------TensorFlow机器学习实战指南(原书第2版)--------------------------- 译者序 审校者简介 前言 第1章 TensorFlow基础 1 1.1 简介 1 1.2 TensorFlow如何工作 1 1.2.1 开始 1 1.2.2 动手做 2 1.2.3 工作原理 3 1.2.4 参考 3 1.3 声明变量和张量 4 1.3.1 开始 4 1.3.2 动手做 4 1.3.3 工作原理 6 1.3.4 延伸学习 6 1.4 使用占位符和变量 6 1.4.1 开始 6 1.4.2 动手做 6 1.4.3 工作原理 7 1.4.4 延伸学习 7 1.5 操作(计算)矩阵 8 1.5.1 开始 8 1.5.2 动手做 8 1.5.3 工作原理 10 1.6 声明操作 10 1.6.1 开始 10 1.6.2 动手做 10 1.6.3 工作原理 12 1.6.4 延伸学习 12 1.7 实现激励函数 12 1.7.1 开始 12 1.7.2 动手做 12 1.7.3 工作原理 14 1.7.4 延伸学习 14 1.8 读取数据源 14 1.8.1 开始 15 1.8.2 动手做 15 1.8.3 工作原理 18 1.8.4 参考 18 1.9 其他资源 19 1.9.1 开始 19 1.9.2 动手做 19 第2章 TensorFlow进阶 20 2.1 简介 20 2.2 计算图中的操作 20 2.2.1 开始 20 2.2.2 动手做 21 2.2.3 工作原理 21 2.3 TensorFlow的嵌入Layer 21 2.3.1 开始 21 2.3.2 动手做 22 2.3.3 工作原理 22 2.3.4 延伸学习 22 2.4 TensorFlow的多层Layer 23 2.4.1 开始 23 2.4.2 动手做 23 2.4.3 工作原理 24 2.5 TensorFlow实现损失函数 24 2.5.1 开始 25 2.5.2 动手做 26 2.5.3 工作原理 28 2.5.4 延伸学习 28 2.6 TensorFlow实现反向传播 29 2.6.1 开始 29 2.6.2 动手做 30 2.6.3 工作原理 33 2.6.4 延伸学习 33 2.6.5 参考 33 2.7 TensorFlow实现批量训练和随机训练 34 2.7.1 开始 34 2.7.2 动手做 34 2.7.3 工作原理 35 2.7.4 延伸学习 36 2.8 TensorFlow实现创建分类器 36 2.8.1 开始 36 2.8.2 动手做 37 2.8.3 工作原理 38 2.8.4 延伸学习 39 2.8.5 参考 39 2.9 TensorFlow实现模型评估 39 2.9.1 开始 39 2.9.2 动手做 40 2.9.3 工作原理 43 第3章 基于TensorFlow的线性回归 44 3.1 简介 44 3.2 用TensorFlow求逆矩阵 44 3.2.1 开始 45 3.2.2 动手做 45 3.2.3 工作原理 46 3.3 用TensorFlow实现矩阵分解 46 3.3.1 开始 46 3.3.2 动手做 46 3.3.3 工作原理 47 3.4 用TensorFlow实现线性回归算法 47 3.4.1 开始 48 3.4.2 动手做 48 3.4.3 工作原理 50 3.5 理解线性回归中的损失函数 51 3.5.1 开始 51 3.5.2 动手做 51 3.5.3 工作原理 52 3.5.4 延伸学习 53 3.6 用TensorFlow实现戴明回归算法 53 3.6.1 开始 54 3.6.2 动手做 54 3.6.3 工作原理 55 3.7 用TensorFlow实现lasso回归和岭回归算法 56 3.7.1 开始 56 3.7.2 动手做 56 3.7.3 工作原理 58 3.7.4 延伸学习 58 3.8 用TensorFlow实现弹性网络回归算法 58 3.8.1 开始 58 3.8.2 动手做 58 3.8.3 工作原理 60 3.9 用TensorFlow实现逻辑回归算法 60 3.9.1 开始 60 3.9.2 动手做 61 3.9.3 工作原理 63 第4章 基于TensorFlow的支持向量机 65 4.1 简介 65 4.2 线性支持向量机的使用 67 4.2.1 开始 67 4.2.2 动手做 67 4.2.3 工作原理 70 4.3 弱化为线性回归 71 4.3.1 开始 71 4.3.2 动手做 72 4.3.3 工作原理 74 4.4 TensorFlow上核函数的使用 75 4.4.1 开始 75 4.4.2 动手做 76 4.4.3 工作原理 80 4.4.4 延伸学习 80 4.5 用TensorFlow实现非线性支持向量机 80 4.5.1 开始 80 4.5.2 动手做 80 4.5.3 工作原理 83 4.6 用TensorFlow实现多类支持向量机 83 4.6.1 开始 83 4.6.2 动手做 84 4.6.3 工作原理 87 第5章 最近邻域法 88 5.1 简介 88 5.2 最近邻域法的使用 89 5.2.1 开始 89 5.2.2 动手做 89 5.2.3 工作原理 92 5.2.4 延伸学习 92 5.3 如何度量文本距离 92 5.3.1 开始 93 5.3.2 动手做 93 5.3.3 工作原理 95 5.3.4 延伸学习 95 5.4 用TensorFlow实现混合距离计算 95 5.4.1 开始 96 5.4.2 动手做 96 5.4.3 工作原理 98 5.4.4 延伸学习 98 5.5 用TensorFlow实现地址匹配 99 5.5.1 开始 99 5.5.2 动手做 99 5.5.3 工作原理 101 5.6 用TensorFlow实现图像识别 102 5.6.1 开始 102 5.6.2 动手做 102 5.6.3 工作原理 104 5.6.4 延伸学习 105 第6章 神经网络算法 106 6.1 简介 106 6.2 用TensorFlow实现门函数 107 6.2.1 开始 107 6.2.2 动手做 108 6.2.3 工作原理 110 6.3 使用门函数和激励函数 110 6.3.1 开始 111 6.3.2 动手做 111 6.3.3 工作原理 113 6.3.4 延伸学习 113 6.4 用TensorFlow实现单层神经网络 114 6.4.1 开始 114 6.4.2 动手做 114 6.4.3 工作原理 116 6.4.4 延伸学习 117 6.5 用TensorFlow实现神经网络常见层 117 6.5.1 开始 117 6.5.2 动手做 117 6.5.3 工作原理 122 6.6 用TensorFlow实现多层神经网络 123 6.6.1 开始 123 6.6.2 动手做 123 6.6.3 工作原理 127 6.7 线性预测模型的优化 128 6.7.1 开始 128 6.7.2 动手做 128 6.7.3 工作原理 131 6.8 用TensorFlow基于神经网络实现井字棋 132 6.8.1 开始 133 6.8.2 动手做 134 6.8.3 工作原理 139 第7章 自然语言处理 140 7.1 简介 140 7.2 词袋的使用 141 7.2.1 开始 141 7.2.2 动手做 142 7.2.3 工作原理 146 7.2.4 延伸学习 146 7.3 用TensorFlow实现TF-IDF算法 146 7.3.1 开始 146 7.3.2 动手做 147 7.3.3 工作原理 150 7.3.4 延伸学习 151 7.4 用TensorFlow实现skip-gram模型 151 7.4.1 开始 151 7.4.2 动手做 152 7.4.3 工作原理 158 7.4.4 延伸学习 158 7.5 用TensorFlow实现CBOW词嵌入模型 158 7.5.1 开始 158 7.5.2 动手做 159 7.5.3 工作原理 163 7.5.4 延伸学习 163 7.6 使用TensorFlow的Word2Vec预测 163 7.6.1 开始 163 7.6.2 动手做 163 7.6.3 工作原理 168 7.6.4 延伸学习 168 7.7 用TensorFlow实现基于Doc2Vec的情感分析 168 7.7.1 开始 168 7.7.2 动手做 169 7.7.3 工作原理 175 第8章 卷积神经网络 176 8.1 简介 176 8.2 用TensorFlow实现简单的CNN 177 8.2.1 开始 177 8.2.2 动手做 177 8.2.3 工作原理 182 8.2.4 延伸学习 182 8.2.5 参考 183 8.3 用TensorFlow实现进阶的CNN 183 8.3.1 开始 183 8.3.2 动手做 183 8.3.3 工作原理 189 8.3.4 参考 190 8.4 再训练已有的CNN模型 190 8.4.1 开始 190 8.4.2 动手做 191 8.4.3 工作原理 193 8.4.4 参考 193 8.5 用TensorFlow实现图像风格迁移 193 8.5.1 开始 194 8.5.2 动手做 194 8.5.3 工作原理 199 8.5.4 参考 199 8.6 用TensorFlow实现DeepDream 199 8.6.1 开始 199 8.6.2 动手做 199 8.6.3 延伸学习 204 8.6.4 参考 204 第9章 循环神经网络 205 9.1 简介 205 9.2 用TensorFlow实现RNN模型进行垃圾邮件预测 206 9.2.1 开始 206 9.2.2 动手做 206 9.2.3 工作原理 211 9.2.4 延伸学习 211 9.3 用TensorFlow实现LSTM模型 211 9.3.1 开始 211 9.3.2 动手做 212 9.3.3 工作原理 218 9.3.4 延伸学习 218 9.4 TensorFlow堆叠多层LSTM 219 9.4.1 开始 219 9.4.2 动手做 219 9.4.3 工作原理 221 9.5 用TensorFlow实现Seq2Seq翻译模型 221 9.5.1 开始 221 9.5.2 动手做 222 9.5.3 工作原理 232 9.5.4 延伸学习 232 9.6 TensorFlow训练孪生RNN度量相似度 232 9.6.1 开始 232 9.6.2 动手做 233 9.6.3 延伸学习 238 第10章 TensorFlow产品化 239 10.1 简介 239 10.2 TensorFlow的单元测试 239 10.2.1 开始 239 10.2.2 工作原理 244 10.3 TensorFlow的多设备使用 244 10.3.1 开始 244 10.3.2 动手做 245 10.3.3 工作原理 246 10.3.4 延伸学习 246 10.4 分布式TensorFlow实践 246 10.4.1 开始 247 10.4.2 动手做 247 10.4.3 工作原理 248 10.5 TensorFlow产品化开发提示 248 10.5.1 开始 248 10.5.2 动手做 248 10.5.3 工作原理 250 10.6 TensorFlow产品化的实例 250 10.6.1 开始 250 10.6.2 动手做 250 10.6.3 工作原理 253 10.7 TensorFlow服务部署 253 10.7.1 开始 253 10.7.2 动手做 253 10.7.3 工作原理 256 10.7.4 延伸学习 257 第11章 TensorFlow的进阶应用 258 11.1 简介 258 11.2 TensorFlow可视化:Tensorboard 258 11.2.1 开始 258 11.2.2 动手做 259 11.2.3 延伸学习 261 11.3 用TensorFlow实现遗传算法 263 11.3.1 开始 263 11.3.2 动手做 264 11.3.3 工作原理 266 11.3.4 延伸学习 266 11.4 用TensorFlow实现k-means聚类算法 267 11.4.1 开始 267 11.4.2 动手做 267 11.4.3 延伸学习 270 11.5 用TensorFlow求解常微分方程组 270 11.5.1 开始 271 11.5.2 动手做 271 11.5.3 工作原理 272 11.5.4 参考 272 11.6 用TensorFlow实现随机森林算法 273 11.6.1 开始 273 11.6.2 动手做 273 11.6.3 工作原理 276 11.6.4 参考 276 11.7 将Keras作为TensorFlow API使用 277 11.7.1 开始 277 11.7.2 动手做 277 11.7.3 工作原理 280 11.7.4 参考 281 |