第三章 线性回归模型
1、原理
线性回归模型试图学得一个通过属性的线性组合来进行预测的函数,即:
f
(
x
)
=
w
1
x
1
+
w
2
x
2
+
.
.
.
+
w
d
x
d
+
b
f(\bold{x}) = w_1x_1 + w_2x_2 + ... + w_dx_d + b
f(x)=w1x1+w2x2+...+wdxd+b
其向量形式为:
f
(
x
)
=
w
T
x
+
b
f(\bold{x}) = \bold{w^Tx + b}
f(x)=wTx+b
通过学习得到
w
\bold{w}
w 和
b
b
b,模型就确定了。
规定:当向量中的元素用分号“;”分隔时表示此向量为列向量,用逗号“,”分隔时表示为行向量。
1、数据集: D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x m , y m ) } D = \{(\bold{x_1},y_1),(\bold{x_2},y_2),...,(\bold{x_m},y_m)\} D={(x1,y1),(x2,y2),...,(xm,ym)}
2、样本属性: x i = ( x i 1 ; x i 2 ; . . . ; x i d ) \bold{x_i} = (x_{i1};x_{i2};...;x_{id}) xi=(xi1;xi2;...;xid) ===>为(d*1)的列向量
3、参数(w): w = ( w 1 ; w 2 ; . . . ; w d ) \bold{w} = (w_1;w_2;...;w_d) w=(w1;w2;...;wd)===>为(d*1)的列向量
4、维度: m m m= 样本数量, d d d= 属性数量
5、总体样本: x = ( x 1 , x 2 , . . . , x m ) \bold{x} = (x_1, x_2,...,x_m) x=(x1,x2,...,xm)===>代入 x i \bold{x_i} xi,得到(d*m)矩阵
6、表达式: w T x \bold{w^Tx} wTx===>为(1*d)*(d*m)得到(1*m)的行向量
预测:
对于某个样本,试图学得: f ( x i ) = w x i + b f(x_i) = wx_i + b f(xi)=wxi+b,使得 f ( x i ) ≈ y i f(x_i)\approx y_i f(xi)≈yi
属性数值化
为了能进行数学运算,样本中的非数值类属性都需要进行数值化。对于存在“序”关系的属性,可通过
连续化将其转化为带有相对大小关系的连续值;对于不存在“序”关系的属性,可根据属性取值将其拆解为
多个属性,例如“西瓜书”中所说的“瓜类”属性,可将其拆解为“是否是西瓜”、“是否是南瓜”、“是否是黄
瓜”3 个属性,其中每个属性的取值为1 或0,1 表示“是”,0 表示“否”。具体地,假如现有3 个瓜类样本:
x1 = (甜度= 高; 瓜类= 西瓜), x2 = (甜度= 中; 瓜类= 南瓜), x3 = (甜度= 低; 瓜类= 黄瓜),其中“甜
度”属性存在序关系,因此可将“高”、“中”、“低”转化为{1.0, 0.5, 0.0},“瓜类”属性不存在序关系,则按照上
述方法进行拆解,3 个瓜类样本数值化后的结果为:x1 = (1.0; 1; 0; 0), x1 = (0.5; 0; 1; 0), x1 = (0.0; 0; 0; 1)。
2、计算
均方误差是回归任务中常用的性能度量,因此我们试图让均方误差最小化,即:
(
w
∗
,
b
∗
)
=
a
r
g
m
i
n
(
w
,
b
)
∑
i
=
1
m
(
f
(
x
i
)
−
y
i
)
2
(w^*,b^*) = arg min_{(w,b)}\sum_{i=1}^m(f(x_i)-y_i)^2
(w∗,b∗)=argmin(w,b)i=1∑m(f(xi)−yi)2
=
a
r
g
m
i
n
(
w
,
b
)
∑
i
=
1
m
(
y
i
−
w
x
i
−
b
)
2
=arg min_{(w,b)}\sum_{i=1}^m(y_i-wx_i-b)^2
=argmin(w,b)i=1∑m(yi−wxi−b)2
求解
w
w
w和
b
b
b使得
E
(
w
,
b
)
=
∑
i
=
1
m
(
y
i
−
w
x
i
−
b
)
2
E_{(w,b)} = \sum_{i=1}^m(y_i-wx_i-b)^2
E(w,b)=∑i=1m(yi−wxi−b)2最小化的过程,称为线性回归模型的最小二乘“参数估计”(parameter estimation)
将
E
(
w
,
b
)
E_{(w,b)}
E(w,b)分别对
w
w
w和
b
b
b求导,得到:
∂
E
∂
w
=
2
(
w
∑
i
=
1
m
x
i
2
−
∑
i
=
1
m
(
y
i
−
b
)
x
i
)
\frac{\partial{E}}{\partial{w}} = 2\left( w\sum^m_{i=1}x^2_i - \sum^m_{i=1}(y_i-b)x_i \right)
∂w∂E=2(wi=1∑mxi2−i=1∑m(yi−b)xi)
∂
E
∂
b
=
2
(
m
b
−
∑
i
=
1
m
(
y
i
−
w
x
i
)
)
\frac{\partial{E}}{\partial{b}} = 2\left( mb - \sum^m_{i=1}(y_i-wx_i) \right)
∂b∂E=2(mb−i=1∑m(yi−wxi))
闭式解是指可以通过具体的表达式解出待解参数
令上面两式等于0,得到:
w
=
∑
i
=
1
m
y
i
(
x
i
−
x
‾
)
∑
i
=
1
m
x
i
2
−
1
m
(
∑
i
=
1
m
x
i
)
2
=
∑
i
=
1
m
(
y
i
−
y
‾
)
(
x
i
−
x
‾
)
∑
i
=
1
m
(
x
i
−
x
‾
)
2
w = \frac{\sum^m_{i=1}y_i(x_i-\overline{x})}{\sum^m_{i=1}x^2_i-\frac{1}{m}(\sum^m_{i=1}x_i)^2} = \frac{\sum^m_{i=1}(y_i-\overline{y})(x_i-\overline{x})}{\sum^m_{i=1}(x_i-\overline{x})^2}
w=∑i=1mxi2−m1(∑i=1mxi)2∑i=1myi(xi−x)=∑i=1m(xi−x)2∑i=1m(yi−y)(xi−x)
b
=
1
m
∑
i
=
1
m
(
y
i
−
w
x
i
)
=
y
‾
−
w
x
‾
b = \frac{1}{m}\sum^m_{i=1}(y_i-wx_i) = \overline{y}-w\overline{x}
b=m1i=1∑m(yi−wxi)=y−wx
其中:
x
‾
=
1
m
∑
i
=
1
m
x
i
,
y
‾
=
1
m
∑
i
=
1
m
y
i
\overline{x} = \frac{1}{m}\sum^m_{i=1}x_i,\quad \overline{y} = \frac{1}{m}\sum^m_{i=1}y_i
x=m1i=1∑mxi,y=m1i=1∑myi
为便于讨论,令 w ^ = ( w ; b ) = ( w 1 ; w 2 ; . . . ; w d ; b ) , x ^ i = ( x i 1 ; x i 2 ; . . . ; x i d ; 1 ) \bold{\hat{w}} = (\bold{w};b) = (w_1;w_2;...;w_d;b),\bold{\hat{x}_i} = (x_{i1};x_{i2};...;x_{id};1) w^=(w;b)=(w1;w2;...;wd;b),x^i=(xi1;xi2;...;xid;1),那么 ( w ∗ , b ∗ ) (w^*,b^*) (w∗,b∗)可简化为:
w
^
∗
=
a
r
g
m
i
n
w
^
∑
i
=
1
m
(
y
i
−
w
^
T
x
^
i
)
=
a
r
g
m
i
n
w
^
∑
i
=
1
m
(
y
i
−
x
^
i
T
w
^
)
\hat{w}^* = argmin_{\hat{w}}\sum^m_{i=1}\left(y_i-\hat{w}^T\hat{x}_i\right) = argmin_{\hat{w}}\sum^m_{i=1}\left(y_i-\hat{x}^T_i\hat{w}\right)
w^∗=argminw^i=1∑m(yi−w^Tx^i)=argminw^i=1∑m(yi−x^iTw^)
w
^
∗
=
a
r
g
m
i
n
w
^
(
y
−
X
w
^
)
T
(
y
−
X
w
^
)
\hat{w}^* = argmin_{\hat{w}}(\bold{y-X\hat{w}})^T(\bold{y-X\hat{w}})
w^∗=argminw^(y−Xw^)T(y−Xw^)
将
E
w
^
=
(
y
−
X
w
^
)
T
(
y
−
X
w
^
)
E_{\hat{w}} = (\bold{y-X\hat{w}})^T(\bold{y-X\hat{w}})
Ew^=(y−Xw^)T(y−Xw^)展开并求导得,
∂
E
w
^
∂
w
^
=
2
X
T
(
X
w
^
−
y
)
\frac{\partial{E_{\hat{w}}}}{\partial{\hat{w}}} = \bold{2X^T(X\hat{w}-y)}
∂w^∂Ew^=2XT(Xw^−y)
令求导为0,得
w
^
=
(
X
T
X
)
−
1
X
T
y
\bold{\hat{w} = (X^TX)^{-1}X^Ty}
w^=(XTX)−1XTy
引入正则化项(regularization),使矩阵为满秩矩阵
3、线性模型的变化
对数线性回归
l
n
y
=
w
T
x
+
b
lny = \bold{w^Tx} + b
lny=wTx+b
形式上还是线性回归,但实质上是在求取输入空间到输出空间的非线性函数映射
更一般的,考虑单调可微函数g(·),令
y
=
g
−
1
(
w
T
x
+
b
)
y = g^{-1}( \bold{w^Tx} + b)
y=g−1(wTx+b)
这样得到的模型称为“广义线性模型”,其中g(·)称为“联系函数”。
4、对数几率回归
通过“广义线性模型”,将线性回归应用到分类任务中
1、逻辑回归 LogisticRegression
y
=
1
1
+
e
−
(
w
T
x
+
b
)
y = \frac{1}{1+e^{-(\bold{w^Tx} + b)}}
y=1+e−(wTx+b)1
上式可变化为:
l
n
y
1
−
y
=
w
T
x
+
b
ln\frac{y}{1-y} = \bold{w^Tx} + b
ln1−yy=wTx+b
将 y 视为样本 x 作为正例的可能性,则1-y 是其反例的可能性,两者的比值 y 1 − y \frac{y}{1-y} 1−yy,称为“几率”,取对数后称为“对数几率”
后验概率估计 p ( y = 1 ∣ x ) p(y = 1 | x) p(y=1∣x), p ( y = 0 ∣ x ) p(y = 0 | x) p(y=0∣x)
上式重写为概率形式:
l
n
p
(
y
=
1
∣
x
)
p
(
y
=
0
∣
x
)
=
w
T
x
+
b
ln\frac{p(y = 1 | x)}{p(y = 0 | x)} = \bold{w^Tx} + b
lnp(y=0∣x)p(y=1∣x)=wTx+b
有:
p
(
y
=
1
∣
x
)
=
1
1
+
e
−
(
w
T
x
+
b
)
=
e
(
w
T
x
+
b
)
1
+
e
(
w
T
x
+
b
)
p(y = 1 | x) = \frac{1}{1+e^{-(\bold{w^Tx} + b)}} = \frac{e^{(\bold{w^Tx} + b)}}{1+e^{(\bold{w^Tx} + b)}}
p(y=1∣x)=1+e−(wTx+b)1=1+e(wTx+b)e(wTx+b)
p
(
y
=
0
∣
x
)
=
1
1
+
e
(
w
T
x
+
b
)
p(y = 0 | x) = \frac{1}{1+e^{(\bold{w^Tx} + b)}}
p(y=0∣x)=1+e(wTx+b)1
可通过“极大似然法”来估计
w
w
w和
b
b
b,
l
(
w
,
b
)
=
∑
i
=
1
m
l
n
p
(
y
i
∣
x
i
;
w
,
b
)
l(w,b) = \sum^m_{i=1}lnp(y_i| x_i;w,b)
l(w,b)=i=1∑mlnp(yi∣xi;w,b)
未完待续…