产品特色
编辑推荐
机器学习已成为许多商业应用和研究项目不可或缺的一部分,海量数据使得机器学习的应用范围远超人们想象。本书将向所有对机器学习技术感兴趣的初学者展示,自己动手构建机器学习解决方案并非难事!
书中重点讨论机器学习算法的实践而不是背后的数学,全面涵盖在实践中实现机器学习算法的所有重要内容,帮助读者使用Python和scikit-learn库一步一步构建一个有效的机器学习应用。
* 机器学习的基本概念及其应用
* 常用机器学习算法的优缺点
* 机器学习所处理的数据的表示方法,包括重点关注数据的哪些方面
* 模型评估和调参的方法
* 管道的概念
* 处理文本数据的方法,包括文本特有的处理方法
* 进一步提高机器学习和数据科学技能的建议
内容简介
本书是机器学习入门书,以Python语言介绍。主要内容包括:机器学习的基本概念及其应用;实践中常用的机器学习算法以及这些算法的优缺点;在机器学习中待处理数据的呈现方式的重要性,以及应重点关注数据的哪些方面;模型评估和调参的方法,重点讲解交叉验证和网格搜索;管道的概念;如何将前面各章的方法应用到文本数据上,还介绍了一些文本特有的处理方法。
本书适合机器学习从业者或有志成为机器学习从业者的人阅读。
作者简介
Andreas C.Müller,scikit-learn库维护者和核心贡献者。现任哥伦比亚大学数据科学研究院讲师,曾任纽约大学数据科学中心助理研究员、***公司计算机视觉应用的机器学习研究员。在波恩大学获得机器学习博士学位。
Sarah Guido,Mashable公司数据科学家,曾担任Bitly公司数据科学家。
目录
前言 ix
第 1 章 引言 1
1.1 为何选择机器学习 1
1.1.1 机器学习能够解决的问题 2
1.1.2 熟悉任务和数据 4
1.2 为何选择Python 4
1.3 scikit-learn 4
1.4 必要的库和工具 5
1.4.1 Jupyter Notebook 6
1.4.2 NumPy 6
1.4.3 SciPy 6
1.4.4 matplotlib 7
1.4.5 pandas 8
1.4.6 mglearn 9
1.5 Python 2 与Python 3 的对比 9
1.6 本书用到的版本 10
1.7 第 一个应用:鸢尾花分类 11
1.7.1 初识数据 12
1.7.2 衡量模型是否成功:训练数据与测试数据 14
1.7.3 要事第 一:观察数据 15
1.7.4 构建第 一个模型:k 近邻算法 16
1.7.5 做出预测 17
1.7.6 评估模型 18
1.8 小结与展望 19
第 2 章 监督学习 21
2.1 分类与回归 21
2.2 泛化、过拟合与欠拟合 22
2.3 监督学习算法 24
2.3.1 一些样本数据集 25
2.3.2 k 近邻 28
2.3.3 线性模型 35
2.3.4 朴素贝叶斯分类器 53
2.3.5 决策树 54
2.3.6 决策树集成 64
2.3.7 核支持向量机 71
2.3.8 神经网络(深度学习) 80
2.4 分类器的不确定度估计 91
2.4.1 决策函数 91
2.4.2 预测概率 94
2.4.3 多分类问题的不确定度 96
2.5 小结与展望 98
第3 章 无监督学习与预处理 100
3.1 无监督学习的类型 100
3.2 无监督学习的挑战 101
3.3 预处理与缩放 101
3.3.1 不同类型的预处理 102
3.3.2 应用数据变换 102
3.3.3 对训练数据和测试数据进行相同的缩放 104
3.3.4 预处理对监督学习的作用 106
3.4 降维、特征提取与流形学习 107
3.4.1 主成分分析 107
3.4.2 非负矩阵分解 120
3.4.3 用t-SNE 进行流形学习 126
3.5 聚类 130
3.5.1 k 均值聚类 130
3.5.2 凝聚聚类 140
3.5.3 DBSCAN 143
3.5.4 聚类算法的对比与评估 147
3.5.5 聚类方法小结 159
3.6 小结与展望 159
第4 章 数据表示与特征工程 161
4.1 分类变量 161
4.1.1 One-Hot 编码(虚拟变量) 162
4.1.2 数字可以编码分类变量 166
4.2 分箱、离散化、线性模型与树 168
4.3 交互特征与多项式特征 171
4.4 单变量非线性变换 178
4.5 自动化特征选择 181
4.5.1 单变量统计 181
4.5.2 基于模型的特征选择 183
4.5.3 迭代特征选择 184
4.6 利用专家知识 185
4.7 小结与展望 192
第5 章 模型评估与改进 193
5.1 交叉验证 194
5.1.1 scikit-learn 中的交叉验证 194
5.1.2 交叉验证的优点 195
5.1.3 分层k 折交叉验证和其他策略 196
5.2 网格搜索 200
5.2.1 简单网格搜索 201
5.2.2 参数过拟合的风险与验证集 202
5.2.3 带交叉验证的网格搜索 203
5.3 评估指标与评分 213
5.3.1 牢记目标 213
5.3.2 二分类指标 214
5.3.3 多分类指标 230
5.3.4 回归指标 232
5.3.5 在模型选择中使用评估指标 232
5.4 小结与展望 234
第6 章 算法链与管道 236
6.1 用预处理进行参数选择 237
6.2 构建管道 238
6.3 在网格搜索中使用管道 239
6.4 通用的管道接口 242
6.4.1 用make_pipeline 方便地创建管道 243
6.4.2 访问步骤属性 244
6.4.3 访问网格搜索管道中的属性 244
6.5 网格搜索预处理步骤与模型参数 246
6.6 网格搜索选择使用哪个模型 248
6.7 小结与展望 249
第7 章 处理文本数据 250
7.1 用字符串表示的数据类型 250
7.2 示例应用:电影评论的情感分析 252
7.3 将文本数据表示为词袋 254
7.3.1 将词袋应用于玩具数据集 255
7.3.2 将词袋应用于电影评论 256
7.4 停用词 259
7.5 用tf-idf 缩放数据 260
7.6 研究模型系数 263
7.7 多个单词的词袋(n 元分词) 263
7.8 分词、词干提取与词形还原 267
7.9 主题建模与文档聚类 270
7.10 小结与展望 277
第8 章 全书总结 278
8.1 处理机器学习问题 278
8.2 从原型到生产 279
8.3 测试生产系统 280
8.4 构建你自己的估计器 280
8.5 下一步怎么走 281
8.5.1 理论 281
8.5.2 其他机器学习框架和包 281
8.5.3 排序、推荐系统与其他学习类型 282
8.5.4 概率建模、推断与概率编程 282
8.5.5 神经网络 283
8.5.6 推广到更大的数据集 283
8.5.7 磨练你的技术 284
8.6 总结 284
关于作者 285
关于封面 285
Python机器学习基础教程 下载 mobi epub pdf txt 电子书 格式