您的位置:首页 > 其它

统计学习方法——模型与问题分类

2017-03-04 16:31 363 查看

0. 写在前面

在这一讲中,我们主要介绍一下模型的类别以及问题的类别,并对课后习题进行相应的分析。

1. 模型的类型

我们知道,统计学习主要包括监督学习、非监督学习、半监督学习和强化学习。那么在统计学习方法一书中主要涉及的是监督学习。而监督学习主要分为两类,一种是生成模型,一种是判别模型。

1. 生成模型

生成模型是由数据学习联合概率分布P(X,Y),然后求出条件概率分布P(Y|X)作为预测模型,其样子为:

P(Y|X)=P(X,Y)P(X)

这样的方法称为生成方法,因为模型表示了给定输入X产生输出Y的生成关系。典型的生成模型由:朴素贝叶斯发和隐马尔可夫模型。

生成模型所用的生成方法有以下几个有点

1. 生成方法可以还原出联合概率分布P(X,Y)

2. 生成方法的学习收敛速度更快。

3. 存在隐变量时,仍可以用生成方法学习。

2. 判别模型

判别模型则是由数据直接学习决策函数f(X)或者条件概率分布P(Y|X)作为预测的模型。判别方法关心的是对给定的输入X,应该预测什么样的输出Y。典型的判别模型包括:K近邻、感知机、决策树、逻辑斯蒂回归模型、最大熵模型、支持向量机、提升方法和条件随机场等。

相比较生成模型所用的生成方法,判别模型的判别方法也有其自身的特点:

1. 判别方法直接学习的是条件概率P(Y|X)或者决策函数f(X).

2. 直接面对预测,学习准确率更高

3. 可以简化学习问题。

2. 问题类型

监督学习的方法有生成方法和判别方法,但是问题的类型有三种:分类问题、标注问题、回归问题。

1. 分类问题

分类问题是一个非常常见的问题。在监督学习中,当输出变量Y取有限个离散值时,预测问题便成为分类问题。也就是给出一个分类函数f(x)其输出值为离散的,就成为分类问题了。常见的分类问题为二分类问题,也就是非此即彼的结果。

而评价分类器性能的指标一般是分类准确率。这个其实不用解释的,准确率就是正确率,也就是输出结果和实际值相同的百分比。

而对于二分类问题,可以用精确率、召回率、和F1值综合评价,通常称为PRF值。

假设:

TP——将正类预测为正类数

FN——将正类预测为负类数

FP——将负类预测为正类数

TN——将负类预测为负类数

那么准确率应当是:

Acc=TP+TNTP+FN+FP+TN

精确率的定义为:

P=TPTP+FP

召回率的定义为:

R=TPTP+FN

F1值的定义为:

F1=2TP2TP+FP+FN

其多分类问题也可化为二分类从而进行PRF评价,预测正确的为正类,预测错误的为负类。实际上很多统计学习方法都是分类问题,也可以认为大部分的问题都是分类问题。

2. 标注问题

标注问题是分类问题的一个更广泛的推广。它可以退化为分类问题,不过它不同于分类问题的一个重要特点是:它的标注问题的输入时一个观测序列,输出是一个标记序列或状态序列。也就是说它不仅仅关注的每一个输入的分类结果,它更关注的是一个序列化的输入,给出一个最可能的序列化输出。这就是序列化标注问题。这种问题还是比较少的,通常使用隐马尔可夫模型或者条件随机场来进行学习。

其评价标准与分类问题相同,均可采用PRF值来进行预测。

3. 回归问题

回归问题我们不在机器学习的时候就已经遇到了,不过我们那时候学习的都还比较基础,就是根据当前的数据拟合出最符合当前走势的曲线,以此能够预测出接下来的过程中数据的走向如何。

按照输入变量的个数,我们可以分为一元回归和多元回归,按照输入变量和输出变量之间的关系类型,可以分为线性回归和非线性回归。我们之前接触到的大部分是线性回归。

回归学习的最常用的损失函数就是平方损失函数,通常使用最小二乘法求解。而常见的问题比如股票的走势问题,这个非常形象直观的展示了需要回归的内容,也就是预测出在接下来的时间里,股票的走势如何。

3. 课后习题解答

这个课后习题只有两题:

1. 说明伯努利模型的极大似然估计以及贝叶斯估计中的统计学习方法三要素。

2. 通过经验风险最小化推到极大似然估计,证明模型是条件概率分布,当损失函数是对数函数时,经验风险最小化等价于极大似然估计。

解答:

1.对于第一题,我们需要读清楚题,它要问的是伯努利模型的吉萨似然估计和贝叶斯估计的三要素。

那么首先我们来回顾一下统计学习方法的三要素:模型、策略和算法。

对于模型来讲,既然都是伯努利模型了,模型自然不用说了,肯定是伯努利模型。

那么主要是策略和算法的不同。在之前我们说过,极大似然估计的策略是经验风险最小化。但是我们不能这么回答,因为我们需要证明是经验风险最小化,其实这就是第二题的答案。

对于极大似然估计,也就是求这样的一个式子:

hMLE=argmaxP(x|μ)μ∈(0,1)

对于伯努利模型来说:

P(xi|μ)=μxi(1−μ)1−xi

这样子,我们就是求μ的取值。

那么怎么求呢,对于似然估计,也就是求得P(xi|μ)最大的那个μ的值,这点可以理解为最终取使得P(x_i|μ)最大的μ,这点与贝叶斯估计稍有不同。

那么第三个因素——算法是什么呢?

这就是说极大似然估计怎么求解,常规方法为:

1. 写出似然函数

2. 对似然函数取对数

3. 求导数

4. 解似然方程

通过以上4步,就差不多可以取得其极大值μ了。

例如我们这里的伯努利模型:

1. 找出似然函数

P(X|μ)=∏i=1nP(xi|μ)

P(X|μ)=∏i=1nμxi(1−μ)1−xi

2.对似然函数取对数

log[P(X|μ)]=log∑i=1nμxi(1−μ)1−xi

log[P(X|μ)]=∑i=1n[xilogμ+(1−xi)log(1−μ)]

3. 求导数

∂logP(X|μ)∂μ=1μ∑i=1nxi−11−μ∑i=1n(1−xi)

4. 令偏导数为0

μ估计=1n∑i=1nxi

这就是最终结果了,分类这么大劲,其实我们的日常经验就是这样,例如如果我们投了10次硬币,出现了8次正面,那么我们肯定认为出现正面的概率应该是0.8。

在解题的过程中,我们就看到了,当模型是条件概率分布,损失函数是对数损失函数时,极大似然估计就是风险最小化。

我们来看一下经验风险最小化的样子:

Rsrm(f)=1n∑i=1nL(yi,f(xi))

是不是是一个样子。

同样的贝叶斯估计也是这样的步骤,首先其模型还是伯努利模型,其策略为结构风险最小化,其算法当然是全概率公式了,然后转换为最大后验概率,当先验概率一致时,最大后验概率等于极大似然估计。这点我们之前的机器学习讲过,不过为了防止又忘记了,现在重新再来复习一遍:

hMAP=argmaxP(h|D)

利用贝叶斯全概率公式可得:

hMAP=argmaxP(D|h)P(h)P(D)

对于同一个训练集来讲P(D)是相同的,因此可以去掉:

hMAP=argmaxP(D|h)P(h)

当各个模型的先验概率一样时P(h)就可以去掉,那么就会变为:

hMAP=argmaxP(D|h)

这形式是不是和极大似然估计一致?

4. 小结

那么第一章的内容,我们就都讲完了,下面我们将会进入到正轨,对每一类具体的机器学习方法来进行学习,下期见。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息