万本电子书0元读

万本电子书0元读

顶部广告

Python机器学习(原书第3版)电子书

售       价:¥

40人正在读 | 0人评论 6.6

作       者:(美)塞巴斯蒂安·拉施卡(Sebastian Raschka),(美)瓦希德·米尔贾利利(Vahid Mirjalili)

出  版  社:机械工业出版社

出版时间:2021-06-01

字       数:34.5万

所属分类: 科技 > 计算机/网络 > 软件系统

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书自第1版出版以来,备受广大读者欢迎。第3版结合TensorFlow 2和scikit-learn的*新版本进行了更新,其范围进行了扩展,以涵盖强化学习和生成对抗网络(GAN)这两种*先进的机器学习技术。与同类书相比,本书除了介绍如何用Python和基于Python的机器学习软件库进行实践外,还讨论了机器学习概念的必要细节,同时对机器学习算法的工作原理、使用方法以及如何避免掉入常见的陷阱提供了直观且翔实的解释,是Python机器学习入门之作。书中涵盖了众多*Python库,包括scikit-learn、Keras和TensorFlow等,系统性地梳理和分析了各种经典算法,并通过Python语言以具体代码示例的方式深入浅出地介绍了各种算法的应用,还给出了从情感分析到神经网络的一些实践技巧,可帮助读者快速解决自己和团队面临的一些重要问题。本书适用于机器学习的初学者和专业技术人员。
目录展开

版权页

目录

译者序

前言

作者简介

审校者简介

第1章 赋予计算机从数据中学习的能力

1.1 构建能把数据转换为知识的智能机器

1.2 三种不同类型的机器学习

1.2.1 用监督学习预测未来

1.2.2 用强化学习解决交互问题

1.2.3 用无监督学习发现隐藏的结构

1.3 基本术语与符号

1.3.1 本书中使用的符号和约定

1.3.2 机器学习的术语

1.4 构建机器学习系统的路线图

1.4.1 预处理——整理数据

1.4.2 训练和选择预测模型

1.4.3 评估模型并对未曾谋面的数据进行预测

1.5 将Python用于机器学习

1.5.1 利用Python Package Index安装Python及其他软件包

1.5.2 采用Anaconda Python发行版和软件包管理器

1.5.3 用于科学计算、数据科学和机器学习的软件包

1.6 本章小结

第2章 训练简单的机器学习分类算法

2.1 人工神经元——机器学习的早期历史

2.1.1 人工神经元的正式定义

2.1.2 感知器学习规则

2.2 用Python实现感知器学习算法

2.2.1 面向对象的感知器API

2.2.2 在鸢尾花数据集上训练感知器模型

2.3 自适应线性神经元和学习收敛

2.3.1 通过梯度下降最小化代价函数

2.3.2 用Python实现Adaline

2.3.3 通过特征缩放改善梯度下降

2.3.4 大规模机器学习与随机梯度下降

2.4 本章小结

第3章 scikit-learn机器学习分类器

3.1 选择分类算法

3.2 了解scikit-learn的第一步——训练感知器

3.3 基于逻辑回归的分类概率建模

3.3.1 逻辑回归与条件概率

3.3.2 学习逻辑代价函数的权重

3.3.3 将Adaline实现转换为一个逻辑回归算法

3.3.4 用scikit-learn训练逻辑回归模型

3.3.5 通过正则化解决过拟合问题

3.4 使用支持向量机最大化分类间隔

3.4.1 对分类间隔最大化的直观认识

3.4.2 用松弛变量解决非线性可分问题

3.4.3 其他的scikit-learn实现

3.5 用核支持向量机求解非线性问题

3.5.1 处理线性不可分数据的核方法

3.5.2 利用核技巧发现高维空间的分离超平面

3.6 决策树学习

3.6.1 最大化信息增益——获得最大收益

3.6.2 构建决策树

3.6.3 多个决策树的随机森林组合

3.7 k-近邻——一种惰性学习算法

3.8 本章小结

第4章 构建良好的训练数据集——数据预处理

4.1 处理缺失数据

4.1.1 识别数据中的缺失值

4.1.2 删除有缺失值的训练样本或特征

4.1.3 填补缺失值

4.1.4 了解scikit-learn估计器API

4.2 处理类别数据

4.2.1 用pandas实现类别数据的编码

4.2.2 映射序数特征

4.2.3 为分类标签编码

4.2.4 为名义特征做独热编码

4.3 把数据集划分为独立的训练数据集和测试数据集

4.4 保持相同的特征缩放

4.5 选择有意义的特征

4.5.1 L1和L2正则化对模型复杂度的惩罚

4.5.2 L2正则化的几何解释

4.5.3 L1正则化的稀疏解决方案

4.5.4 序列特征选择算法

4.6 用随机森林评估特征的重要性

4.7 本章小结

第5章 通过降维压缩数据

5.1 用主成分分析实现无监督降维

5.1.1 主成分分析的主要步骤

5.1.2 逐步提取主成分

5.1.3 总方差和解释方差

5.1.4 特征变换

5.1.5 用scikit-learn实现主成分分析

5.2 基于线性判别分析的监督数据压缩

5.2.1 主成分分析与线性判别分析

5.2.2 线性判别分析的内部工作原理

5.2.3 计算散布矩阵

5.2.4 为新特征子空间选择线性判别

5.2.5 将样本投影到新的特征空间

5.2.6 用scikit-learn实现LDA

5.3 非线性映射的核主成分分析

5.3.1 核函数与核技巧

5.3.2 用Python实现核主成分分析

5.3.3 投影新的数据点

5.3.4 scikit-learn的核主成分分析

5.4 本章小结

第6章 模型评估和超参数调优的最佳实践

6.1 用流水线方法简化工作流

6.1.1 加载威斯康星乳腺癌数据集

6.1.2 在流水线中集成转换器和估计器

6.2 使用k折交叉验证评估模型性能

6.2.1 holdout方法

6.2.2 k折交叉验证

6.3 用学习和验证曲线调试算法

6.3.1 用学习曲线诊断偏差和方差问题

6.3.2 用验证曲线解决过拟合和欠拟合问题

6.4 通过网格搜索调优机器学习模型

6.4.1 通过网格搜索调优超参数

6.4.2 通过嵌套式交叉验证选择算法

6.5 了解不同的性能评估指标

6.5.1 分析混淆矩阵

6.5.2 优化分类模型的精度和召回率

6.5.3 绘制ROC曲线

6.5.4 多元分类评分指标

6.5.5 处理类不均衡问题

6.6 本章小结

第7章 组合不同模型的集成学习

7.1 集成学习

7.2 通过多数票机制组合分类器

7.2.1 实现一个简单的多数票分类器

7.2.2 用多数票原则进行预测

7.2.3 评估和优化集成分类器

7.3 bagging——基于bootstrap样本构建集成分类器

7.3.1 bagging简介

7.3.2 应用bagging对葡萄酒数据集中的样本分类

7.4 通过自适应boosting提高弱学习机的性能

7.4.1 boosting的工作原理

7.4.2 用scikit-learn实现AdaBoost

7.5 本章小结

第8章 用机器学习进行情感分析

8.1 为文本处理预备好IMDb电影评论数据

8.1.1 获取电影评论数据集

8.1.2 把电影评论数据集预处理成更方便的格式

8.2 词袋模型介绍

8.2.1 把单词转换成特征向量

8.2.2 通过词频-逆文档频率评估单词相关性

8.2.3 清洗文本数据

8.2.4 把文档处理成令牌

8.3 训练用于文档分类的逻辑回归模型

8.4 处理更大的数据集——在线算法和核外学习

8.5 用潜在狄利克雷分配实现主题建模

8.5.1 使用LDA分解文本文档

8.5.2 scikit-learn中的LDA

8.6 本章小结

第9章 将机器学习模型嵌入Web应用

9.1 序列化拟合的scikit-learn估计器

9.2 搭建SQLite数据库存储数据

9.3 用Flask开发Web应用

9.3.1 第一个Flask Web应用

9.3.2 表单验证与渲染

9.4 将电影评论分类器转换为Web应用

9.4.1 文件与文件夹——研究目录树

9.4.2 实现主应用app.py

9.4.3 建立评论表单

9.4.4 创建结果页面模板

9.5 在公共服务器上部署Web应用

9.5.1 创建PythonAnywhere账户

9.5.2 上传电影分类器应用

9.5.3 更新电影分类器

9.6 本章小结

第10章 用回归分析预测连续目标变量

10.1 线性回归简介

10.1.1 简单线性回归

10.1.2 多元线性回归

10.2 探索住房数据集

10.2.1 加载住房数据

10.2.2 可视化数据集的重要特点

10.2.3 用相关矩阵查看关系

10.3 普通最小二乘线性回归模型的实现

10.3.1 用梯度下降方法求解回归参数

10.3.2 通过scikit-learn估计回归模型的系数

10.4 利用RANSAC拟合鲁棒回归模型

10.5 评估线性回归模型的性能

10.6 用正则化方法进行回归

10.7 将线性回归模型转换为曲线——多项式回归

10.7.1 用scikit-learn增加多项式项

10.7.2 为住房数据集中的非线性关系建模

10.8 用随机森林处理非线性关系

10.8.1 决策树回归

10.8.2 随机森林回归

10.9 本章小结

第11章 用聚类分析处理无标签数据

11.1 用k-均值进行相似性分组

11.1.1 用scikit-learn实现k-均值聚类

11.1.2 k-均值++——更聪明地设置初始集群质心的方法

11.1.3 硬聚类与软聚类

11.1.4 用肘部方法求解最优集群数

11.1.5 通过轮廓图量化聚类质量

11.2 把集群组织成层次树

11.2.1 以自下而上的方式聚类

11.2.2 在距离矩阵上进行层次聚类

11.2.3 热度图附加树状图

11.2.4 通过scikit-learn进行凝聚聚类

11.3 通过DBSCAN定位高密度区域

11.4 本章小结

第12章 从零开始实现多层人工神经网络

12.1 用人工神经网络建立复杂函数模型

12.1.1 单层神经网络回顾

12.1.2 多层神经网络体系结构简介

12.1.3 利用正向传播激活神经网络

12.2 识别手写数字

12.2.1 获取并准备MNIST数据集

12.2.2 实现一个多层感知器

12.3 训练人工神经网络

12.3.1 逻辑代价函数的计算

12.3.2 理解反向传播

12.3.3 通过反向传播训练神经网络

12.4 关于神经网络的收敛性

12.5 关于神经网络实现的最后几句话

12.6 本章小结

第13章 用TensorFlow并行训练神经网络

13.1 TensorFlow与模型训练的性能

13.1.1 性能挑战

13.1.2 什么是TensorFlow

13.1.3 如何学习TensorFlow

13.2 学习TensorFlow的第一步

13.2.1 安装TensorFlow

13.2.2 在TensorFlow中创建张量

13.2.3 对张量形状和数据类型进行操作

13.2.4 对张量进行数学运算

13.2.5 拆分、堆叠和连接张量

13.3 用TensorFlow的Dataset API构建输入流水线

13.3.1 用现存张量创建TensorFlow的数据集

13.3.2 把两个张量整合成一个联合数据集

13.3.3 洗牌、批处理和重复

13.3.4 从本地磁盘的文件创建数据集

13.3.5 从tensorflow_datasets获取可用的数据集

13.4 在TensorFlow中构建神经网络模型

13.4.1 TensorFlow Keras API(tf.keras)

13.4.2 构建线性回归模型

13.4.3 通过.compile()和.fit()方法训练模型

13.4.4 在鸢尾花数据集上构建多层分类感知器

13.4.5 在测试数据集上评估训练后的模型

13.4.6 保存并重新加载训练后的模型

13.5 选择多层神经网络的激活函数

13.5.1 关于逻辑函数的回顾

13.5.2 在多元分类中调用softmax函数评估分类概率

13.5.3 利用双曲正切拓宽输出范围

13.5.4 修正线性单元激活函数

13.6 本章小结

第14章 深入探讨TensorFlow的工作原理

14.1 TensorFlow的主要功能

14.2 TensorFlow的计算图:迁移到TensorFlow v2

14.2.1 了解TensorFlow的计算图

14.2.2 在TensorFlow v1.x中创建计算图

14.2.3 将计算图迁移到TensorFlow v2

14.2.4 在TensorFlow v1.x中将输入数据加载到模型

14.2.5 在TensorFlow v2中将输入数据加载到模型

14.2.6 通过函数修饰器提高计算性能

14.3 用于存储和更新模型参数的TensorFlow变量对象

14.4 通过自动微分和GradientTape计算梯度

14.4.1 针对可训练变量计算损失的梯度

14.4.2 针对不可训练张量计算梯度

14.4.3 保留用于多个梯度计算的资源

14.5 通过Keras API简化通用体系结构的实现

14.5.1 解决XOR分类问题

14.5.2 用Keras的函数式API灵活建模

14.5.3 基于Keras的Model类建模

14.5.4 编写自定义Keras层

14.6 TensorFlow估计器

14.6.1 使用特征列

14.6.2 带预制估计器的机器学习

14.6.3 用估计器进行MNIST手写数字分类

14.6.4 基于现有Keras模型创建自定义估计器

14.7 本章小结

第15章 用深度卷积神经网络为图像分类

15.1 构成卷积神经网络的模块

15.1.1 理解CNN与特征层次

15.1.2 离散卷积计算

15.1.3 子采样层

15.2 构建卷积神经网络

15.2.1 处理多个输入或者颜色通道

15.2.2 通过dropout正则化神经网络

15.2.3 分类过程中的损失函数

15.3 用TensorFlow实现深度卷积神经网络

15.3.1 多层卷积神经网络的体系结构

15.3.2 数据加载和预处理

15.3.3 用TensorFlow的Keras API实现卷积神经网络模型

15.4 用卷积神经网络根据人脸图像进行性别分类

15.4.1 加载CelebA数据集

15.4.2 图像转换和数据扩增

15.4.3 训练基于卷积神经网络的性别分类器

15.5 本章小结

第16章 用循环神经网络为序列数据建模

16.1 序列数据介绍

16.1.1 序列数据建模——顺序很重要

16.1.2 序列数据的表达

16.1.3 不同类别的序列建模

16.2 循环神经网络序列建模

16.2.1 了解循环神经网络的循环机制

16.2.2 在循环神经网络中计算激活值

16.2.3 隐藏循环与输出循环

16.2.4 学习长程交互面临的挑战

16.2.5 长短期记忆单元

16.3 用TensorFlow实现循环神经网络序列建模

16.3.1 项目1:对IMDb电影评论进行情感分析

16.3.2 项目2:用TensorFlow实现字符级语言建模

16.4 用转换器模型理解语言

16.4.1 了解自注意力机制

16.4.2 多头注意力和转换器块

16.5 本章小结

第17章 用生成对抗网络合成新数据

17.1 生成对抗网络介绍

17.1.1 自编码器

17.1.2 用于合成新数据的生成模型

17.1.3 用GAN生成新样本

17.1.4 理解GAN模型中生成器和判别器网络的损失函数

17.2 从零开始实现GAN

17.2.1 用谷歌Colab训练GAN模型

17.2.2 实现生成器和判别器网络

17.2.3 定义训练数据集

17.2.4 训练GAN模型

17.3 用卷积和Wasserstein GAN提高合成图像的质量

17.3.1 转置卷积

17.3.2 批归一化

17.3.3 实现生成器和判别器

17.3.4 两个分布之间相异度的度量

17.3.5 在GAN实践中使用EM距离

17.3.6 梯度惩罚

17.3.7 实现WGAN-GP来训练DCGAN模型

17.3.8 模式坍塌

17.4 其他的GAN应用

17.5 本章小结

第18章 用于复杂环境决策的强化学习

18.1 概述——从经验中学习

18.1.1 了解强化学习

18.1.2 定义强化学习系统的智能体-环境接口

18.2 RL的理论基础

18.2.1 马尔可夫决策过程

18.2.2 马尔可夫决策过程的数学公式

18.2.3 RL术语:回报、策略和价值函数

18.2.4 用贝尔曼方程动态编程

18.3 强化学习算法

18.3.1 动态编程

18.3.2 蒙特卡罗强化学习

18.3.3 时序差分学习

18.4 实现第一个RL算法

18.4.1 介绍OpenAI Gym工具包

18.4.2 用Q学习解决网格世界问题

18.4.3 深度Q学习概览

18.5 本章小结

累计评论(0条) 5个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部