回归任务全面解析:原理、元素与典型算法
1. 回归任务工作原理
1.1 形式化描述
为了更好地理解回归任务,我们先给出形式化描述。设 $\mathbb{R}^m$ 表示 $m$ 维实向量集合($m \geq 1$),$\mathcal{X} \subseteq \mathbb{R}^m$ 为输入空间,$\mathcal{Y} \subseteq \mathbb{R}$ 为输出空间。
通过概率 $P(x)$,我们得到 $n$ 个独立同分布(i.i.d.)的观测数据:$D = {x_i | x_i \in \mathcal{X}, i = 1, \ldots, n}$。
回归的目标函数为 $f: \mathcal{X} \to \mathcal{Y}$,可表示为条件概率 $P(y|x)$,其中 $x \in \mathcal{X}$,$y \in \mathcal{Y}$。
基于联合概率分布 $P(x, y) = P(y|x)P(x)$ 为每个输入数据 $x_i$ 标记实际输出值 $y_i$,得到训练样本集 $S$,每个元素为 $(x_i, y_i) \in \mathcal{X} \times \mathcal{Y}$。
我们的目标是找到使损失函数期望最小的假设函数 $h$:
$\arg \min_{h \in H} R(h) = \arg \min_{h \in H} \mathbb{E}[L(h(x), f(x))] = \arg \min_{h \in H} \mathbb{E}[L(\hat{y}, y)]$
其中,$\hat{y}$ 是预测值,$y$ 是目标值,$L(\cdot, \cdot)$ 是回归的损失函数。
得到假设函数 $h$ 后,用测试数据 $T = {x_i | i = 1, \ldots, n’} \subseteq \mathcal{X}$ 进行测试,预测结果为 $T_{Output} = {(x_i, \hat{y}_i) | \hat{y}_i = h(x_i), i = 1, \ldots, n’} \subseteq \mathcal{Y}$。
1.2 图示说明
回归模型的工作原理可通过训练和测试过程的图示进一步解释。
-
训练过程
:与分类过程类似,但回归的假设函数称为回归函数,可看作训练数据的拟合函数,这是理解回归方法的关键。
-
测试过程
:同样与分类类似,但对于给定输入 $x_i$,通过回归函数 $h(x_i)$ 得到的是输出值 $\hat{y}_i$,而非类别。
下面是一个简单的 mermaid 流程图,展示回归任务的基本流程:
graph LR
A[获取观测数据] --> B[生成训练样本集]
B --> C[寻找最优假设函数 h]
C --> D[获取测试数据]
D --> E[使用 h 进行预测]
2. 回归分析的相关元素
2.1 唯一与多个变量
回归是用于估计自变量和因变量之间关系的统计过程,不同回归问题的自变量和因变量数量不同。
2.1.1 单自变量和多自变量
在回归模型 $y = f(x, \theta) + \varepsilon$ 中,$x = (x_1, x_2, \ldots, x_m) \in \mathcal{X} \subseteq \mathbb{R}^m$ 是自变量,$m$ 表示自变量的数量($m \geq 1$)。代入自变量后,模型变为 $y = f(x_1, x_2, \ldots, x_m, \theta) + \varepsilon$。
-
单自变量
:回归模型中只有一个自变量,即 $m = 1$。
-
多自变量
:自变量数量为两个或更多,即 $m \geq 2$。
2.1.2 单因变量和多因变量
在回归模型 $y = f(x, \theta) + \varepsilon$ 中,$y = (y_1, \ldots, y_n) \in \mathcal{Y} \subseteq \mathbb{R}$ 是因变量,$n$ 表示因变量的数量($n \geq 1$)。代入因变量后,模型变为 $y = (y_1, \ldots, y_n) = f(x, \theta) + \varepsilon$。
-
单因变量
:回归模型中只有一个因变量,即 $n = 1$。
-
多因变量
:因变量数量为两个或更多,即 $n \geq 2$。
2.1.3 四种子模型
由于自变量和因变量各有两种情况,可得到以下四种回归子模型:
| | 单自变量 | 多自变量 |
| — | — | — |
| 单因变量 | 单自变量单因变量回归 | 多自变量单因变量回归 |
| 多因变量 | 单自变量多因变量回归 | 多自变量多因变量回归 |
多自变量单因变量的回归问题较为常见且容易理解,而多自变量多因变量的回归问题也不少见,例如医生分析健康指标与饮食习惯的关系。
2.2 线性与非线性
2.2.1 线性组合
线性组合是数学(包括线性代数)中的重要概念。参数的线性组合是由一组项组成的表达式,每项是参数与自变量相乘后相加,第一个自变量的值通常为 1。
2.2.2 线性回归
如果回归模型 $y = f(x, \theta) + \varepsilon$ 中,$f(x, \theta)$ 是参数的线性组合,则该模型称为线性回归模型。需要注意的是,线性回归取决于表达式是否为参数的线性组合,而不取决于拟合线是否为直线,线性回归的拟合线也可能是曲线。
例如:
- $y = \theta_0 + \theta_1x + \varepsilon$ 是线性回归模型,拟合线为直线。
- $y = \theta_0 + \theta_1x + \theta_2x^2 + \varepsilon$ 也是线性回归模型,拟合线为抛物线。
2.2.3 非线性回归
如果回归模型 $y = f(x, \theta) + \varepsilon$ 中,$f(x, \theta)$ 不是参数的线性组合,则该模型称为非线性回归模型。所有不符合线性回归模型定义的回归模型都是非线性回归模型。
例如:$y = \frac{\theta_1x}{\theta_0 + x} + \varepsilon$ 是非线性回归模型。
2.3 参数与非参数
根据回归模型中自变量和因变量的关系,可分为参数回归模型、非参数回归模型和半参数回归模型。
-
参数回归模型
:如果回归模型 $y = f(x, \theta) + \varepsilon$ 中,$\theta$ 是有限且固定数量的参数,则该模型称为参数回归模型。线性和非线性回归模型都属于参数回归模型,其任务是估计参数的值。
-
非参数回归模型
:如果回归模型中 $\theta$ 的参数数量不是预先确定的,而是根据数据集的大小进行调整,则该模型称为非参数回归模型。非参数回归模型并非没有参数,只是参数数量不固定。
-
半参数回归模型
:如果回归模型是参数回归和非参数回归的混合,则称为半参数回归模型。
2.4 插值与外推
回归模型是基于训练样本估计自变量和因变量之间的关系并得到最佳拟合线的统计过程,可分为插值和外推两种类型。
-
插值
:基于最佳拟合线,在数据范围内估计给定自变量值对应的因变量值。例如,图中两条虚线范围内的蓝色线部分属于插值。
-
外推
:基于最佳拟合线的投影、扩展或延伸进行预测,超出训练样本使用的范围。即估计数据范围外给定自变量值对应的因变量值。例如,图中两条虚线范围外的红色线部分属于外推。需要注意的是,外推有一定风险,因为外推的前提是假设数据范围外自变量和因变量的关系不变,可能导致预测不准确,因此外推时要谨慎,仅在特定条件下进行。
下面是一个简单的表格总结插值和外推的特点:
| 类型 | 范围 | 风险 |
| — | — | — |
| 插值 | 数据范围内 | 相对较小 |
| 外推 | 数据范围外 | 可能导致不准确预测 |
3. 典型回归算法
典型的回归算法主要分为以下两类:
- 一类是基于分类算法修改后用于回归任务的算法,包括 AdaBoost、朴素贝叶斯、决策树、随机森林、k - 近邻、支持向量机(SVM)和人工神经网络。这是因为分类和回归都属于监督学习范式。
- 另一类是专门的回归算法,如多元线性回归、多项式回归、岭回归、套索回归、多线性插值、分位数回归和贝叶斯回归。下面重点介绍几种典型的专门回归算法。
3.1 多元线性回归
多元线性回归,也称为多元回归,是最早提出且广泛使用的线性回归分析算法。这是因为线性模型更容易拟合,其统计特性也更容易确定。
3.1.1 模型前提与表达式
多元线性回归的前提是存在多个自变量和一个因变量,其表达式 $f(x, \theta)$ 表现为参数的线性组合。
给定 $n$ 个有标签的训练样本 $S = {(x_i, y_i) | i = 1, \ldots, n}$,其中 $x_i \in \mathbb{R}^m$,$y_i \in \mathbb{R}$。对于回归模型 $y_i = f(x_i, \theta) + \varepsilon_i$,设多元线性回归的多个自变量为 $x_i = (x_{i1}, \ldots, x_{im})$,参数为 $\theta = (\theta_0, \theta_1, \ldots, \theta_m)$,则多元线性回归的目标函数为:
[y_i = f(x_i, \theta) + \varepsilon_i = \theta_0 + \theta_1x_{i1} + \cdots + \theta_mx_{im} + \varepsilon_i = \sum_{j = 0}^{m} \theta_jx_{ij} + \varepsilon_i]
其中 $m \geq 1$,且 $x_{i0} = 1$。当 $m = 1$ 时,为简单线性回归。
3.1.2 预测模型与残差
根据 $n$ 个有标签的训练样本 $S$,得到多元线性回归的预测模型:
[\hat{y}
i = \hat{\theta}_0 + \hat{\theta}_1x
{i1} + \cdots + \hat{\theta}
mx
{im} = \sum_{j = 0}^{m} \hat{\theta}
jx
{ij}]
设 $\varepsilon_i = y_i - \hat{y}_i$ 为目标函数中因变量的实际值 $y_i$ 与预测模型中因变量的预测值 $\hat{y}_i$ 之间的差异,$\varepsilon_i$ 称为残差。
3.1.3 参数估计与残差平方和
常用的参数估计方法是普通最小二乘法,通过最小化残差平方和(RSS)来计算参数 $\hat{\theta}$。多元线性回归的残差平方和 $RSS_{multi}(\cdot)$ 的方程如下:
[RSS_{multi}(\hat{\theta}) = \sum_{i = 1}^{n} \varepsilon_i^2 = \sum_{i = 1}^{n} (y_i - \hat{y}
i)^2 = \sum
{i = 1}^{n} \left(y_i - \sum_{j = 0}^{m} \hat{\theta}
jx
{ij}\right)^2]
为简化 $RSS(\cdot)$ 的推导过程,对于 $n$ 个训练样本,可表示为以下向量和矩阵:
[y = \begin{bmatrix} y_1 \ y_2 \ \vdots \ y_n \end{bmatrix}, x = \begin{bmatrix} 1 & x_{11} & \cdots & x_{1m} \ 1 & x_{21} & \cdots & x_{2m} \ \vdots & \vdots & \ddots & \vdots \ 1 & x_{n1} & \cdots & x_{nm} \end{bmatrix}, \theta = \begin{bmatrix} \theta_0 \ \theta_1 \ \vdots \ \theta_m \end{bmatrix}, \varepsilon = \begin{bmatrix} \varepsilon_1 \ \varepsilon_2 \ \vdots \ \varepsilon_n \end{bmatrix}]
其中 $x$ 称为多元线性回归的设计矩阵,维度为 $n \times (m + 1)$。
此时,多元线性回归的目标函数和预测模型可表示为:
[y = x\theta + \varepsilon, \hat{y} = x\hat{\theta}]
残差平方和可表示为:
[RSS_{multi}(\hat{\theta}) = |y - \hat{y}|^2 = |y - x\hat{\theta}|^2 = (y - x\hat{\theta})^T(y - x\hat{\theta}) = y^Ty - 2y^Tx\hat{\theta} + \hat{\theta}^Tx^Tx\hat{\theta}]
由于 $RSS_{multi}(\hat{\theta})$ 是凸函数,其最优解在梯度为零的点。通过求导并令其等于零,可得:
[\frac{\partial RSS_{multi}(\hat{\theta})}{\partial \hat{\theta}} = \frac{\partial (y^Ty - 2y^Tx\hat{\theta} + \hat{\theta}^Tx^Tx\hat{\theta})}{\partial \hat{\theta}} = -2x^Ty + 2x^Tx\hat{\theta} = 0]
3.2 其他典型回归算法概述
除了多元线性回归,还有以下几种典型的专门回归算法:
-
多项式回归
:通过增加自变量的高次项来拟合数据,能够处理更复杂的非线性关系。例如,对于自变量 $x$,可以构建 $y = \theta_0 + \theta_1x + \theta_2x^2 + \cdots + \theta_kx^k + \varepsilon$ 的模型。
-
岭回归
:在普通最小二乘法的基础上,增加了一个正则化项 $\lambda\sum_{j = 1}^{m} \theta_j^2$,用于解决多元线性回归中可能出现的多重共线性问题,提高模型的稳定性。
-
套索回归
:同样是一种正则化回归方法,其正则化项为 $\lambda\sum_{j = 1}^{m} |\theta_j|$。与岭回归不同的是,套索回归可以使某些参数的估计值恰好为 0,从而实现变量选择的功能。
-
贝叶斯回归
:基于贝叶斯定理,将参数视为随机变量,通过先验分布和数据的似然函数来得到参数的后验分布,从而进行预测。这种方法可以考虑参数的不确定性,提供更全面的预测结果。
下面是一个简单的 mermaid 流程图,展示几种典型回归算法的关系:
graph LR
A[典型回归算法] --> B[基于分类算法修改的回归算法]
A --> C[专门回归算法]
B --> B1[Adaboost]
B --> B2[朴素贝叶斯]
B --> B3[决策树]
B --> B4[随机森林]
B --> B5[k - 近邻]
B --> B6[SVM]
B --> B7[人工神经网络]
C --> C1[多元线性回归]
C --> C2[多项式回归]
C --> C3[岭回归]
C --> C4[套索回归]
C --> C5[贝叶斯回归]
3.3 典型回归算法对比
为了更清晰地了解各种典型回归算法的特点,下面给出一个对比表格:
| 算法名称 | 适用场景 | 优点 | 缺点 |
| — | — | — | — |
| 多元线性回归 | 自变量和因变量呈线性关系 | 简单易懂,计算效率高,统计特性明确 | 只能处理线性关系,对异常值敏感 |
| 多项式回归 | 数据具有非线性关系 | 能够拟合复杂的非线性关系 | 容易过拟合,高次项可能导致数值不稳定 |
| 岭回归 | 存在多重共线性问题 | 提高模型稳定性,减少过拟合风险 | 不能进行变量选择 |
| 套索回归 | 需要进行变量选择 | 可以实现变量选择,简化模型 | 计算相对复杂,可能遗漏重要变量 |
| 贝叶斯回归 | 需要考虑参数不确定性 | 提供全面的预测结果,能处理小样本问题 | 先验分布的选择较困难,计算复杂度高 |
综上所述,不同的回归算法具有不同的特点和适用场景。在实际应用中,需要根据数据的特点和问题的需求选择合适的回归算法。通过对回归任务的原理、相关元素和典型算法的了解,我们可以更好地运用回归分析来解决各种实际问题。
超级会员免费看
1789

被折叠的 条评论
为什么被折叠?



