线性回归问题解的唯一性

线性回归问题在Andrew Ng的视频教学《机器学习》的第二章中有提到,可以用梯度下降的方法来解决其中的参数估计问题。Ng指出梯度下降法在线性回归问题中必然全局收敛,因为这个问题只有一个极值点。这也就意味着线性回归问题的解是唯一的。
我们现在要证明这个解的唯一性。在证明唯一性之前,先求解线性回归问题。

定义1:观察数据 X
样本数据由一个 m×(n+1) 的矩阵 X 表达,其中 m 是样本数, n 是样本的特征的数量。

X=x10xm0x1nxmn(1)

为了表示每一个样本,我们引入每个样本的列向量标记

x(1),,x(m) ,其中

x(i)=(xi0,xi1,,xin)T 。需要说明的是:第0维为

xi0=1 ,其余都是观察数据。

定义2:目标值

y


m 个样本的目标值分别为

y(1),,y(m) ,用列向量表示:


y=y(1)y(m)(2)

定义3:线性回归模型

hθ(x) ,用于预测给定输入后得到的输出。

我们定义线性回归模型如下:


hθ(x)=θ0+θ1x1++θnxn=j=0nθjxj=θTx(3)

(

3 )中为了连加符号的连贯性,定义

x0=1

θ 是线性回归模型中的参数,是一个

n+1 维的列向量。

定义4,总误差函数

J(θ) ,用于衡量线性回归模型

hθ(x) 在给定观察数据

X 的情况下的误差。


J(θ)=12i=1m[hθ(x(i))y(i)]2(4)

问题的求解目标:我们要计算出线性回归模型中的参数

θ ,这个

θ 能够使总误差函数

J(θ) 在给定观察数据

X 的情况下达到最小。

求解路线:将(

4 )表达成矩阵的形式,然后用求导的方法求出解的必要性条件,最后证明解的存在性和唯一性。

解答:
将( 1 )写成行分块的形式:

X=(x(1))T(x(2))T(x(m))T(5)

误差向量

error(θ) 可以写成如下形式:


error(θ)=(x(1))Tθy(1)(x(2))Tθy(2)(x(m))Tθy(m)=Xθy(6)

易知(

6 )和自身的内积可以和(

4 )产生关联:


J(θ)=12errorT(θ)error(θ)=12(Xθy)T(Xθy)=12(θTXTXθ2yTXθ+yTy)(7)

极值点的必要性条件:


J(θ)θ=XTXθXTy=0(8)

现在探讨

XTX 的性质,首先,它是一个半正定矩阵。用任意的

n+1 维非零向量

d 考察

XTX


dTXTXd=(Xd)T(Xd)=||Xd||20(9)

当且仅当

d


Xd=0(10)

的非零解的时候,

9 才会取到等号。也就是说只有当

m×(n+1) 维的矩阵

X 不满秩的时候,才会使

d 有非零解:


rank(X)<min(m,n+1)(11)

这需要区分两种情况,观察数据组成的矩阵

X 呈现长条状还是扁平状。
待续

(

11 )成立的条件是同一个数据点被多次采样,这在数据获取或者数据过滤阶段可以避免。所以我们就可以认为

X 是满秩的,相应的

XTX 也是满秩的(
待续).在这个条件下,我们解出

8


θ=(XTX)1XTy(12)

这里我们给出了解,也回答了开头提出的解的唯一性问题。另外,我们回答另一个问题,即如果采用梯度下降算法,是有全局最优解的,这是因为函数

J(θ) 的二阶导数是正定的。

2(J(θ))θ2=θ(XTXθXTy)=XTX
(13)
2(J(θ))θ2=θ(XTXθXTy)=XTX
(13)

2(J(θ))θ2=θ(XTXθXTy)=XTX(13)

( 9 )说明了二阶导数 XTX 的正定性,所以可以用梯度下降法来计算参数 θ :

θk=θk1α(J(θ))θθ0=0⃗ (14)

点赞