多元线性回归
迪丽瓦拉
2024-05-31 02:45:41
0

原理说明

多元线性回归是一种利用多个自变量来预测因变量的回归分析方法。在多元线性回归中,我们假设自变量和因变量之间存在线性关系,并且通过最小化残差平方和来求解最优的模型参数。

假设我们有 nnn 个观测值,每个观测值包含 mmm 个自变量和一个因变量,可以表示为 (x1i,x2i,...,xmi,yi)(x_{1i},x_{2i},...,x_{mi},y_i)(x1i​,x2i​,...,xmi​,yi​),其中 i=1,2,...,ni=1,2,...,ni=1,2,...,n。我们的目标是找到一个线性模型来拟合这些观测值,即:

yi=β0+β1x1i+β2x2i+...+βmxmi+ϵiy_i=\beta_0+\beta_1x_{1i}+\beta_2x_{2i}+...+\beta_mx_{mi}+\epsilon_iyi​=β0​+β1​x1i​+β2​x2i​+...+βm​xmi​+ϵi​

其中,β0,β1,β2,...,βm\beta_0,\beta_1,\beta_2,...,\beta_mβ0​,β1​,β2​,...,βm​ 是我们需要求解的模型参数,ϵi\epsilon_iϵi​ 是误差项,表示模型无法完全拟合观测值。

为了求解模型参数,我们需要定义一个损失函数,通常使用残差平方和来表示:

RSS⁡=∑i=1n(yi−yi^)2=∑i=1n(yi−β0−β1x1i−β2x2i−...−βmxmi)2\operatorname{RSS}=\sum_{i=1}^n(y_i-\hat{y_i})^2=\sum_{i=1}^n\left(y_i-\beta_0-\beta_1x_{1i}-\beta_2x_{2i}-...-\beta_mx_{mi}\right)^2RSS=i=1∑n​(yi​−yi​^​)2=i=1∑n​(yi​−β0​−β1​x1i​−β2​x2i​−...−βm​xmi​)2

其中,yi^\hat{y_i}yi​^​ 是模型对观测值 iii 的预测值。

通过最小化残差平方和,我们可以求解出模型的最优参数,通常使用最小二乘法来求解,即将 RSS⁡\operatorname{RSS}RSS 对模型参数求偏导数,令其等于0,然后解方程组即可得到模型参数的值。

假设我们用矩阵表示自变量,即将 nnn 个观测值中的自变量按列组成一个 n×mn\times mn×m 的矩阵 XXX,将因变量按列组成一个 n×1n\times 1n×1 的矩阵 YYY,将模型参数按列组成一个 (m+1)×1(m+1)\times 1(m+1)×1 的矩阵 β\betaβ,其中第一个元素是截距。那么,我们可以将模型表示为:

Y=Xβ+ϵY=X\beta+\epsilonY=Xβ+ϵ

此时,最小二乘法的解可以表示为:

β=(XTX)−1XTY\beta=(X^TX)^{-1}X^TYβ=(XTX)−1XTY

其中,(XTX)−1(X^TX)^{-1}(XTX)−1 是矩阵 XTXX^TXXTX 的逆矩阵。

以上就是多元线性回归的原理说明,通过求解最小化残差平方和的模型参数,我们可以建立自变量和因变量之间的线性关系模型,从而对因变量进行预测。

公式推导

我们假设有 nnn 个观测值,每个观测值包含 mmm 个自变量和一个因变量,可以表示为 (x1i,x2i,...,xmi,yi)(x_{1i},x_{2i},...,x_{mi},y_i)(x1i​,x2i​,...,xmi​,yi​),其中 i=1,2,...,ni=1,2,...,ni=1,2,...,n。我们的目标是找到一个线性模型来拟合这些观测值,即:

yi=β0+β1x1i+β2x2i+...+βmxmi+ϵiy_i=\beta_0+\beta_1x_{1i}+\beta_2x_{2i}+...+\beta_mx_{mi}+\epsilon_iyi​=β0​+β1​x1i​+β2​x2i​+...+βm​xmi​+ϵi​

其中,β0,β1,β2,...,βm\beta_0,\beta_1,\beta_2,...,\beta_mβ0​,β1​,β2​,...,βm​ 是我们需要求解的模型参数,ϵi\epsilon_iϵi​ 是误差项,表示模型无法完全拟合观测值。

为了求解模型参数,我们需要定义一个损失函数,通常使用残差平方和来表示:

RSS⁡=∑i=1n(yi−yi^)2=∑i=1n(yi−β0−β1x1i−β2x2i−...−βmxmi)2\operatorname{RSS}=\sum_{i=1}^n(y_i-\hat{y_i})^2=\sum_{i=1}^n\left(y_i-\beta_0-\beta_1x_{1i}-\beta_2x_{2i}-...-\beta_mx_{mi}\right)^2RSS=i=1∑n​(yi​−yi​^​)2=i=1∑n​(yi​−β0​−β1​x1i​−β2​x2i​−...−βm​xmi​)2

其中,yi^\hat{y_i}yi​^​ 是模型对观测值 iii 的预测值。

我们将自变量按列组成一个 n×(m+1)n\times (m+1)n×(m+1) 的矩阵 XXX,其中第一列全为1,表示截距。将模型参数按列组成一个 (m+1)×1(m+1)\times 1(m+1)×1 的矩阵 β\betaβ,将因变量按列组成一个 n×1n\times 1n×1 的矩阵 YYY。此时,模型可以表示为:

Y=Xβ+ϵY=X\beta+\epsilonY=Xβ+ϵ

为了最小化残差平方和,我们需要对模型参数 β\betaβ 求导,并令其等于0。即,

∂RSS⁡∂β=0\frac{\partial \operatorname{RSS}}{\partial \beta}=0∂β∂RSS​=0

展开上式,得到:

∂∂β[(Y−Xβ)T(Y−Xβ)]=0\frac{\partial}{\partial \beta}[(Y-X\beta)^T(Y-X\beta)]=0∂β∂​[(Y−Xβ)T(Y−Xβ)]=0

∂∂β(YTY−YTXβ−βTXTY+βTXTXβ)=0\frac{\partial}{\partial \beta}(Y^TY-Y^TX\beta-\beta^TX^TY+\beta^TX^TX\beta)=0∂β∂​(YTY−YTXβ−βTXTY+βTXTXβ)=0

−2XTY+2XTXβ=0-2X^TY+2X^TX\beta=0−2XTY+2XTXβ=0

XTXβ=XTYX^TX\beta=X^TYXTXβ=XTY

此时,我们可以使用矩阵运算求解模型参数 β\betaβ,即:

β=(XTX)−1XTY\beta=(X^TX)^{-1}X^TYβ=(XTX)−1XTY

其中,(XTX)−1(X^TX)^{-1}(XTX)−1 是矩阵 XTXX^TXXTX 的逆矩阵。

最终,我们可以得到多元线性回归模型的公式为:

y=β0+β1x1+β2x2+...+βmxm+ϵy=\beta_0+\beta_1x_1+\beta_2x_2+...+\beta_mx_m+\epsilony=β0​+β1​x1​+β2​x2​+...+βm​xm​+ϵ

其中,β0,β1,β2,...,βm\beta_0,\beta_1,\beta_2,...,\beta_mβ0​,β1​,β2​,...,βm​ 是模型参数,ϵ\epsilonϵ 是误差项。
得到模型参数后,我们可以使用该模型对新的观测值进行预测。对于一个新的观测值 (x1∗,x2∗,...,xm∗)(x_{1*},x_{2*},...,x_{m*})(x1∗​,x2∗​,...,xm∗​),其预测值为:

y^=β0+β1x1∗+β2x2∗+...+βmxm∗\hat{y}=\beta_0+\beta_1x_{1*}+\beta_2x_{2*}+...+\beta_mx_{m*}y^​=β0​+β1​x1∗​+β2​x2∗​+...+βm​xm∗​

需要注意的是,该预测值仅在模型的假设条件下成立。例如,在多元线性回归中,假设自变量之间不存在多重共线性,误差项服从正态分布等。

此外,我们还需要对模型进行评估,以确定其拟合效果。常用的评估指标包括残差平方和、平均绝对误差、均方误差等。我们还可以使用交叉验证等方法来评估模型的泛化能力。

最后,需要注意的是,在实际应用中,多元线性回归模型可能存在欠拟合或过拟合的问题。欠拟合指模型过于简单,不能很好地拟合数据;过拟合指模型过于复杂,过度拟合了训练数据,导致在测试数据上表现不佳。针对这些问题,我们可以采取一系列方法,如添加正则化项、调整模型超参数等来提高模型的泛化能力。

相关内容