【机器学习】线性回归——最小二乘法的几何意义

简介: 【机器学习】线性回归——最小二乘法的几何意义

2021人工智能领域新星创作者,带你从入门到精通,该博客每天更新,逐渐完善机器学习各个知识体系的文章,帮助大家更高效学习。


概述

之前我们讲到了最小二乘法就是找到一条直线去拟合我们的数据

这是从这幅图中得出的结论,那么本篇文章从一个新的角度去论述这个事情。

最小二乘法几何表示

在将之前,我们举个线代中的例子来引出我们的问题:

现在有矩阵 A = [ a b c d e f ] A=

acebdf[abcdef]

A=acebdf ,矩阵 X = [ x 1 x 2 ] X=

[x1x2][x1x2]

X = [ x 1 x 2 ] ,存在矩阵方程 :

A X = [ a b c d e f ] [ x 1 x 2 ] = [ a x 1 + b x 2 c x 1 + d x 2 e x 1 + f x 2 ] = [ m p q ] = Y AX=

acebdf[abcdef]

[x1x2][x1x2]

=

ax1+bx2cx1+dx2ex1+fx2[ax1+bx2cx1+dx2ex1+fx2]

=

mpq[mpq]

=Y A X = a c e b d f [ x 1 x 2 ] = a x 1 + b x 2 c x 1 + d x 2 e x 1 + f x 2 = m p q = Y

我们的目的就是求解方程 A X = Y AX=YAX=Y ,此时我们把上述方程换个表示方法:

x 1 [ a c e ] + x 2 [ b d f ] = [ m p q ] x_1

ace[ace]

+x_2

bdf[bdf]

=

mpq[mpq]

x 1 a c e + x 2 b d f = m p q

从这个方程很容易看出我们的Y向量可以由我们A矩阵的列向量线性表示,换种更高级的说法就是此时 [ m p q ]

mpq[mpq]

m p q 向量在 [ a c e ]

ace[ace]

a c e 和向量 [ b d f ]

bdf[bdf]

b d f 所张成的空间上,再换一种说法就是可以把这两个列向量作为基底,这样由这两个向量不断用不同系数组合就会形成一个三维空间中的一个平面,三个维度,但只有两个向量,(前提这两个基地向量线性无关),那么此时求解方程的解就是能否在该空间中找到向量 y。

换而言之,如果上述方程有解,则应该满足y向量在A的列空间中,这里采用了工程代数的理念,没有使用传统现代中秩的概念。

那么我们尝试将上面方程换成我们的拟合方程:

X W = Y XW=YXW=Y

w 1 [ x 11 x 21 ⋮ x m 1 ] + w 2 [ x 12 x 22 ⋮ x m 2 ] + . . . + w n [ x 1 n x 2 n ⋮ x m n ] = [ y 1 y 2 ⋮ y m ] w_1

x11x21xm1[x11x21⋮xm1]

+w_2

x12x22xm2[x12x22⋮xm2]

+...+w_n

x1nx2nxmn[x1nx2n⋮xmn]

=

y1y2ym[y1y2⋮ym]

w1x11x21xm1+w2x12x22xm2+...+wnx1nx2nxmn=y1y2ym

我们此时是要求解W,那么和上面问题同理,将问题转化为能够找到一组系数w使得y向量能由X的列向量线性表示,高级的说法就是使我们的y处在X的列向量空间中。

为了推导以及画图方便,我们将X的维度设为2

这里X1和X2代表两个维度,我们的目的就是希望y落在x1和x_2形成的平面上,如果是这样的话那么说明该方程有解,也就是能够找到一组系数w使得我们的直线能够拟合所有的样本,但是这在显示中往往不成立,一条直线不可能拟合所以数据,那也就是肯定会有误差,那么我们上述的方程就会无解,那怎么办呢?

如果y落在该平面说明有解,能够拟合所有数据,而现在我们在该平面找不到y,y不在这个平面上,那么我们就希望在该平面找到一条直线近似的代替y,怎样才能使它与y相似呢?

将我们的直线y向该平面做投影,此时y和这条投影直线是最为相似的,我们可以使用这条投影直线来近似代替我们的y,所以此时就存在我们的垂线a垂直于该平面中任何一条直线。

其中 a = Y − X W a=Y-XWa=YXW ,利用向量的减法,而平面中的任何向量用 X T X^TXT 来代替,因为已经垂直该平面的所以直线,而 X T X^TXT 是平面中的一部分,所以也依然成立。

则满足

X T a = 0 X T ( Y − W X ) = 0 X^Ta=0\\X^T(Y-WX)=0XTa=0XT(YWX)=0

所以:

X T Y − X T W X = 0 X^TY-X^TWX=0XTYXTWX=0

可以观察到该方程和我们使用最小二乘估计得出的方程使一致的,然后解出w:

w ∗ = ( X X ) − 1 X T Y w^*=(X^X)^{-1}X^TYw=(XX)1XTY

此时的w*的意义就是我们用来近似Y的那条直线的系数。


目录
相关文章
|
18天前
|
机器学习/深度学习 人工智能 算法
探索机器学习:从线性回归到深度学习
本文将带领读者从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过代码示例,展示如何实现这些算法,并解释其背后的数学原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和知识。让我们一起踏上这段激动人心的旅程吧!
|
1月前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的线性回归模型
本文深入探讨了机器学习中广泛使用的线性回归模型,从其基本概念和数学原理出发,逐步引导读者理解模型的构建、训练及评估过程。通过实例分析与代码演示,本文旨在为初学者提供一个清晰的学习路径,帮助他们在实践中更好地应用线性回归模型解决实际问题。
|
1月前
|
机器学习/深度学习 自然语言处理 算法
深入理解机器学习算法:从线性回归到神经网络
深入理解机器学习算法:从线性回归到神经网络
|
7月前
|
机器学习/深度学习 算法 TensorFlow
机器学习算法简介:从线性回归到深度学习
【5月更文挑战第30天】本文概述了6种基本机器学习算法:线性回归、逻辑回归、决策树、支持向量机、随机森林和深度学习。通过Python示例代码展示了如何使用Scikit-learn、statsmodels、TensorFlow库进行实现。这些算法在不同场景下各有优势,如线性回归处理连续值,逻辑回归用于二分类,决策树适用于规则提取,支持向量机最大化类别间隔,随机森林集成多个决策树提升性能,而深度学习利用神经网络解决复杂模式识别问题。理解并选择合适算法对提升模型效果至关重要。
255 4
|
1月前
|
机器学习/深度学习 数据采集 算法
探索机器学习中的线性回归
【10月更文挑战第25天】本文将深入浅出地介绍线性回归模型,一个在机器学习领域中广泛使用的预测工具。我们将从理论出发,逐步引入代码示例,展示如何利用Python和scikit-learn库实现一个简单的线性回归模型。文章不仅适合初学者理解线性回归的基础概念,同时也为有一定基础的读者提供实践指导。
|
2月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
探索机器学习:从线性回归到深度学习
在这篇文章中,我们将一起踏上一场激动人心的旅程,穿越机器学习的广阔天地。我们将从最基本的线性回归开始,逐步深入到复杂的深度学习模型。无论你是初学者还是有经验的开发者,这篇文章都将为你提供新的视角和深入的理解。让我们一起探索这个充满无限可能的世界吧!
|
2月前
|
机器学习/深度学习 API
机器学习入门(七):线性回归原理,损失函数和正规方程
机器学习入门(七):线性回归原理,损失函数和正规方程
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习:从线性回归到深度学习
【9月更文挑战第4天】在这篇文章中,我们将深入探讨机器学习的世界,从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过实际的代码示例,揭示这些模型背后的数学原理,以及如何在现实世界的问题中应用它们。无论你是初学者还是有经验的数据科学家,这篇文章都将为你提供新的视角和深入的理解。
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习的奥秘:从线性回归到深度学习
【8月更文挑战第26天】本文将带领读者走进机器学习的世界,从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将探讨各种算法的原理、应用场景以及实现方法,并通过代码示例加深理解。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的知识和技能。让我们一起揭开机器学习的神秘面纱,探索这个充满无限可能的领域吧!
|
4月前
|
机器学习/深度学习 人工智能 算法
探索机器学习:Python中的线性回归模型实现
【8月更文挑战第24天】在机器学习的世界中,线性回归是最基础也是应用最广泛的算法之一。本文将通过Python编程语言,使用scikit-learn库来实现一个简单的线性回归模型。我们将从理论出发,逐步深入到代码实现,最后通过一个实际数据集来验证模型的效果。无论你是机器学习的初学者,还是想要复习线性回归的基础知识,这篇文章都将为你提供有价值的信息。让我们一起踏上这段探索之旅吧!