我们之前一直解决的是简单线性回归,也就是我们的样本只有一个特征。但是实际中,样本是有很多很多特征的,成百上千个也是很正常的。对于有多个特征的样本,我们依旧可以使用线性回归法来解决,我们称之为多元线性回归。
还是以这张图为例,在简单线性回归中,我们的每一个x只是一个值。但是现在在多元线性回归中,每个x则是一个数组(或者说是向量),具有n个特征。那么我们的方程就变成了 \(y = θ_{0} + θ_{1}x_{1} + θ_{2}x_{2} + ... + θ_{n}x_{n}\) ,n个特征对应的系数则是 \(θ_{0}, θ_{1}, θ_{2}, ......, θ_{n}\),而且此时仍然是有一个截距的,我们记作 \(θ_{0}\) ,所以在预测模型的时候,也是有n个系数。
可以看到多元线性回归和简单线性回归并无本质上的不同,只不过在简单线性回归中,我们只需要求一个截距和一个系数即可,也就是 \(θ_{0}\) 和 \(θ_{1}\);但是在多元线性回归中,我们将只求一个截距和一个系数扩展到了求一个截距和n个系数。
我们在简单线性回归中,目的是使得:\(\displaystyle\sum_{i=1}^{m}(y^{i} - \hat y^{i})^{2}\) 尽可能的小,此时在多元线性回归中,我们的目的依然是使得这个式子尽可能的小,因为它表达的便是真实值和预测值之间误差。只不过此时的 \(\hat y^{i} = θ_{0} + θ_{1}X_{1}^{i} + θ_{2}X_{2}^{i} + ...... + θ_{n}X_{n}^{i}\) ,其中 \(x^{i} = (X_{1}^{i}, X_{2}^{i},......,X_{n}^{i})\),而我们是要找到一组 \(θ_{0}, θ_{1}, θ_{2}, ......, θ_{n}\) ,来完成这一点。
\(\hat y^{i} = θ_{0} + θ_{1}X_{1}^{i} + θ_{2}X_{2}^{i} + ...... + θ_{n}X_{n}^{i},θ = (θ_{0}, θ_{1}, θ_{2}, ..., θ_{n})^{T}\)
\(\hat y^{i} = θ_{0}X_{0}^{i} + θ_{1}X_{1}^{i} + θ_{2}X_{2}^{i} + ...... + θ_{n}X_{n}^{i},X_{0}^{i} ≡ 1,X^{i} = (X_{0}^{i}, X_{1}^{i}, X_{2}^{i}, ..., X_{n}^{i})\)
\(\hat y^{i} = X^{i} · θ\)
我们找到一个 \(θ\),让 \(θ = (θ_{0}, θ_{1}, θ_{2}, ..., θ_{n})^{T}\) ,注意这里的 \(θ\) 是一个列向量,为了方便我们写成行向量的模式,然后再进行转置。但是我们发现在模型中,对于 \(θ_{0}\) ,没有 \(X\) 与之配对,怪孤单的,因为我们可以虚构出一个特征 \(X_{0}\) ,让其与 \(θ_{0}\) 结合,这样模型中的每一个部分都满足相同的规律。但是由于 \(X_{0}\) 这个特征使我们虚构出来的,因此这个 \(X_{0}\) 是恒等于1的。
我们可以对式子再进行一下推广:
\(X_{b} = \begin{bmatrix}1 && X_{1}^{1} && X_{2}^{1} && X_{3}^{1} && ... && X_{n}^{1} \\ 1 && X_{1}^{2} && X_{2}^{2} && X_{3}^{2} && ... && X_{n}^{2} \\ ... && && && && && ...\\ 1 && X_{1}^{m} && X_{2}^{m} && X_{3}^{m} && ... && X_{n}^{m}\end{bmatrix}\)
\(θ = \begin{bmatrix}θ_{0} \\ θ_{1} \\ θ_{2} \\ ... \\ θ_{n}\end{bmatrix}\)
由此可以得出:
\(\hat y = X_{b} · θ\)
所以我们的目标就变成了使 \((y - X_{b} · θ)^{T}(y - X_{b} · θ)\) 尽可能小。