1 基本形式
线性模型(linear model)试图学得一个通过属性的线性组合来进行预测的函数, 即 f ( x ) = w 1 x 1 + w 2 x 2 + … + w d x d + b f(\boldsymbol{x})=w_{1} x_{1}+w_{2} x_{2}+\ldots+w_{d} x_{d}+b f(x)=w1x1+w2x2+…+wdxd+b,一般用向量形式写成 f ( x ) = w T x + b f(\boldsymbol{x})=\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b f(x)=wTx+b。
2 线性回归
给定数据集D.线性回归试图学得一个线性模型以尽可能准确地预测实值输出标记。
对离散属性,若属性值间存在“序”(order)关系,可通过连续化将其转化为连续值,线性回归试图学得
f
(
x
i
)
=
w
x
i
+
b
,
使得
f
(
x
i
)
≃
y
i
f(x_i)=wx_i+b,使得f(x_i)\simeq y_i
f(xi)=wxi+b,使得f(xi)≃yi
通过试图让均方误差最小化,来确认w和b,即
(
w
∗
,
b
∗
)
=
arg
min
(
w
,
b
)
∑
i
=
1
m
(
f
(
x
i
)
−
y
i
)
2
=
arg
min
(
w
,
b
)
∑
i
=
1
m
(
y
i
−
w
x
i
−
b
)
2
.
\begin{aligned}\left(w^*, b^*\right) & =\underset{(w, b)}{\arg \min } \sum_{i=1}^m\left(f\left(x_i\right)-y_i\right)^2 \\ & =\underset{(w, b)}{\arg \min } \sum_{i=1}^m\left(y_i-w x_i-b\right)^2 .\end{aligned}
(w∗,b∗)=(w,b)argmini=1∑m(f(xi)−yi)2=(w,b)argmini=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\left(y_i-w x_i-b\right)^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
,
b
)
∂
w
=
2
(
w
∑
i
=
1
m
x
i
2
−
∑
i
=
1
m
(
y
i
−
b
)
x
i
)
∂
E
(
w
,
b
)
∂
b
=
2
(
m
b
−
∑
i
=
1
m
(
y
i
−
w
x
i
)
)
\begin{aligned} & \frac{\partial E_{(w, b)}}{\partial w}=2\left(w \sum_{i=1}^m x_i^2-\sum_{i=1}^m\left(y_i-b\right) x_i\right) \\ & \frac{\partial E_{(w, b)}}{\partial b}=2\left(m b-\sum_{i=1}^m\left(y_i-w x_i\right)\right) \end{aligned}
∂w∂E(w,b)=2(wi=1∑mxi2−i=1∑m(yi−b)xi)∂b∂E(w,b)=2(mb−i=1∑m(yi−wxi))
多元线性回归模型为:
f
(
x
~
i
)
=
x
~
i
T
(
X
T
X
)
−
1
X
T
y
f(\tilde x_i)=\tilde x_i^T(X^TX)^{-1}X^Ty
f(x~i)=x~iT(XTX)−1XTy
当不是满秩矩阵时,可以引入正则化。
3 对数几率回归
适用于分类任务。寻找一个单调可微函数将分类任务的真实标记y与线性回归模型的预测值联系起来。
当面对二分类任务时候,将线性回归模型参数的预测值(实值)转化为0/1值。最理想的是单位阶跃函数。
可通过 “极大似然法” (maximum likelihood method)来估计
w
\boldsymbol{w}
w 和
b
b
b. 给定数据集
{
(
x
i
,
y
i
)
}
i
=
1
m
\left\{\left(\boldsymbol{x}_i, y_i\right)\right\}_{i=1}^m
{(xi,yi)}i=1m, 对率回归模型最大化 “对数似然”
ℓ
(
w
,
b
)
=
∑
i
=
1
m
ln
p
(
y
i
∣
x
i
;
w
,
b
)
,
\ell(\boldsymbol{w}, b)=\sum_{i=1}^m \ln p\left(y_i \mid \boldsymbol{x}_i ; \boldsymbol{w}, b\right),
ℓ(w,b)=i=1∑mlnp(yi∣xi;w,b),
即令每个样本属于其真实标记的概率越大越好. 为便于讨论, 令
β
=
(
w
;
b
)
\boldsymbol{\beta}=(\boldsymbol{w} ; b)
β=(w;b),
x
^
=
(
x
;
1
)
\hat{\boldsymbol{x}}=(\boldsymbol{x} ; 1)
x^=(x;1), 则
w
T
x
+
b
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b
wTx+b 可简写为
β
T
x
^
\boldsymbol{\beta}^{\mathrm{T}} \hat{\boldsymbol{x}}
βTx^. 再令
p
1
(
x
^
;
β
)
=
p
(
y
=
1
∣
x
^
;
β
)
p_1(\hat{\boldsymbol{x}} ; \boldsymbol{\beta})=p(y=1 \mid \hat{\boldsymbol{x}} ; \boldsymbol{\beta})
p1(x^;β)=p(y=1∣x^;β),
p
0
(
x
^
;
β
)
=
p
(
y
=
0
∣
x
^
;
β
)
=
1
−
p
1
(
x
^
;
β
)
p_0(\hat{\boldsymbol{x}} ; \boldsymbol{\beta})=p(y=0 \mid \hat{\boldsymbol{x}} ; \boldsymbol{\beta})=1-p_1(\hat{\boldsymbol{x}} ; \boldsymbol{\beta})
p0(x^;β)=p(y=0∣x^;β)=1−p1(x^;β), 则式 中的似然项可重写为
p
(
y
i
∣
x
i
;
w
,
b
)
=
y
i
p
1
(
x
^
i
;
β
)
+
(
1
−
y
i
)
p
0
(
x
^
i
;
β
)
.
p\left(y_i \mid \boldsymbol{x}_i ; \boldsymbol{w}, b\right)=y_i p_1\left(\hat{\boldsymbol{x}}_i ; \boldsymbol{\beta}\right)+\left(1-y_i\right) p_0\left(\hat{\boldsymbol{x}}_i ; \boldsymbol{\beta}\right) .
p(yi∣xi;w,b)=yip1(x^i;β)+(1−yi)p0(x^i;β).
将式代入, 并根据式和可知, 最大化式等价于最小化
ℓ
(
β
)
=
∑
i
=
1
m
(
−
y
i
β
T
x
^
i
+
ln
(
1
+
e
β
T
x
^
i
)
)
.
\ell(\boldsymbol{\beta})=\sum_{i=1}^m\left(-y_i \boldsymbol{\beta}^{\mathrm{T}} \hat{\boldsymbol{x}}_i+\ln \left(1+e^{\boldsymbol{\beta}^{\mathrm{T}} \hat{x}_i}\right)\right) .
ℓ(β)=i=1∑m(−yiβTx^i+ln(1+eβTx^i)).
4 线性判别分析
思想:给定训练例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近,异样样例的投影点尽可能远离。在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别。
给定数据集
D
D
D, 令
X
i
、
μ
i
、
Σ
i
X_i 、 \boldsymbol{\mu}_i 、 \boldsymbol{\Sigma}_i
Xi、μi、Σi 分别表示第
i
i
i 类示例的集合、均值向量、协方差矩阵. 若将数据投影到直线
w
\boldsymbol{w}
w 上,则两类样本的中心在直线上的投影分别为
w
T
μ
0
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\mu}_0
wTμ0 和
w
T
μ
1
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\mu}_1
wTμ1; 若将所有样本点都投影到直线上, 则两类样本的协方差分别为
w
T
Σ
0
w
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_0 \boldsymbol{w}
wTΣ0w 和
w
T
Σ
1
w
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_1 \boldsymbol{w}
wTΣ1w. 由于直线是一维空间, 因此
w
T
μ
0
、
w
T
μ
1
、
w
T
Σ
0
w
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\mu}_0 、 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{\mu}_1 、 \boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_0 \boldsymbol{w}
wTμ0、wTμ1、wTΣ0w 和
w
T
Σ
1
w
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_1 \boldsymbol{w}
wTΣ1w 均为实数.
欲使同类样例的投影点尽可能接近,可以让同类样例投影点的协方差尽可能小, 即
w
T
Σ
0
w
+
w
T
Σ
1
w
\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_0 \boldsymbol{w}+\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_1 \boldsymbol{w}
wTΣ0w+wTΣ1w 尽可能小; 而欲使异类样例的投影点尽可能远离,可以让类中心之间的距离尽可能大. 同时考虑二者, 则可得到欲最大化的目标
J
=
∥
w
T
μ
0
−
w
T
μ
1
∥
2
2
w
T
Σ
0
w
+
w
T
Σ
1
w
=
w
T
(
μ
0
−
μ
1
)
(
μ
0
−
μ
1
)
T
w
w
T
(
Σ
0
+
Σ
1
)
w
\begin{aligned} J & =\frac{\left\|\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\mu}_0-\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\mu}_1\right\|_2^2}{\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_0 \boldsymbol{w}+\boldsymbol{w}^{\mathrm{T}} \boldsymbol{\Sigma}_1 \boldsymbol{w}} \\ & =\frac{\boldsymbol{w}^{\mathrm{T}}\left(\boldsymbol{\mu}_0-\boldsymbol{\mu}_1\right)\left(\boldsymbol{\mu}_0-\boldsymbol{\mu}_1\right)^{\mathrm{T}} \boldsymbol{w}}{\boldsymbol{w}^{\mathrm{T}}\left(\boldsymbol{\Sigma}_0+\boldsymbol{\Sigma}_1\right) \boldsymbol{w}} \end{aligned}
J=wTΣ0w+wTΣ1w
wTμ0−wTμ1
22=wT(Σ0+Σ1)wwT(μ0−μ1)(μ0−μ1)Tw
类内散度矩阵:
S
w
=
Σ
0
+
Σ
1
=
∑
x
∈
X
0
(
x
−
μ
0
)
(
x
−
μ
0
)
T
+
∑
x
∈
X
1
(
x
−
μ
1
)
(
x
−
μ
1
)
T
\begin{aligned} \mathbf{S}_w & =\boldsymbol{\Sigma}_0+\boldsymbol{\Sigma}_1 \\ & =\sum_{\boldsymbol{x} \in X_0}\left(\boldsymbol{x}-\boldsymbol{\mu}_0\right)\left(\boldsymbol{x}-\boldsymbol{\mu}_0\right)^{\mathrm{T}}+\sum_{\boldsymbol{x} \in X_1}\left(\boldsymbol{x}-\boldsymbol{\mu}_1\right)\left(\boldsymbol{x}-\boldsymbol{\mu}_1\right)^{\mathrm{T}} \end{aligned}
Sw=Σ0+Σ1=x∈X0∑(x−μ0)(x−μ0)T+x∈X1∑(x−μ1)(x−μ1)T
类间散度矩阵:
S
b
=
(
μ
0
−
μ
1
)
(
μ
0
−
μ
1
)
T
\mathbf{S}_b=\left(\boldsymbol{\mu}_0-\boldsymbol{\mu}_1\right)\left(\boldsymbol{\mu}_0-\boldsymbol{\mu}_1\right)^{\mathrm{T}}
Sb=(μ0−μ1)(μ0−μ1)T
5 多分类学习
多分类学习的基本思路是拆解法,将多分类任务拆解为若干个二分类任务求解。先对问题进行拆分,然后为拆出的每个二分类任务求解。在测试时,对这些分类器的预测结果进行集成来获得最终的多分类结果。
最经典的拆分策略有:一对一(OVO),一对其余(OVR),多对多(MVM)。
OvO 将这 N个类别两两配对,从而产生 N(N-1)/2个二分类任务。
OvR 则是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练 N个分类器。
OVO的存储开销和测试时间开销通常比OVR更大,但在训练时OvR 的每个分类器均使用全部训练样例,而Ov0的每个分类器仅用到两个类的样例,因此,在类别很多时,OvO的训练时间开销通常比 OvR 更小.至于预测性能,则取决于具体的数据分布,在多数情形下两者差不多。
MVM 是每次将若干个类作为正类,若干个其他类作为反类。
- 纠错输出码(一种MVM技术)步骤
1.编码:对N个类别做M次划分,每次划分将一部分类别划为正类,一部分划为反类,从而形成一个二分类训练集;这样一共产生 M个训练集,可训练出M个分类器
2.解码:M个分类器分别对测试样本进行预测,这些预测标记组成一个编码.将这个预测编码与每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果.
6 类别不平衡问题
类别不平衡就是指分类任务中不同类别的训练样例数目差别很大的情况。
基本策略——再缩放
现有技术大体上有三类做法:第一类是直接对训练集里的反类样例进行“欠采样”,即去除些反例使得正、反例数目接近,然后再进行学习;第二类是对训练集里的正类样例进行“过采样”,即增加一些正例使得正、反例数目接近,然后再进行学习;第三类则是直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,嵌入到其决策过程中,称为“阈值移动"。