《Python机器学习——预测分析核心算法》——1.6 各章内容及其依赖关系

1.6 各章内容及其依赖关系

依赖于读者的背景和是否有时间来了解基本原理,读者可以采用不同的方式来阅读本书。图1-7为本书各章之间的依赖关系。

第2章仔细审视各种数据集。这些数据集用于本书中的问题实例,用以说明算法的使用,以及各种算法之间基于性能和其他特征的比较。面对一个新的机器学习问题的起点就是深入专研数据集,深入理解数据集,了解它们的问题和特质。第2章的部分内容就是展示Python中可以用于数据集探索的一些工具集。可以浏览第2章中的部分例子,不需要阅读全部例子就可以了解整个流程,当在后续章节遇到具体的应用实例时,可以返回到第2章阅读相关的部分。

第3章主要介绍机器学习问题中的基本权衡、贯穿本书的关键概念。一个关键概念就是预测问题的数学描述,也会涉及分类和回归问题的差别。第3章也介绍了如何使用样本外(out-of-sample)数据(测试数据)来评估预测模型的性能。样本外数据是指在模型训练过程中不包括的数据。一个好的机器学习实践者要求对一个实际部署的预测模型的性能表现有相对稳定的预估。这就要求使用训练数据集以外的数据来模拟新的数据。第3章将介绍这么做的原因、实现的方法以及这些方法之间如何取舍。另外一个重要的概念就是系统性能的测量方法,第3章将描述这些方法以及它们之间的取舍。对机器学习比较熟悉的读者可以浏览本章,快速略过代码实例,而不需要仔细阅读代码然后运行代码。

第4章介绍训练惩罚回归模型的核心思想,以及基本概念及算法的来源。第3章引入的一些实例导致了惩罚线性回归方法的产生。第4章展示了解决惩罚线性回归训练问题的核心算法代码,以及线性回归方法的几种扩展。一种扩展是将因素变量(factor variable)编码为实数,这样就可以使用线性回归方法。线性回归方法只能用在预测值是数值的情况下,也就是说需要对预测值进行量化。许多实际的重要问题通常的变量是这样的形式:“单身、已婚或离异”等,这种变量对做预测是很有帮助的。如果要引入此种类型的变量(类别变量,categorical variables)到一个线性回归模型,意味着需要设计一种转换方法将类别变量转换为实数变量,第4章将会介绍这些方法。第4章还介绍叫作基扩展(basis expansion)的方法,此方法从非线性回归中获得非线性函数,有时基扩展用于进一步从线性回归中“挤榨”出一些性能的提升。

第5章将第4章介绍的惩罚回归算法应用于第2章提到的问题中。本章概述实现了惩罚回归算法的Python工具包,并用这些工具包来解决问题。本章的目的是尽可能覆盖广泛的各类问题的变体,这样当读者遇到一个问题时,可以找到一个最接近的问题作为借鉴。除了量化并比较预测的性能,第5章也考查这些算法的其他特征。理解特征的选择、特征的重要性(对最终预测结果的贡献)是很重要的,这种理解能力可以加快面临新问题时的开发进程。

第6章关注集成方法。因为集成方法绝大多数情况下基于二元决策树,第一步就是理解训练和使用二元决策树的原则。集成方法的很多特性都是直接继承于二元决策树。基于上述理解,本章介绍3个主要的集成方法: Bagging、提升(boosting)和随机森林。上述每个算法都介绍了使用的基本原则、核心算法的代码,这样读者就会了解如何使用这些算法。

第7章应用集成方法来解决第2章中的问题,然后对各种算法进行对比分析。对比分析的内容包括:预测的性能、训练所需的时间和性能等。所有的算法会给出特征的重要性打分。对于特定的问题会对比分析特征在不同的算法中对预测结果的重要性。

以笔者的经验,向程序员和计算机科学家教授机器学习,代码实例要优于数学公式。这就是本书所采用的方法:提供一些基础的数学知识、算法框架和代码实例来说明算法的关键点。本书讨论的几乎所有的算法都可以在本书或网站上找到代码,这么做的初衷就是让读者能够尽快运行代码并解决面临的实际问题。

时间: 2024-10-08 18:26:52

《Python机器学习——预测分析核心算法》——1.6 各章内容及其依赖关系的相关文章

《Python机器学习——预测分析核心算法》——第1章 关于预测的两类核心算法

第1章 关于预测的两类核心算法 Python机器学习--预测分析核心算法 本书集中于机器学习领域,只关注那些最有效和获得广泛使用的算法.不会提供关于机器学习技术领域的全面综述.这种全面性的综述往往会提供太多的算法,但是这些算法并没有在从业者中获得积极的应用. 本书涉及的机器学习问题通常是指"函数逼近(function approximation)"问题.函数逼近问题是有监督学习(supervised learning)问题的一个子集.线性回归和逻辑回归是解决此类函数逼近问题最常见的算法

《Python机器学习——预测分析核心算法》——第2章 通过理解数据来了解问题

第2章 通过理解数据来了解问题 Python机器学习--预测分析核心算法新数据集(问题)就像一个包装好的礼物,它充满了承诺和希望.一旦你能解决它,你就收获了喜悦.但是直到你打开它,它都一直保持着神秘.本章就是告诉你怎么"打开"新的数据集,看清楚里面都有什么,知道如何处置这些数据,并且开始思考如何利用这些数据构建相应的模型. 本章有两个目的:一是熟悉这些数据集,这些数据集被用来作为解决各种类型问题的例子,主要是利用第4章和第6章介绍的算法:另一个目的就是展示Python中分析数据的工具包

《Python机器学习——预测分析核心算法》——导读

前言 Python机器学习--预测分析核心算法 从数据中提取有助于决策的信息正在改变着现代商业的组织,同时也对软件开发人员产生了直接的影响.一方面是对新的软件开发技能的需求,市场分析师预计到2018年对具有高级统计和机器学习技术的人才需求缺口将达140000-190000人.这对具有上述技能的人员来说意味着丰厚的薪水和可供选择的多种有趣的项目.另一方面对开发人员的影响就是逐步出现了统计和机器学习相关的核心工具,这减轻了开发人员的负担.当他们尝试新的算法时,不需要重复发明"轮子".在所有

《Python机器学习——预测分析核心算法》——2.2 分类问题:用声纳发现未爆炸的水雷

2.2 分类问题:用声纳发现未爆炸的水雷 此小节将介绍在分类问题上首先需要做的工作.首先是简单的测量:数据的规模.数据类型.缺失的数据等.接着是数据的统计特性.属性之间的关系.属性与标签之间的关系.本节的数据集来自UC Irvine 数据仓库(见参考文献1).数据来源于实验:测试声纳是否可以用于检测在港口军事行动后遗留下来的未爆炸的水雷.声纳信号又叫作啁啾信号(chirped signal),即信号在一个脉冲期间频率会增加或降低.此数据集的测量值代表声纳接收器在不同地点接收到的返回信号,其中在大

《Python机器学习——预测分析核心算法》——1.1 为什么这两类算法如此有用

1.1 为什么这两类算法如此有用 有几个因素造就了惩罚线性回归和集成方法成为有用的算法集.简单地说,面对实践中遇到的绝大多数预测分析(函数逼近)问题,这两类算法都具有最优或接近最优的性能.这些问题包含:大数据集.小数据集.宽数据集(wide data sets)[1].高瘦数据集(tall skinny data sets)[2].复杂问题.简单问题,等等.Rich Caruana及其同事的两篇论文为上述论断提供了证据. 1."An Empirical Comparison of Supervi

《Python机器学习——预测分析核心算法》——2.4 基于因素变量的实数值预测:鲍鱼的年龄

2.4 基于因素变量的实数值预测:鲍鱼的年龄 探测未爆炸的水雷数据集的工具同样可以用于回归问题.在给定物理测量值的情况下,预测鲍鱼的年龄就是此类问题的一个实例.鲍鱼的属性中包括因素属性,下面将说明属性中含有因素属性后与上例有什么不同. 鲍鱼数据集的问题是根据某些测量值预测鲍鱼年龄.当然可以对鲍鱼进行切片,然后数年轮获得鲍鱼年龄的精确值,就像通过数树的年轮得到树的年龄一样.但是问题是这种方法代价比较大,耗时(需要在显微镜下数年轮).因此更方便经济的方法是做些简单的测量,如鲍鱼的长度.宽度.重量等指

《Python机器学习——预测分析核心算法》——1.5 构建预测模型的流程

1.5 构建预测模型的流程 使用机器学习需要几项不同的技能.一项就是编程技能,本书不会把重点放在这.其他的技能用于获得合适的模型进行训练和部署.这些其他技能将是本书重点关注的.那么这些其他技能包括哪些内容? 最初,问题是用多少有些模糊的日常语言来描述的,如"给网站访问者展示他们很可能点击的链接".将其转换为一个实用的系统需要用具体的数学语言对问题进行重述,找到预测所需的数据集,然后训练预测模型,预测网站访问者对出现的链接点击的可能性.对问题用数学语言进行重叙,其中就包含了对可获得的数据

《Python机器学习——预测分析核心算法》——2.3 对“岩石vs.水雷”数据集属性的可视化展示

2.3 对"岩石vs.水雷"数据集属性的可视化展示 可视化可以提供对数据的直观感受,这个有时是很难通过表格的形式把握到的.此节将介绍很有用的可视化方法.分类问题和回归问题的可视化会有所不同.在有鲍鱼和红酒数据集的章节中看到回归问题的可视化方法. 2.3.1 利用平行坐标图进行可视化展示 对于具有多个属性问题的一种可视化方法叫作平行坐标图(parallel coordinates plot).图2-2为平行坐标图的基本样式.图右边的向量([1 3 2 4])代表数据集中某一行属性的值.这

《Python机器学习——预测分析核心算法》——1.4 算法的选择

1.4 算法的选择 这2类算法的概要比较如表1-4所示.惩罚线性回归的优势在于训练速度非常快.大规模数据集的训练时间可以是小时.天,甚至是几周.要获得一个可以部署的解决方案往往需要进行多次训练.过长的训练时间会影响大数据问题的解决进度及其部署.训练所需时间当然越短越好,因此惩罚线性回归因其训练所需时间短而获得广泛使用就是显而易见的了.依赖于问题,此类算法相比集成方法可能会有一些性能上的劣势.第3章将更深入地分析哪类问题适用于惩罚回归,哪类问题适用于集成方法.即使在某些情况下,惩罚线性回归的性能不