【机器学习】线性回归——岭回归解决过拟合问题(理论+图解+公式推导)

简介: 【机器学习】线性回归——岭回归解决过拟合问题(理论+图解+公式推导)

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


概述

之前为了找到拟合直线,我们使用了最小二乘估计得到了:

L ( w ) = ∑ i = 1 m ( w T x i − y i ) 2 = W T X T X W − 2 W T X T Y + Y T Y L(w)=\sum_{i=1}^m(w^Tx_i-y_i)^2\\=W^TX^TXW-2W^TX^TY+Y^TYL(w)=i=1m(wTxiyi)2=WTXTXW2WTXTY+YTY

然后我们获得的最优解为:

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

这个式子我们可以观察一下,式子开头为 ( X T X ) − 1 (X^TX)^{-1}(XTX)1 ,存在逆矩阵形式,也就是说要满足上面的最优解,前提必须满足 X T X X^TXXTX 可逆,那么就要求它的行列式不为0,但是由上式我们尽可以判断其为半正定矩阵,有可能存在行列式为0的情况。

解释一下,矩阵半正定说明矩阵的特征值都是大于等于0的,而行列式的值等于所有特征值的乘积,所以由于是半正定,所以存在行列式为0的情况,此时上述的最优解就会无意义。

证明一下 X T X X^TXXTX 为什么是半正定的:

要证明半正定矩阵,需证明对于任意列向量A满足 A T X T X A ≥ 0 A^TX^TXA\geq0ATXTXA0

A T X T X A = ( A X ) T A X = ∣ ∣ A X ∣ ∣ 2 ≥ 0 A^TX^TXA=(AX)^TAX=||AX||^2\geq0ATXTXA=(AX)TAX=AX20

正则化框架

一般来说我们加入正则项都是为了解决过拟合的方式,这种方法措施很常见,所以有个固定的框架:

a r g m i n L ( w ) + λ P ( w ) argminL(w)+\lambda P(w)argminL(w)+λP(w)

其中的 L ( w ) L(w)L(w) 为我们的损失函数,后面的 λ \lambdaλ 为惩罚系数,即为正则化的程度,而 P ( w ) P(w)P(w) 就为我们的正则项,一般来说正则项可以理解为模型的复杂程度,就是使用一个表达式来表述我们模型的复杂程度,不过我们不需要考虑使用什么表示式衡量模型复杂程度,前人已经帮我们构建好,一般常用的就是L1正则化和L2正则化。

使用了L1正则项的线性回归常被称为Lasso回归 P ( w ) = ∣ ∣ w ∣ ∣ 1 P(w)=||w||_1P(w)=w1

使用了L2正则项的常被称为岭回归(Ridge)P ( w ) = ∣ ∣ w ∣ ∣ 2 2 = w T w P(w)=||w||_2^2=w^TwP(w)=w22=wTw

本篇侧重推导公式,这里就不解释为什么加入正则项可以防止过拟合了。

那么我们加入L2正则项后的函数就变成了:

J ( w ) = L ( w ) + λ w T w = W T X T X W − 2 W T X T Y + Y T Y + λ W T W J(w)=L(w)+\lambda w^Tw\\=W^TX^TXW-2W^TX^TY+Y^TY+\lambda W^TWJ(w)=L(w)+λwTw=WTXTXW2WTXTY+YTY+λWTW

所以我们的目标就变成了:

a r g m i n J ( w ) = a r g m i n W T X T X W − 2 W T X T Y + Y T Y + λ W T W argminJ(w)\\=argminW^TX^TXW-2W^TX^TY+Y^TY+\lambda W^TWargminJ(w)=argminWTXTXW2WTXTY+YTY+λWTW

对上式进行求导,可得:

W ∗ = ( X T X + λ I ) − 1 X T Y W^*=(X^TX+\lambda I)^{-1}X^TYW=(XTX+λI)1XTY

将我们没有加入正则项后的 W ∗ W^*W 进行对比:

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

加入之后仍存在逆矩阵,但是此时发现内部的矩阵变为了 X T X + λ I X^TX+\lambda IXTX+λI ,它是一个半正定的矩阵加上一个单位阵,显然是可逆的,这里解释下为什么?

上面我们讲过 X T X X^TXXTX 是半正定的,所以其特征值都是大于等于0的,但是此时加上了一个单位阵,由矩阵多项式可知,此时矩阵的特征值等于原来的特征值分别加上 λ \lambdaλ ,如果 λ = 0 \lambda=0λ=0 ,和原来是一样的,如果 λ > 0 \lambda>0λ>0 ,那么此时矩阵的特征值就全部都是大于0的,所以它的行列式不为0,即存在逆矩阵,那么上面的解有意义。


目录
相关文章
|
机器学习/深度学习 人工智能 算法
探索机器学习:从线性回归到深度学习
本文将带领读者从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过代码示例,展示如何实现这些算法,并解释其背后的数学原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和知识。让我们一起踏上这段激动人心的旅程吧!
214 3
|
机器学习/深度学习 人工智能 算法
探索机器学习中的线性回归模型
本文深入探讨了机器学习中广泛使用的线性回归模型,从其基本概念和数学原理出发,逐步引导读者理解模型的构建、训练及评估过程。通过实例分析与代码演示,本文旨在为初学者提供一个清晰的学习路径,帮助他们在实践中更好地应用线性回归模型解决实际问题。
165 3
|
机器学习/深度学习 自然语言处理 算法
深入理解机器学习算法:从线性回归到神经网络
深入理解机器学习算法:从线性回归到神经网络
|
机器学习/深度学习 TensorFlow 算法框架/工具
探索机器学习:从线性回归到深度学习
在这篇文章中,我们将一起踏上一场激动人心的旅程,穿越机器学习的广阔天地。我们将从最基本的线性回归开始,逐步深入到复杂的深度学习模型。无论你是初学者还是有经验的开发者,这篇文章都将为你提供新的视角和深入的理解。让我们一起探索这个充满无限可能的世界吧!
|
机器学习/深度学习 API
机器学习入门(七):线性回归原理,损失函数和正规方程
机器学习入门(七):线性回归原理,损失函数和正规方程
1086 1
|
机器学习/深度学习 数据采集 算法
探索机器学习中的线性回归
【10月更文挑战第25天】本文将深入浅出地介绍线性回归模型,一个在机器学习领域中广泛使用的预测工具。我们将从理论出发,逐步引入代码示例,展示如何利用Python和scikit-learn库实现一个简单的线性回归模型。文章不仅适合初学者理解线性回归的基础概念,同时也为有一定基础的读者提供实践指导。
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习:从线性回归到深度学习
【9月更文挑战第4天】在这篇文章中,我们将深入探讨机器学习的世界,从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过实际的代码示例,揭示这些模型背后的数学原理,以及如何在现实世界的问题中应用它们。无论你是初学者还是有经验的数据科学家,这篇文章都将为你提供新的视角和深入的理解。
|
机器学习/深度学习
【机器学习】准确率、精确率、召回率、误报率、漏报率概念及公式
机器学习评估指标中的准确率、精确率、召回率、误报率和漏报率等概念,并给出了这些指标的计算公式。
3325 0
|
机器学习/深度学习 算法
【机器学习】简单解释贝叶斯公式和朴素贝叶斯分类?(面试回答)
简要解释了贝叶斯公式及其在朴素贝叶斯分类算法中的应用,包括算法的基本原理和步骤。
196 1
|
机器学习/深度学习 人工智能 自然语言处理
探索机器学习的奥秘:从线性回归到深度学习
【8月更文挑战第26天】本文将带领读者走进机器学习的世界,从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将探讨各种算法的原理、应用场景以及实现方法,并通过代码示例加深理解。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的知识和技能。让我们一起揭开机器学习的神秘面纱,探索这个充满无限可能的领域吧!

热门文章

最新文章