《Python机器学习——预测分析核心算法》——1.2 什么是惩罚回归方法

1.2 什么是惩罚回归方法

惩罚线性回归方法是由普通最小二乘法(ordinary least squares,OLS)衍生出来的。而普通最小二乘法是在大约200年前由高斯(Gauss)和法国数学家阿德里安-马里•勒让德(Legendre)提出的。惩罚线性回归设计之初的想法就是克服最小二乘法的根本缺陷。最小二乘法的一个根本问题就是有时它会过拟合。如图1-1所示,考虑用最小二乘法通过一组点来拟合一条直线。这是一个简单的预测问题:给定一个特征x,预测目标值y。例如,可以是根据男人的身高来预测其收入。根据身高是可以稍微预测男人的收入的(但是女人不行)。

图1-1中的点代表(男人的身高、男人的收入),直线代表使用最小二乘法的预测结果。在某种意义上说,这条直线就代表了在已知男人身高的情况下,对男人收入的最佳预测模型。现在这个数据集有6个点。假设这个数据集只有2个点。想象有一组点,就像图1-1中的点,但是你不能获得全部的点。可能的原因是要获得所有这些点的代价太昂贵了,就像前面提到的基因组数据。只要有足够多的人手,就可以分离出犯罪分子的基因组,但主要问题是代价的原因,你不可能获得他们的全部基因序列。

以简单的例子来模拟这个问题,想象只给你提供当初6个点中的任意2个点。那么拟合出来的直线会发生哪些变化?这将依赖于你得到的是哪2个点。实际看看这些拟合的效果,可以从图1-1中任意选出2个点,然后想象穿过这2个点的直线。图1-2展示了穿过图1-1中2个点的可能的直线。可以注意到拟合出来的直线依赖于这2个点是如何选择的。

使用2个点来拟合一条直线的主要问题是针对直线的自由度(degrees of freedom)[3]没有提供足够的数据。一条直线有2个自由度。有2个自由度意味着需要2个独立的参数才能唯一确定一条直线。可以想象在一个平面抓住一条直线,然后在这个平面上下滑动这条直线,或者旋转它以改变其斜率。与x轴的交点和斜率是相互独立的,它们可以各自改变,两者结合在一起确定了一条直线。一条直线的自由度可以表示成几种等价的方式(可以表示成与y轴的交点和斜率、直线上的2个点,等等)。所有这些确定一条直线的表示方法都需要2个参数。

当自由度与点数相同时,预测效果并不是很好。连接这些点构成了直线,但是在不同点对之间可以形成大量不同的直线。对在自由度与点数相同的情况下所做的预测并不能报太大的信心。图1-1是6个点拟合一条直线(2个自由度)。也就是说6个点对应2个自由度。从大量的人类基因中找到可导致遗传基因的问题可以阐明相似的道理。例如要从大约20000个人类基因中找到可导致遗传的基因,可选择的基因越多,需要的数据也越多。20000个不同基因就代表20000个自由度,甚至从20000个人获取的数据都不足以得到可靠的结果,在很多情况下,一个相对预算合理的研究项目只能负担得起大约500个人的样本数据。在这种情况下,惩罚线性回归就是最佳的选择了。

惩罚线性回归可以减少自由度使之与数据规模、问题的复杂度相匹配。对于具有大量自由度的问题,惩罚线性回归方法获得了广泛的应用。在下列问题中更是得到了偏爱:基因问题,通常其自由度(也就是基因的数目)是数以万计的;文本分类问题,其自由度可以超过百万。第4章将提供更多的细节:这些方法如何工作、通过示例代码说明算法的机制、用Python工具包实现一个机器学习系统的过程示例。

时间: 2024-10-01 03:22:03

《Python机器学习——预测分析核心算法》——1.2 什么是惩罚回归方法的相关文章

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

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

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

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

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

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

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

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

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

1.6 各章内容及其依赖关系 依赖于读者的背景和是否有时间来了解基本原理,读者可以采用不同的方式来阅读本书.图1-7为本书各章之间的依赖关系. 第2章仔细审视各种数据集.这些数据集用于本书中的问题实例,用以说明算法的使用,以及各种算法之间基于性能和其他特征的比较.面对一个新的机器学习问题的起点就是深入专研数据集,深入理解数据集,了解它们的问题和特质.第2章的部分内容就是展示Python中可以用于数据集探索的一些工具集.可以浏览第2章中的部分例子,不需要阅读全部例子就可以了解整个流程,当在后续章节

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

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

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

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

《Python机器学习——预测分析核心算法》——2.1 “解剖”一个新问题

2.1 "解剖"一个新问题 本书介绍的算法通常是从一个充满了数字,可能是特征(变量)的矩阵(或表格)开始的.表2-1展示了一些术语,代表了一个小规模的二维机器学习数据集.此表提供了一个数据集的基本印象,这样对"列代表属性特征,行代表实例"等约定就比较熟悉.这个例子中的问题是预测下一年在线购买书籍所需花费的金额. 数据是按照行和列组织的.每行代表一个实例(或者叫一个例子.观察).在表2-1中每列指定相应的列名,用来指明在一个机器学习问题中所起的作用.标明为"

《Python机器学习——预测分析核心算法》——2.6 多类别分类问题:它属于哪种玻璃

2.6 多类别分类问题:它属于哪种玻璃 多类别分类问题与二元分类问题类似,不同之处在于它有几个离散的输出,而不是只有两个.回顾探测未爆炸的水雷的问题,它的输出只有两种可能性:声纳探测的物体是岩石或者水雷.而红酒口感评分问题根据其化学成分会产生几个可能的输出(其口感评分值是从3分到8分).但是对于红酒口感评分问题,口感评分值存在有序的关系.打5分的红酒要好于打3分的,但是要劣于打8分的.对于多类别分类问题,输出结果是不存在这种有序关系的. 此节将根据玻璃的化学成分来判断玻璃的类型,目标是确定玻璃的