机器学习-线性回归(参数估计之经验风险最小化)
给定一组包含 𝑁 个训练样本的训练集
我们希望能够 学习一个最优的线性回归的模型参数 𝒘
现在我们来介绍线性回归的一种模型参数估计方法:经验风险最小化。
我们前面说过,对于标签 𝑦 和模型输出都为连续的实数值,平方损失函数非常合适衡量真实标签和预测标签之间的差异。
因此这里大家需要注意一点,经验风险最小化在线性回归中,一般使用均方误差作为损失函数。
一、先来理解一下均方误差作为损失函数时,对应的矩阵形式如何表示
(一)先来认识什么是二范数?
1、二范数的数学定义:
2、二范数的几何解释
3、二范数的代数解释
4、二范数的性质
5、二范数在机器学习中的应用
(二)再来理解均方误差的矩阵表示
在线性回归中,均方误差(Mean Squared Error, MSE)和二范数(L2L_2L2范数)之间有密切的关系。均方误差实际上是预测误差向量的二范数的平方的均值,在矩阵形式下,可以用二范数的表达方式来表示。
1、均方误差(MSE)的定义
2、结合二范数的概念,则可以推导出:
二、现在我们回到标题,掌握如何通过经验风险最小化来学习线性回归的最优参数
在机器学习中,经验风险最小化(Empirical Risk Minimization, ERM)是一种常用的策略,用来在给定的训练数据上找到最优的模型参数。对于线性回归(Linear Regression),我们可以使用经验风险最小化来求解最优参数 w,从而最小化模型的损失。
(一)正规方程求解最优参数 w
1. 问题描述
假设我们有一个线性回归模型,其形式为:
其中:
目标:
利用经验风险最小化,学习最优的 w,使得模型的预测误差最小。
2. 经验风险最小化(ERM)框架
经验风险定义为训练数据上的损失函数的均值:
对于线性回归,常用的损失函数是均方误差(MSE, Mean Squared Error):
因此,经验风险(均方误差)可表示为:
用矩阵表示:
ERM目标:
通过最小化均方误差来找到最优的 w:
3. 解析解求解过程
4. 示例:具体计算过程
假设数据如下:
x1 | x2x | y |
---|---|---|
1 | 2 | 5 |
3 | 4 | 11 |
5 | 6 | 17 |
5. 结论
使用经验风险最小化学习线性回归模型的步骤如下:
- 定义目标函数: 均方误差
- 最小化损失函数: 通过求导得到闭式解(正规方程)。
- 计算最优参数:
- 预测新数据: 使用得到的 w 进行预测。
(二)梯度下降法求解最优参数 w
除了使用正规方程求解最优参数 w之外,**梯度下降法(Gradient Descent)**也是一种常见的方法,尤其适用于高维数据或特征数量很大的情况下。梯度下降可以在没有直接解析解或矩阵维度过大导致计算成本过高时,提供一种更为高效的优化手段。
梯度下降法求解线性回归的最优参数
(1) 问题回顾
(2) 梯度下降法的基本思想
梯度下降是一种迭代优化算法,通过沿着损失函数梯度的反方向不断更新参数 w,直到收敛到最优值。
更新公式:
(3) 计算梯度
(4) 梯度下降算法步骤
(5) 示例
第 2 次迭代计算:
(6) 什么时候使用梯度下降?
- 数据量大时
- 特征数量多,尤其是当 XX稀疏时,梯度下降可有效利用稀疏矩阵优化。
- 适用于在线学习,当数据逐步到来时,可以使用**随机梯度下降(SGD)**来不断更新模型。
梯度下降 vs 正规方程的比较
方法 | 优点 | 缺点 | 适用场景 |
---|---|---|---|
正规方程 | 无需迭代,求解精确解,数学简单 | 当数据量大时计算开销大 | 低维数据,数据量较小时 |
梯度下降 | 适合大规模数据,计算复杂度低 | 需调参(学习率),可能收敛慢 | 高维数据,流式数据处理 |
其他优化算法
除了梯度下降,线性回归的优化还可以使用:
- 随机梯度下降(SGD):每次随机选择一个样本进行更新,适用于大数据集。
- 动量梯度下降:加速收敛,减少震荡。
- L-BFGS(拟牛顿法):适用于更复杂的回归问题。
其中动量梯度下降和L-BFGS(拟牛顿法),我们后面再学习。
结论
- 正规方程:适用于小规模数据,直接求解闭式解。
- 梯度下降法:适用于大规模数据,通过迭代优化找到近似解,尤其在高维和大数据集情况下表现更优。