这一节主要介绍线性回归算法。
Linear Regression Problem
对于输出空间 Y=R 的一类问题,一个比较简单的想法就是:将 Linear Classification 的决策函数中的 sign 函数去掉,使用各种特征的加权结果来表示 y
y≈∑i=0dwixi=wTx
这就是线性回归算法,它的假设空间为
h(x)=wTx
线性回归的目标是寻找一条直线 (
R2) 或者一个平面 (
R3)或者超平面(
Rn),使得误差最小,常用的误差函数是平方误差
Ein(w)=1N∑n=1N(h(xn)−yn)2
Eout(w)=ϵ(x,y)∼P(wTx−y)
Linear Regression Algorithm
将 Ein 写成矩阵形式
Ein(w)=1N∑n=1N(h(xn)−yn)2=1N∥∥∥xT1w−y1xT2w−y2⋅⋅⋅xTNw−yN∥∥∥2=1N∥Xw−y∥2
其中
X=[xT1,1xT2,1⋅⋅⋅xTN,1]∈RN×(d+1)
w∈R(d+1)×1
y∈RN×1
我们的目标是找到一个
w,使得
Ein(w) 尽可能小。因此,将
Ein(w) 对
w 求导,得到:
∇Ein(w)=2NXT(Xw−y)
令
∇Ein(w)=0,得到
w 的最优解
wLIN=(XTX)−1XTy=X†y
其中
X†=(XTX)−1XT
称为矩阵
X 的伪逆,于是
h(x)=wTLINx
将上面做一个小结,得到 Linear Regression 算法的流程如下:

Generalization Issue
下面我们来分析一下 Linear Regression 的 Ein
Ein(wLIN)=1N||y−y^||2=1N||y−XX†y||2=1N||(I−H)y||2
其中
H=XX† 是投影矩阵,把
y 投影到
X 的
d+1 个向量构成的平面上,
H 有如下的性质:
- 对称性 H=HT
- 幂等性 H2=H
- 半正定性 λi≥0
-
trace(I−H)=N−(d+1)

假设 y=f(X)+noise,f(x)∈span,那么如上图所示,有
Ein(wLIN)=1N||(I−H)y||2=1N||(I−H)noise||2=1Ntrace(I−H)||noise||2=1N(N−(d+1))||noise||2
得到:
Ein(wLIN)=||noise||2⋅(1−d+1N)
Eout(wLIN)=||noise||2⋅(1+d+1N)

两者最终都向
σ2 (noise level)收敛,差距是
2(d+1)N,因此说明算法是可行的。
Linear Regression for Binary Classification
对比一下 Linear Classification 与 Linear Regression:
- Linear Regression
- 用于分类问题
-
Y={+1,−1}
-
h(x)=sign(wTx)
- NP-hard,难于求解
- Linear Regression
- 用于回归问题
-
Y=R
-
h(x)=wTx
- 易于求解
因为
err0/1=[[sign(wTx)≠y]]≤errsqr=(wTx−y)2
所以可以将 Linear Regression 用于分类问题上:
- run Linear Regression on binary classification data D
- return g(x)=sign(wTLINx)
以上便是 Linear Regression 的内容。