基本形式
线性模型(linear model)试图学得一个通过属性的线性组合来进行预测的函数,即
f
(
x
)
=
w
1
x
1
+
w
2
x
2
+
.
.
.
+
w
d
x
d
+
b
f(x)=w_{1}x_{1} + w_{2}x_{2} + ... + w_{d}x_{d} + b
f(x)=w1x1+w2x2+...+wdxd+b
一般用向量形式写成
f
(
x
)
=
w
T
x
+
b
f(x)=w^\mathrm{T}x + b
f(x)=wTx+b
线性模型形式简单、易于建模,但却蕴涵着机器学习中一些重要的基本思想.许多功能更为强大的非线性模型(nonlinear model)可在线性模型的基础上通过引入层级结构或高维映射而得.
线性回归
均方误差(2.2) 是回归任务中最常用的性能度蜇,因此我们可试图让均方误差最小化
(
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
均方误差有非常好的几何意义,它对应了常用的欧儿里得距离或简称“欧氏距离”(Euclidean distance) .基于均方误差最小化来进行模型求解的方法称为“最小二乘法”(least square method) .在线性回归中,最小^乘法就是试图找到一条直线使所有样本到直线上的欧氏距离之和最小.
求解
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{array}{l}{\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{array}
∂w∂E(w,b)=2(w∑i=1mxi2−∑i=1m(yi−b)xi)∂b∂E(w,b)=2(mb−∑i=1m(yi−wxi))
然后令上式为零可得到
w
w
w和
b
b
b的最优解的闭式(closed-form)解
w
=
∑
i
=
1
m
y
i
(
x
i
−
x
ˉ
)
∑
i
=
1
m
x
i
2
−
1
m
(
∑
i
=
1
m
x
i
)
2
w=\frac{\sum_{i=1}^{m} y_{i}\left(x_{i}-\bar{x}\right)}{\sum_{i=1}^{m} x_{i}^{2}-\frac{1}{m}\left(\sum_{i=1}^{m} x_{i}\right)^{2}}
w=∑i=1mxi2−m1(∑i=1mxi)2∑i=1myi(xi−xˉ)
b
=
1
m
∑
i
=
1
m
(
y
i
−
w
x
i
)
b=\frac{1}{m} \sum_{i=1}^{m}\left(y_{i}-w x_{i}\right)
b=m1i=1∑m(yi−wxi)
然而,现实任务中
X
T
X
X^\mathrm{T}X
XTX 往往不是满秩矩阵例如在许多任务中我们会遇到大量的变量,其数目甚至超过样例数,导致
X
X
X的列数多于行数,
X
T
X
X^\mathrm{T}X
XTX 显然不满秩.此时可解出多个
a
^
\hat{a}
a^,它们都能使均方误差最小化.选择哪一个解作为输出,将由学习算法的归纳偏好决定,常见的做法是引入正则化(regularization) 项.
ln
y
=
w
T
x
+
b
\ln y=\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}+b
lny=wTx+b对数线性回归”(log-linear regression),它实际上是在试图让
e
w
T
x
+
b
e^{w^\mathrm{T}x + b}
ewTx+b逼近
y
y
y.式( 3.14) 在形式上仍是线性回归,但实质上已是在求取输入空间到输出空间的非线性函数映射,如图3.1 所示.这里的对数函数起到了将线性回归模型的预测值与真实标记联系起来的作用.
对数几率回归
若要做的是分类任务只需找一个单调可微函数将分类任务的真实标记y 与线性回归模型的预测值联系起来.
对数几率函数(logistic function) 正是这样一个常用的替代函数:
y
=
1
1
+
e
−
z
y=\frac{1}{1+e^{-z}}
y=1+e−z1
后主要为推导,暂略
线性判别分析
线性判别分析(Linear Discriminant Analysis, 简称LDA) 是一种经典的线性学习方法,在二分类问题上因为最早由[Fisher, 1936] 提出, 亦称“Fisher判别分析”.
LDA 的思想非常朴素.给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离; 在对新样本进行分类时,将其投影到同样的这条直线上,冉根据投影点的位置来确定新样本的类别图3.3 给出了一个二维示意图
LDA 的二维示意图. “+”、“-“分别代表正例和反例,椭圆表示数据簇的外轮廓,虚线表示投影,红色实心圆和实心三角形分别表示两类样本投影后的中心点
若将 W W W视为一个投影矩阵,则多分类LDA 将样本投影到N-1维空间,N-1通常远小于数据原有的属性数.于是,可通过这个投影来减小样本点的维数,且投影过程中使用了类别信息,因此LDA也常被视为一种经典的监督降维技术.
多分类学习
现实中常遇到多分类学习任务有些二分类学习方法可直接推广到多分类,但在更多情形下,我们是基千一些基本策略,利用二分类学习器来解决多分类问题.
最经典的拆分策略有三种:“一对一”(One vs. One, 简称OvO) 、“一对其余”(One vs. Rest, 简称OvR) 和“多对多”(Many vs. Many, 简称MvM).
OvO将这N 个类别两两配对,从而产生N(N — 1)/2 个二分类任务.
OvR 则是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N 个分类器.
MvM 是每次将若干个类作为正类,若干个其他类作为反类.显然, OvO 和OvR 是MvM 的特例.
通常我们并不斋获得理论最优编码,因为非最优编码在实践中往往己能产生足够好的分类器另一方面,并不是编码的理论性质越好,分类性能就越好,因为机器学习问题涉及很多因素,例如将多个类拆解为两个“类别子集",不同拆解方式所形成的两个类别子集的区分难度往往不同,即其导致的二分类问题的难度不同;千是,一个理论纠错性质很好、但导致的二分类问题较难的编码,与另一个理论纠错性质差一些、但导致的二分类问题较简单的编码,最终产生的模型性能孰强孰弱很难说.
类别不平衡问题
类别不平衡(class-imbalance) 就是指分类任务中不同类别的训练样例数目差别很大的情况.不失一般性,本节假定正类样例较少,反类样例较多.在现实的分类学习任务中,找们经常会遇到类别不平衡,例如在通过拆分法解决多分类问题时,即使原始问题中不同类别的训练样例数目相当,在使用OvR 、MvM策略后产生的二分类任务仍可能出现类别不平衡现象,因此有必要了解类别不平衡性处理的基本方法.
y ′ 1 − y ′ = y 1 − y × m − m + \frac{y^{\prime}}{1-y^{\prime}}=\frac{y}{1-y} \times \frac{m^{-}}{m^{+}} 1−y′y′=1−yy×m+m−这就是类别不平衡学习的一个基本策略一“再缩放”(rescaling).
再缩放的思想虽简单,但实际操作却并不平凡,主要因为“训练集是真实样本总体的无偏采样”这个假设往往并不成立,也就是说我们未必能有效地基千训练集观测几率来推断出真实几率.
现有技术大体上有三类做法:
- 第一类是直接对训练集里的反类样例进行“欠采样”(undersampling) ,即去除一些反例使得正、反例数目接近,然后再进行学习;
- 第二类是对训练集里的正类样例进行“过采样”(oversampling) ,即增加一些正例使得正、反例数目接近,然后再进行学习;
- 第三类则是直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,将上式嵌入到其决策过程中,称为“阈值移动”(threshold-moving).
欠采样法的时间开销通常远小千过采样法,因为前者丢弃了很多反例,使得分类器训练集远小千初始训练集,而过采样法增加了很多正例,其训练集大于初始训练集需注意的是,过采样法不能简单地对初始正例样本进行重复采样,否则会招致严重的过拟合,