Python 机器学习:预测分析核心算法 PDF 文档
在学习和研究机器学习的时候,面临令人眼花缭乱的算法,机器学习新手往往会不知所措。本书从算法和 Python 语言实现的角度,帮助读者认识机器学习。
本书专注于两类核心的算法族,即惩罚线性回归和集成方法,并通过代码实例来展示所讨论的算法的使用原则。全书共分为 7 章,详细讨论了预测模型的两类核心算法、预测模型的构建、惩罚线性回归和集成方法的具体应用和实现。
本书主要针对想提高机器学习技能的 Python 开发人员,帮助他们解决某一特定的项目或是提升相关的技能。
从数据中提取有助于决策的信息正在改变着现代商业的组织,同时也对软件开发人员产生了直接的影响。一方面是对新的软件开发技能的需求,市场分析师预计到 2018 年对具有高级统计和机器学习技术的人才需求缺口将达 140000 ~ 190000 人。这对具有上述技能的人员来说意味着丰厚的薪水和可供选择的多种有趣的项目。另一方面对开发人员的影响就是逐步出现了统计和机器学习相关的核心工具,这减轻了开发人员的负担。
当他们尝试新的算法时,不需要重复发明轮子。在所有通用计算机语言中,Python 的开发人员已经站在了最前沿,他们已开发了当前最先进的机器学习工具包,但从拥有这些工具包到如何有效地使用它们仍然存在一定的距离。
目录
第 1 章关于预测的两类核心算法
1.1 为什么这两类算法如此有用
1.2 什么是惩罚回归方法
1.3 什么是集成方法
1.4 算法的选择
1.5 构建预测模型的流程
1.5.1 构造一个机器学习问题
1.5.2 特征提取和特征工程
1.5.3 确定训练后模型的性能
1.6 各章内容及其依赖关系
小结
参考文献
第 2 章通过理解数据来了解问题
2.1 解剖 一个新问题
2.1.1 属性和标签的不同类型决定模型的选择
2.1.2 新数据集的注意事项
2.2 分类问题:用声纳发现未爆炸的水雷
2.2.1 岩石 vs.水雷 数据集的物理特性
2.2.2 岩石 vs.水雷 数据集统计特征
2.2.3 用分位数图展示异常点
2.2.4 类别属性的统计特征
2.2.5 利用 Python Pandas 对岩石 vs.水雷 数据集进行统计分析
2.3 对岩石 vs.水雷 数据集属性的可视化展示
2.3.1 利用平行坐标图进行可视化展示
2.3.2 属性和标签的关系可视化
2.3.3 用热图(heat map)展示属性和标签的相关性
2.3.4 对岩石 vs.水雷 数据集探究过程小结
2.4 基于因素变量的实数值预测:鲍鱼的年龄
2.4.1 回归问题的平行坐标图:鲍鱼问题的变量关系可视化
2.4.2 回归问题如何使用关联热图—鲍鱼问题的属性对关系的可视化
2.5 用实数值属性预测实数值目标:评估红酒口感
2.6 多类别分类问题:它属于哪种玻璃
小结
参考文献
第 3 章预测模型的构建:平衡性能、复杂性以及大数据
3.1 基本问题:理解函数逼近
3.1.1 使用训练数据
3.1.2 评估预测模型的性能
3.2 影响算法选择及性能的因素——复杂度以及数据
3.2.1 简单问题和复杂问题的对比
3.2.2 一个简单模型与复杂模型的对比
3.2.3 影响预测算法性能的因素
3.2.4 选择一个算法:线性或者非线性
3.3 度量预测模型性能
3.3.1 不同类型问题的性能评价指标
3.3.2 部署模型的性能模拟
3.4 模型与数据的均衡
3.4.1 通过权衡问题复杂度、模型复杂度以及数据集规模来选择模型
3.4.2 使用前向逐步回归来控制过拟合
3.4.3 评估并理解你的预测模型
3.4.4 通过惩罚回归系数来控制过拟合——岭回归
小结
参考文献
第 4 章惩罚线性回归模型
4.1 为什么惩罚线性回归方法如此有效
4.1.1 足够快速地估计系数
4.1.2 变量的重要性信息
4.1.3 部署时的预测足够快速
4.1.4 性能可靠
4.1.5 稀疏解
4.1.6 问题本身可能需要线性模型
4.1.7 什么时候使用集成方法
4.2 惩罚线性回归:对线性回归进行正则化以获得最优性能
4.2.1 训练线性模型:最小化错误以及更多
4.2.2 向 OLS 公式中添加一个系数惩罚项
4.2.3 其他有用的系数惩罚项:Manhattan 以及 ElasticNet
4.2.4 为什么套索惩罚会导致稀疏的系数向量
4.2.5 ElasticNet 惩罚项包含套索惩罚项以及岭惩罚项
4.3 求解惩罚线性回归问题
4.3.1 理解最小角度回归与前向逐步回归的关系
4.3.2 LARS 如何生成数百个不同复杂度的模型
4.3.3 从数百个 LARS 生成结果中选择最佳模型
4.3.4 使用 Glmnet:非常快速并且通用
4.4 输入为数值型数据的线性回归方法的扩展
4.4.1 使用惩罚回归求解分类问题
4.4.2 求解超过 2 种输出的分类问题
4.4.3 理解基扩展:使用线性方法来解决非线性问题
4.4.4 向线性方法中引入非数值属性
小结
参考文献
第 5 章使用惩罚线性方法来构建预测模型
5.1 惩罚线性回归的 Python 包
5.2 多变量回归:预测红酒口感
5.2.1 构建并测试模型以预测红酒口感
5.2.2 部署前在整个数据集上进行训练
5.2.3 基扩展:基于原始属性扩展新属性来改进性能
5.3 二分类:使用惩罚线性回归来检测未爆炸的水雷
5.4 多类别分类-分类犯罪现场的玻璃样本
小结
参考文献
第 6 章集成方法
6.1 二元决策树
6.1.1 如何利用二元决策树进行预测
6.1.2 如何训练一个二元决策树
6.1.3 决策树的训练等同于分割点的选择
6.1.4 二元决策树的过拟合
6.1.5 针对分类问题和类别特征所做的修改
6.2 自举集成:Bagging 算法
6.2.1 Bagging 算法是如何工作的
6.2.2 Bagging 算法小结
6.3 梯度提升法(Gradient Boosting)
6.3.1 梯度提升法的基本原理
6.3.2 获取梯度提升法的最佳性能
6.3.3 针对多变量问题的梯度提升法
6.3.4 梯度提升方法的小结
6.4 随机森林
6.4.1 随机森林:Bagging 加上随机选择的属性子集
6.4.2 随机森林的性能
6.4.3 随机森林小结
小结
参考文献
第 7 章用 Python 构建集成模型
7.1 用 Python 集成方法工具包解决回归问题
7.1.1 构建随机森林模型来预测红酒口感
7.1.2 用梯度提升预测红酒品质
7.2 用 Bagging 来预测红酒口感
7.3 Python 集成方法引入非数值属性
7.3.1 对鲍鱼性别属性编码引入 Python 随机森林回归方法
7.3.2 评估性能以及变量编码的重要性
7.3.3 在梯度提升回归方法中引入鲍鱼性别属性
7.3.4 梯度提升法的性能评价以及变量编码的重要性
7.4 用 Python 集成方法解决二分类问题
7.4.1 用 Python 随机森林方法探测未爆炸的水雷
7.4.2 构建随机森林模型探测未爆炸水雷
7.4.3 随机森林分类器的性能
7.4.4 用 Python 梯度提升法探测未爆炸水雷
7.4.5 梯度提升法分类器的性能
7.5 用 Python 集成方法解决多类别分类问题
7.5.1 用随机森林对玻璃进行分类
7.5.2 处理类不均衡问题
7.5.3 用梯度提升法对玻璃进行分类
7.5.4 评估在梯度提升法中使用随机森林基学习器的好处
7.6 算法比较
小结
下载地址:https://www.wenjiangs.com/wp-content/uploads/2024/01/CIbTYElYQe6Up59m.zip
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论