机器学习系列笔记(3)——有监督学习方法
声明:该笔记参考国科大《模式识别与机器学习》课程及讲义,侵删。这篇文章包含回归、分类的有监督学习方法。回归问题中标签是连续值,任务就是找到一个函数fff能够拟合给定的数据及其标签,损失函数是平方损失,优化的目标是使得期望风险最小化。一、线性回归部分线性回归中什么是线性?即fff是关于参数向量www的线性函数(将xxx视作常数,对其次数不做约束,可以是1次、2次、3次)线性回归的目标...
声明:该笔记参考国科大《模式识别与机器学习》课程及讲义,侵删。
这篇文章包含回归、分类的有监督学习方法。
回归问题中标签是连续值,任务就是找到一个函数 f f f能够拟合给定的数据及其标签,损失函数是平方损失,优化的目标是使得期望风险最小化。
一、线性回归部分
线性回归中什么是线性?即
f
f
f是关于参数向量
w
w
w的线性函数(将
x
x
x视作常数,对其次数不做约束,可以是1次、2次、3次)
线性回归的目标就是求上图所示的最优化问题,有两种方法,一个是梯度下降法,另一个是最小二乘法(基于均方误差最小化来进行模型求解的方法)。梯度下降就不再赘述了,最小二乘法推导过程如下:
令
J
(
θ
)
J(\theta)
J(θ)的梯度为0,即求得正规方程
X
T
X
θ
=
X
T
y
⃗
X^TX\theta=X^T\vec{y}
XTXθ=XTy,求逆即为上页slides中最优解的形式。这种方法的困难性在于当特征数很大,即
x
⃗
\vec{x}
x的维度很大时,求矩阵
X
T
X
X^TX
XTX的逆矩阵是很困难的,因此在实际的机器学习任务中多采用梯度下降法。
随机梯度下降使用随机选取的单一样本的损失梯度来代替批量梯度下降所有样本的损失求和的梯度。可以看到,批量梯度下降的收敛速度(准确地说是迭代次数)更快,因为它算的总是真的梯度的负方向,形象地说,将梯度下降比喻成一个人下山的过程,批量梯度下降选择的方向更陡,下去花费的时间比较长,而随机梯度下降总是选择一个相对好走的方向,更平缓,但可能走了比较多的弯路,每次走花的时间比较短,虽然不能保证每一次的迭代都能使得优化的值下降,但是总体趋势上能够收敛到最优。通常,SGD的计算次数是比较少的,在大数据量的情形下,通常选择随机梯度下降方法。
在实际问题中,在进行学习之前实际上会涉及到数据处理、特征提取以及特征选择(即很多特征之间存在关联)。在这页slides中,
ϕ
J
(
x
)
\phi_J(x)
ϕJ(x)实际上做的事情是将特征映射到一个更复杂的空间使其表达能力更强(表达学习,在深度学习中,是通过数据自动学习特征应该是什么;深度学习出现之前,是人为的找到这种变换函数使得变换后的特征具有更好地可分性或者可拟合)。在这里由于参数仍然是一维的,因此依然是线性函数。
回顾上一篇文章“统计学习基础”中谈到的三种模型:生成式模型(刻画联合概率,通过贝叶斯公式求 p ( y ∣ x ) p(y|x) p(y∣x)),判别式模型(直接求)以及判别函数( p ( y ∣ x ) p(y|x) p(y∣x)是关于 x x x的函数,判别函数模型即直接找到这样一个关于 x x x的函数)形式。上面的线性回归是判别函数方法。接下来从判别式模型的角度来看待线性回归,也成为线性回归的概率解释。
什么是参数估计?假设数据服从高斯分布,进行采样获取N个样本,高斯分布中参数未知,那么根据数据样本来估计高斯分布中未知的参数的过程就是参数估计。极大似然估计就是假设当前样本(观测到的数据)出现的联合概率(称为似然)最大,从而估计参数值。这页slides中
β
=
1
σ
2
\beta=\frac{1}{\sigma^2}
β=σ21,我们假设数据是独立同分布的,因此联合概率可以写成每一个样本的联合概率连乘的形式,由于没有观察到
x
x
x的任何信息,因此可以认为
x
x
x是均匀的,所以在算联合概率时,就是算联合条件概率,因此最终的似然函数即为:
∏
i
=
1
n
N
(
y
i
∣
w
⃗
T
x
i
,
β
−
1
)
\prod_{i=1}^nN(y^{i}|\vec w^Tx^i,\beta^{-1})
∏i=1nN(yi∣wTxi,β−1)。接下来就要看,最终的优化函数的形式与之前的线性回归的优化函数是否相同。
对上述似然求最大,也就意味着对下图红框中的函数求最小,它就是最小平方损失函数,与回归中的优化函数相同。
对于回归问题,考虑总体期望最小,则最优解
f
(
x
)
=
E
(
y
∣
x
)
f(x)=E(y|x)
f(x)=E(y∣x),所有机器学习模型都是对这个最优解的一种接近,并没有完美的情况,都做出了相应的假设。判别函数模型直接刻画
f
(
x
)
f(x)
f(x),比如在线性回归中,假设其形式为线性函数;在判别式模型中,要用概率的形式来刻画,要求
E
(
y
∣
x
)
E(y|x)
E(y∣x),怎么做呢?假设
p
(
y
∣
x
)
p(y|x)
p(y∣x)服从最简单的高斯分布,即可表示为
p
(
y
∣
x
)
∼
N
(
f
(
x
,
w
⃗
)
,
σ
2
)
p(y|x)\sim N(f(x,\vec w),\sigma^2)
p(y∣x)∼N(f(x,w),σ2),接下来用最大似然(假设
x
x
x是均匀的),可以得到与判别函数相同的优化形式。从原理上讲,只要判别函数
f
(
x
)
f(x)
f(x)及其损失函数假设合理,总能够找到对应的判别式模型与之对应(高斯函数为二次形式,这里假设平方损失)。
在判别式模型中,算的是条件概率,隐含了一个条件就是 x x x是均匀的,不考虑 x x x的影响,建模的是条件概率 p ( y ∣ x ) p(y|x) p(y∣x),但是如果不是平均的时候,需要对联合概率进行建模,此时考虑 x x x的影响。如果认为 x x x是不平均的,就是生成式模型。
我们通过
∑
i
=
1
m
(
y
(
i
)
−
θ
T
x
(
i
)
)
2
\sum_{i=1}^m(y^{(i)}-\theta^Tx^{(i)})^2
∑i=1m(y(i)−θTx(i))2从判别函数模型得到了判别式模型,这也对应了ERM模型,即经验风险最小化,但容易导致过拟合,就需要SRM,即结构风险最小化,下图中圈起来的是结构风险最小化的目标函数,前面的平方项等价于极大似然,整体等价于极大后验(
p
(
x
)
p(x)
p(x)为先验,
p
(
y
∣
x
)
p(y|x)
p(y∣x)为似然,
p
(
x
∣
y
)
p(x|y)
p(x∣y)为后验,所谓后验是指可以用贝叶斯公式展开得到)。在这里似然表示成
∏
i
=
1
n
N
(
y
i
∣
w
⃗
T
x
i
,
β
−
1
)
\prod_{i=1}^nN(y^{i}|\vec w^Tx^i,\beta^{-1})
∏i=1nN(yi∣wTxi,β−1),(在概率论中给先验的准则是共轭,为了使求和简单,因此先验应该与似然成共轭分布,即如果似然是高斯的,那么先验也应该是高斯的,目标是w),因此先验表示成
p
(
w
⃗
)
=
N
(
w
⃗
∣
0
,
λ
−
1
I
)
p(\vec w)=N(\vec w|0,\lambda^{-1}I)
p(w)=N(w∣0,λ−1I),这里向量
w
⃗
\vec w
w的每一个维度相互独立,且服从均值为0、方差为
1
λ
\frac{1}{\lambda}
λ1的高斯分布。
有了先验和似然,我们就可以根据贝叶斯公式计算后验(取对数,形式如下slides中所示),为什么可以极大后验呢?与极大似然类似,对于参数
w
⃗
\vec w
w,我们希望它的先验尽可能地大,且给定该参数得到
y
⃗
\vec y
y的似然也应尽可能地大,按照贝叶斯公式,其后验也应该尽量大,所以这里是极大后验概率。极大后验概率也就是对加了正则项的平方损失风险最小,等价于结构风险最小化。这里
p
(
y
⃗
)
p(\vec y)
p(y)与参数
w
⃗
\vec w
w的选取无关,是一个全概率,因此可以看作是一个常数。
二、分类问题
从判别函数、判别式模型以及生成式模型来考察分类问题。
对于判别函数模型在分类问题中的应用,典型的是感知机学习算法。(参考《统计学习方法》),下面给出的是感知机学习算法的原始形式,该算法使用误分类点到超平面的距离作为损失函数:
,目标就是使误分类点到超平面的距离为0,此时所有的点都被正确地分类,有了损失函数,就可以用随机梯度下降进行优化:
该算法实现比较简单,但是当数据不是线性可分的时候该算法无法收敛,没有办法找到一个概率分布与之对应。
从判别式算法的角度来看分类问题的典型方法是逻辑回归,在这里直接给出
p
(
y
∣
x
)
p(y|x)
p(y∣x)的形式,为sigmoid或logistic函数,然后使用极大似然来求解参数。为什么叫逻辑回归呢?因为它的根本思想来自于回归,只是使用sigmoid函数将其约束在0~1之间的概率形式将回归转化为分类。逻辑回归(二分类问题)可以进一步推广到softmax回归(多元分类问题)。
**从生成式模型来看,典型的应用为使用高斯判别分析求解二分类问题。**在回归问题中,我们需要建模的是
p
(
y
∣
x
)
p(y|x)
p(y∣x),在前面的逻辑回归中直接刻画该概率分布,而在生成模型中,使用贝叶斯公式,需要刻画
p
(
x
∣
y
)
p(x|y)
p(x∣y)以及
p
(
y
)
p(y)
p(y)来得到联合概率分布。
关于高斯判别分析:具体参考,1)CS229讲义2)高斯判别分析参数估计推导。
用上图可以形象地描述高斯判别分析的算法,图中的两个高斯分布就是每个类别针对各自数据点进行的拟合(这是一个等高线图),描述给定类别0,其数据特征的分布以及给定类别1,其数据特征的分布,越靠近中心点的分布就越密集。图中的直线就是给除了
p
(
y
=
1
∣
x
)
=
0.5
p(y=1|x)=0.5
p(y=1∣x)=0.5这条边界线。
GDA模型与LR模型比较:
- GDA模型具有更强的模型假设,但如果给定数据刚好服从这个模型假设则具有更优的表现,只能在 x x x是连续实数值的情况下使用,在文本处理中就不适用;
- LR模型具有更弱的模型假设,健壮性更好。在实践中,用的更多。
在垃圾邮件分类问题中,常常使用朴素贝叶斯方法,该方法同样是生成式模型,这里的
x
x
x是离散的值,如词袋模型,该方法做了一个朴素贝叶斯假设,给定y的情况下,x的每一个维度都是独立的(有条件的独立),所以就可以方便地刻画联合概率分布。
该模型的先验和似然都服从伯努利分布,因此总共有3个参数:
极大似然估计结果如下,该结果与频率派的思想相同,可以不用记,理解了就可以写出来。在实际使用中,朴素贝叶斯还需要进行拉普拉斯平滑操作。
更多推荐
所有评论(0)