《统计学习方法》的一些点

来源:互联网 发布:网络被骗多少钱立案 编辑:程序博客网 时间:2024/06/07 14:01

统计学习方法的一些点

一、统计学习方法概论

统计学习方法的三要素:模型、策略、算法

模型

模型就是所要学习的条件概率分布或决策函数。其中决策函数标识的模型为非概率模型,由条件概率表示的模型称为概率模型。

策略

损失函数L(Y,f(x))

0-1损失函数

平方损失函数

绝对损失函数

对数损失函数

风险函数或者期望损失 :

Rexp(f)=Ep[L(Y,f(x))]=xyL(y,f(x))P(x,y)dxdy

这是理论上 f(x)关于联合分布函数P(x,y)的平均意义下的损失,注意,这是理论上的,因为已经已知了P(x,y)

但是,通常我们是不知道P(x,y)的,我们只知道训练集。因此,利用训练集:

Remp(f)=1Ni=1NL(yi,f(xi))

这成为经验风险或者经验损失。

我们通常可以用经验损失来估计期望损失,但是通常需要对经验损失进行矫正。通常的两种策略:经验风险最小和结构风险最小。

结构风险最小即:minfFRemp

但是由于过拟合现象的存在,会加上惩罚项:

Rsrm(f)=Remp+λJ(f)

其中J(f)定义为模型的复杂度。求解最优模型,就是求解该模型的最优化问题。

算法

其实就是求解上面策略

正则化与交叉验证

正则化即J(f)的一种,一般是模型复杂度的单调递增函数,模型越复杂,正则化值越大。例如,正则化项是模型参数向量的范数。

泛化能力

泛化误差:

Rexp(f̂ )=Ep[L(y,f̂ (x))]=xyL(y,f̂ (x))P(x,y)dxdy1

其中f̂ 是学习到的模型。

泛化误差上界:

就是1式所能达到的上界。f̂ 通过训练数据得到后,在期望风险中获得的值。

通常 情况下,他与样本容量成反比,同假设空间容量里的函数个数成正比。

生成模型与判别模型

在 这里 ,有对这两个模型的详细的理解。简而言之就是:

生成模型会先生成p(x,y)的分布,然后根据此分布去计算分类;?? 还是p(x)

而判别模型去直接计算分类,通过条件概率模型。

分类问题

2F1=1P+1R

二、感知机

模型

选择一个超平面,将正样本和负样本分开。(如果线性可分)

策略

策略就是定下损失函数的策略,一个自然选择是判断误分类点的个数,但是该函数不是连续可导的。

因此,感知机的策略是:使所有误分类点到超平面的距离最短,注意,这里是只有误分类点

到超平面距离为:

1||w|||wx0+b|

对于误分类点,有 yi(wxi+b)>0

于是损失函数定义为:

L(w,b)=xjMyi(wxi+b)2

算法

我们要求值(2)式,可以对2求关于 w, b的偏导,可以发现其值是常数。也就是说两者形成的是一个平面,整个的面上求最小值是不存在的。我们可以用SGD的方法逐步的来求,因为我们的目标是在所有样本点上求解。

求解过程中,只对误分类点进行计算。计算调整w后,重新计算所有的点,找所有的误分类点,直到所有的点都被正确分类。

这是在可线性分类的情况下。

如果线性可分,可证,总是收敛的。

gram 矩阵 :实例间两两相乘。

三 K近邻法

模型

输入一个点,找到与该点最近的K个点,判断K个点的分类,找出最多的分类,则为该点的分类。

策略

通过模型的介绍,可以看到,主要的策略会比较简单,但是跟几个有关系:

距离的测度,K的确定。

距离包括Lp距离,欧式距离(p=2),曼哈顿距离(p=1)等。

K的确定通常通过选择小的K值,然后交叉验证。

算法

kd树

四、朴素贝叶斯法

模型

贝叶斯方法是一种生成模型,也就是要先求出p(x,y)的。

只不过这个p(x,y)也是通过条件概率以及p(x)的值。

贝叶斯估计

在分子和分母中加入λ

五、决策树

模型

If-then 的规则

算法

决策树算法包含特征选择、决策树的生成与决策树的剪枝。

决策树常用的算法有ID3,C4.5,CART

ID3:利用信息增益来选择特征并划分。

信息增益:g(D,A)=H(D)H(D|A)

其中, D为信息训练集,H(D)=ni=1pilogpi ,p(i)为D中最终要划分的类别中,各个类别中个数的占比。

H(D)=k=1K|Ck||D|log2|Ck||D|

H(D|A)=i=1N|Di||D|H(Di)

其中D是训练数据集, Ck 是D中要划分的各个类别;

而A是我们选择的特征,Di是是根据A不同的特征值所划分出来的不同的数据集合。

在求经验熵时,是针对最终要划分的类别进行的求解; 而条件熵是在针对各个特征值里面的数据集,每个数据集各自的熵,然后按照比例求和所得。

C4.5:利用信息增益比来求解

gR(D,A)=g(D,A)HA(D)

其中,HA(D)是针对特征值A的熵:

HA(D)=i=1n|Di||D|log2|Di||D|

n是A的特征的个数

决策树的剪枝

首先定义决策树的损失函数:

Cα(T)=t=1|T|NtHt(T)+α|T|

其中,树为T, |T|为树的叶节点的个数,其中有Nt个样本点,其中t是树的某个叶节点,它有Nt个样本点,其中k类的样本点有Ntk

其中,Ht(T)=kNtkNtlogNtkNt

也就是说Ht(T)是每个叶对最终结果的经验熵,损失函数为所有叶节点熵的和+正则项,其中正则项正比树的叶节点的个数。

剪枝算法:

1、计算所有节点的经验熵

2、从叶节点开始往上缩,到父节点;比较回缩前后树的损失函数,如果缩之后损失函数变小了,就把父节点作为叶节点。

CART算法

CART决策树是个二叉树,按照是或者否分为两部分。可以用于回归或者分类。

主要分为两部分:生成,剪枝

回归树生成:

回归树模型可以表示为:

f(x)=m=1McmI(x)

对输入空间进行划分,选择第j个变量,以及它取的值:

For j:

​ for s:

​ 左侧输出c1, 右侧输出c2

利用平方误差求极小值

分类树生成:

分类树用基尼指数来选择最优特征

Gini(p)=k=1Kpk(1pk)=1k=1Kp2k

样本集合D根据特征A的可能值a划分为D1,D2两部分,则在特征A的条件下,D的基尼指数定义为:

Gini(D,A)=|D1||D|Gini(D1)+|D2||D|Gini(D2)

Gini(D)表示D的不确定性,Gini(D, A)表示经A=a分割后D的不确定性。

CART剪枝

求出在α范围内的最优子树,利用交叉验证。

七、支持向量机

八、隐马尔科夫

0 0