摘要:最小二乘法可谓“无所不在”,在高等代数、线性代数、概率统计、优化理论、人工智能等诸多学科领域中,皆能觅得其踪迹。在非人工智能类书籍里,“最小二乘法”通常以理论应用的形式呈现。例如,在高等代数中,它作为“极值计算”的案例;在线性代数中,则作为“空间投影”的案例。
最小二乘法可谓“无所不在”,在高等代数、线性代数、概率统计、优化理论、人工智能等诸多学科领域中,皆能觅得其踪迹。在非人工智能类书籍里,“最小二乘法”通常以理论应用的形式呈现。例如,在高等代数中,它作为“极值计算”的案例;在线性代数中,则作为“空间投影”的案例。而多数人工智能书籍往往将其视作一种工具加以介绍。
尽管最小二乘法的出镜率颇高,但这些书籍的讲解步骤要么先给出计算公式,随后展开大量的数学推导证明公式正确性;要么给出一个抽象案例后,直接采用“最小二乘法”去解决问题,最后通过数学推导来证明最小二乘法的优秀。这种方式就像是给缺乏现代生活经历的古人去解释什么是互联网,读者很难很难真正理解最小二乘法,他们得到的是需要背诵的复杂公式,还有一大堆疑问。一些典型的疑问包括:
为什么最小二乘法是一种机器学习算法?最小二乘法的“最小”是否意味着最优?既然有“最小二乘法”,那是否存在“最小一乘法”?作为最早且最为经典的人工智能算法,最小二乘法堪称人工智能领域的 “基础范式”—— 它几乎囊括了典型算法的所有核心特征。对这些特征的掌握与直观理解,是打通后续复杂模型学习路径的关键前提。
本文将先依照多数书籍的标准方法讲解一个实例,在讲解的关键节点精准捕捉读者可能萌生的疑惑,并以直观的方式予以解答。旨在助力读者领悟最小二乘法的精髓,使这一方法成为读者手中可灵活运用、深刻理解的工具,而非仅仅让读者停留在对公式的机械性记忆层面。
当下有一组二元观测数据(x, y),分别为(-2, -6.6)、( -1, -2.5)、( 0, 0.2)、(1, 3.5)以及(2, 5.4)。我们的目标是探寻这两个变量之间的内在关系。现将这些数据点绘制于下图之中:
从图中能够清晰看出,这些点大致分布在一条直线附近。基于此,我们推测变量x和y之间或许满足某种线性关系(是否必须为线性关系呢?),期望借助一条直线来拟合(所谓“拟合”,究竟作何解释呢?)这些数据点。例如,可参考下图中的蓝色虚线:
究竟何种直线方可称得上是拟合效果最好呢?假定拟合直线方程为。有一个易于理解的评判标准,即在每一个观测点上,实际观测值y 和拟合值的偏差最小,也就下图中的红色线段长度最短。
就最小二乘法而言,其拟合目标就是找到一条直线,使得最小(为什么是这个标准呢)。
继续讲解之前,在此小结小节一下读者或许会萌生出一些新的疑惑:
为何认定 x 和 y 呈线性关系,即采用直线进行拟合,难道不能运用曲线来拟合吗??究竟什么是拟合?为什么拟合目标是使达到最小?为什么拟合目标里面没有x或者地位不对等?依照上述步骤所得直线为什么好?我们先回答文章开头的第一个疑问:为何最小二乘法属于机器学习算法,而且是最为经典的那个。
1801 年,意大利天文学家皮亚齐偶然观测到一颗新天体(后被命名为谷神星)。随着持续观察,皮亚齐及其他天文学家发现它在不停移动,由此断定这是一颗新“行星”。然而,有一天这颗“行星”突然消失了。一时间,当时的知名天文学家们纷纷投身于这场寻找“丢失的行星”的行动中,试图凭借有限的观测数据推算其完整的运行轨道,但是均以失败告终。
同年9月,高斯决定着手寻找这颗失踪的“行星”。高斯并未因循当时其他天文学家的做法,将目光局限于圆形轨道,而是充分考虑了椭圆轨道的可能性,并在此过程中发现了“最小二乘法”。
在完成相关计算后,高斯将失踪“行星”的位置公之于科学界,并且精确地预测了它未来将会出现的位置。当其他天文学家依据高斯的预测进行观测时,惊奇地发现,这颗“行星”果真出现在了高斯所预测的位置上。
凭借不足的数据定位到如此微小且遥远的天体,这一非凡壮举震惊了科学界,甚至有人指责他使用魔法。而“魔法”,恰恰也是当代人们赋予人工智能的一个标签。
从“最小二乘法”的起源可以看出,它自诞生之初便被应用于预测或者拟合问题,而这些问题正是“人工智能”的核心目标之一。作为一个能够解决“人工智能”核心目标的算法,“最小二乘法”无疑是一种人工智能算法,并且堪称最经典的那个。
在回答所有有关“最小二乘法”好坏的问题之前,我们把“拟合”的概念搞准确,因为它算法的目标。
在回答这个问题之前,有必要对 x 和 y 所处的不对称地位予以阐释。大部分书籍没有针对对这一点进行详尽且专门的论述;或者在人工智能领域的书籍里,通常会默认读者已然明晰此内容。然而,倘若读者对这部分内容一无所知,那么在理解“为何拟合目标中仅有 y 而无 x ”这一问题时,便会陷入极大的困惑之中。
这种困惑犹如多米诺骨牌的首张牌,一旦倒下,会使后续的所有推导失去明确的目标与方向。如此一来,读者对于“最小二乘法”将会陷入一片茫然,全然不知其所以然。
在(x,y)数据对里,x和y左右分列,看似完全对称。然而,“最小二乘法”想要解决的问题里,二者是完全不对等的。x所代表的数据是为测量数据,亦或是可控制数据,也就是说,x是可以精确获取的;而y是期望预测的结果(或者说期望找到一条线去拟合的)。下面列举几个实例加以说明:
当我们试图预测一个运动物体的位置时,会每秒进行一次测量,并依据历史测量结果来预测该物体未来所处的位置。在此情形下,x代表测量时间,这是能够被精确控制的变量;而y代表物体的位置,这是我们期望通过预测得到的结果。再以商品推荐场景为例,我们会依据用户和商品的特征来预测用户的购买概率。此时,x为用户的特征以及产品的特征,这些均是已经采集到的数据;而y则是预测的购买率,这是我们期望预测得到的数值。因此,所谓“拟合”,指的是找到一个x的表达式f(x)(比如上面的直线),使得f(x)在每个点的取值和y接近。此概念有三个要点需着重阐明:
首先f(x)是x的表达式,和y没有关系。“拟合”的目标是为了让在数据点上,f(x)的取值能够与对应的y相等或者尽可能接近。本质就是拿y去寻觅或者筛选x的函数f(x)。了解了“拟合”的本质之后,接下来解答“为什么拟合目标里x和y地位不对等”?
有了前文的铺垫,当下的疑问便不难解答。
若将拟合目标写成,未出现 x 实则是因数学符号简化而造成的误解,理应写成f(x)(在我们的案例中是)。代入之后,拟合目标就变成了或者。因此,拟合目标中是存在x的。
至于拟合目标x和y的地位不对称的缘由,从上述有关“什么是拟合”的描述中能得到明晰的答案,拟合的目标是让x的函数表达式f(x)趋近于y。在这一目标要求下,x 和 y 本就处于不对称的地位。
根据前文案例的讲解,拟合的目标是要让 y 和的差距最小,即下图中的红线段的长度最短。这只是一种直观形象的表述方式,而我们需要将其转化为严谨的数学语言。
fitted line
例如,计算y 和之间的最为直观的差距衡量方式便是取绝对值,即|- y|。我们能够将所有数据点对应的该绝对值求和所得的结果,也就是作为拟合的目标,这种方法被称作平均绝对误差(MAE)。上面的目标直观易懂,也被经常使用,但这不是最小二乘法的选择。
最小二乘法选取的是均方误差(MSE),也就是,或者可以表述为。实际上,除了上述两种拟合目标之外,我们甚至可以采用、等数不尽的拟合目标。
简而言之,最小二乘法选用作为目标,并非因为其比其他的目标都更优、拟合效果最佳,而仅仅是因为“最小二乘法”这一算法采用了它。实际上,逻辑恰恰相反,不应该问为什么“最小二乘法”采用这一目标。正确的逻辑是,因为采用了这个目标,所以此算法才被称为“最小二乘法”。
“最小二乘法”的英文表述是“least square”,其中的“二”对应着“square”,即平方之意;而所谓的“最小”,指的是我们的算法期望找到这样一条直线,使得以平方作为目标的的值达到最小。
现在我们可以回应文章开头提的两个疑问:
最小二乘法的“最小”是否意味着最优?既然有“最小二乘法”,那是否存在“最小一乘法”?这此处的“最小”并非是与其他算法相比较后得出的结果,它是优化理论中目标函数的标准表述。目标函数的求解方向非求最大值,即求最小值。在当前问题领域,我们显然不会将目标设定为越大越好,这种想法着实荒谬。所以,“最小”在此处仅仅是一种标准说法,甚至可以说并无实际意义。然而,从字面意思来看,它给读者带来了诸多遐想与误解。
依照“最小二乘法”的命名准则,以作为拟合目标的算法便可被称作“最小一乘法”,此外,还有“最小三乘法”等。不过,由于其他算法的应用范围不够广泛,故而未能获得类似这般响亮的称谓。
还剩下最后两个问题:
为什么x和y是线性关系,也就是用直线去拟合,不能用曲线去拟合吗?按照上述步骤得到的直线为什么好?我们将分两个小节来分别回答。
就以下图中的数据而言,抛物曲线便是运用“最小二乘法”拟合得出的结果。由此可见,最小二乘法并未对拟合所采用的曲线类型或函数表达式作出限定。
然而,一旦曲线表达式的选择出现偏差,其结果往往不尽如人意。在高斯发现“谷神星”这一经典案例中,其他科学家选用圆作为轨道模型,而高斯则独具慧眼地采用了椭圆。依据现代物理学的认知,“椭圆”才是行星运行的真实轨道。所以,尽管“最小二乘法”堪称一项伟大的发现,但“椭圆轨道”的精准选择,极有可能才是让高斯声名鹊起、一举成名的关键所在。
站在机器学习的角度上看,曲线的选取,本质上是模型选取的问题,亦可归结为函数空间选取的问题。这一问题堪称人工智能领域最为核心的问题之一。
此领域牵涉到数据量与模型复杂度的平衡等一系列错综复杂的问题,其中蕴含着诸多技巧与理论。我们将在后续的其他专题中对此展开详细阐述,在此便不再赘述。
再次着重说明,当我们谈及“最小二乘法”拟合出来的曲线好的时候,仅仅是就其自身特性而言,并非意味着它在拟合效果上优于其他算法。就像说苹果好,并不意味着比桔子好。就像不同的人有着各异的口味偏好,不同的算法也有其适配的应用场景。
基于这一认知基础,我们就可以来夸一夸“最小二乘法”的优秀。倘若这些优点与你所面临的问题相契合,那么便可考虑采用该方法!而这部分内容恰好是大多数专业书籍着重阐述的要点,因此我们不再进行详尽的推导,仅作如下总结:
简洁性。最小二乘法的参数计算存在封闭解,能够直接套用公式进行求解。可导性。最小二乘法对参数可导,众多算法依赖于数值计算,而可导性往往是这些数值计算算法得以有效实施的前提条件。符合“中心极限定理”。在一定假设条件下,若x是引发y变化的核心因素,且不存在其他占据主导地位的影响因素,那么“最小二乘法”拟合后的误差可被认为满足或逼近“高斯分布”。预测结果等同于均值预测。若上述第三条假设成立,“最小二乘法”的预测结果经证明等同于均值预测。这就如同在测量过程中,人们习惯将均值作为最终结果,这种做法无疑是一种可靠的习惯,能让使用者倍感安心。参数求解等同于“最大似然估计”。若第三条假设成立,“最小二乘法”所求出的参数恰好是“最大似然估计”的结果,意味着观测数据出现的概率达到最大,这同样是该方法令人信赖的一个重要特性。在线性代数领域,“最小二乘法”还有一个极为形象的图形解释。即拟合的结果是Y在特征空间的垂直投影。如下图所示,蓝色线段Y代表由所有数值y构成的向量(y1, y2, …, yn),阴影部分平面R(X)代表特征x所形成的向量空间,拟合结果则为图中的红色线段。正是上述种种优点,使得“最小二乘法”成为人工智能领域应用最为广泛的算法之一。尤为值得一提的是,在非人工智能的工业领域,它已然成为默认采用的算法,足见其适用性与可靠性之高。
至此,所有疑问皆已得到圆满解答。接下来,我们将呈上参数的公式。
针对上述案例中的直线,运用“最小二乘法”进行拟合所得到的参数公式分别如下:
诸多书籍中皆有对详细推导过程的介绍,在此,我们仅简述其思想。我们的目标是让最小(很多读者习惯于将x,y作为函数的参数,但在这里,a和b才是参数,这是一个关于a和b的函数)。在高等代数的理论体系中,函数取得极小值的点,其偏导数为零。
基于此原理,对于函数f(a,b),我们分别对参数a和b求偏导数,进而得到两个偏导数等于零的方程。由于这两个方程中包含两个未知数a和b,通过求解这一方程组,便可得出a和b的值,此即前文所提及的参数公式。
总结“最小二乘法”作为人工智能领域亮相频次最高、最为经典的算法,对它的深入理解需构建于人工智能、最优化理论、统计学等一系列学科的知识框架之上。倘若缺失这些框架,就如同试图让一位生活在公元前的古人去理解互联网的概念一般,难如登天。
然而,诸多书籍在介绍“最小二乘法”时,由于种种缘由,未能清晰阐述准确理解该算法的相关核心前提,便径直进入公式推导环节。从读者的视角来看,这种讲解方式极为突兀,非但未能助力读者轻松运用该算法,反倒给读者增添了诸多困惑。
有鉴于此,本文依托一个直线拟合的简单案例,从实际需求层面切入,助力读者掌握“拟合”、“拟合目标”、“表达式(f(x))”等抽象概念。同时,采用“比较”的方式,帮助读者领会“最小”、“曲线选取”、“二”、“最好”等概念的实际内涵。
我们希望通过这种直观的讲解方式帮助读者消除疑问,使其真正理解“最小二乘法”,并能够在实际工作中灵活运用这一经典算法。
[1]H.DeGroot M, J.Schervish Mark. Probability and Statistics 4th ed. China Machine Press
[2]Hastie.T, Tibshirani.R, Friedman.J. The Elements of Statistical Learning:Data Mining, Inference, and Prediction 2nd ed. www.wpcbj.com.cn Aug, 2014
[2]D.Meyer, C. Matrix Analysis and Applied Linear Algebra. 2nd ed. SIAM - Society for Industrial and Applied Mathematics, 2023.
来源:AIEasy