sunrise

每天不断学习,才能不断提升自己。

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  64 随笔 :: 0 文章 :: 92 评论 :: 0 Trackbacks

机器学习是研究人类的学习活动,获取知识和技能的理论和方法,改善系统性能的学科。

1.归纳学习:从大量的经验数据中归纳抽取出一般判定规则和模式,是从特殊情况推导出一般规则的学习方法。归纳学习可划分为单概念学习和多概念学习。概念指用某种描述语言表的谓词,当应用于负实例时为假。对于单概念的学习,学习的目的是从概念空间中寻找某个与实例空间一致的概念,对于多概念的学习任务,是从概念空间中寻找若干概念描述,对于每一个概念的描述,实例空间中均有相应的空间与之对应。

2.变型空间学习法:在变型空间方法中,根据概念之间的特殊性和一般性,可将变型空间表示成偏序集的形式,变型空间方法以包含整个概念的规则空间为初始的假设规则集合H,它是迄今为止所得到的所有训练实例相一致的概念集合。根据示教例子中的信息,对H进行范化和特殊化处理,逐步缩小集合H,最后使H收敛为只含有要求的规则。

候选项删除算法http://hi.baidu.com/lvzhnan/blog/item/79edfc12957faa24dd5401f5.html

3.决策树的归纳学习方法:

决策树的构造算法CLS

1) 初始化参数C={E}E包括所有的例子,为根;

2) 如果C中的任一元素e同属于同一个决策类则创建一个叶子节点YES终止;否则依启发式标准,选择特征Fi={V1, V2, V3,……, Vn}并创建判定节点,划分C为互不相交的N个集合C1C2C3,……,Cn

3) 对任一个Ci递归。

基本的决策树学习算法:

基本的决策树学习算法ID3是通过自顶向下构造决策树来进行学习。构造过程从一个“哪一个属性将在树的根节点被测试?”这个问题开始的。为了回答这个问题,使用统计测试来确定每一个实例属性单独分类训练样例的能力,分类能力最好的熟悉被选作树的根节点的测试。然后为根节点的属性每个可能的值产生一个分支,并把训练样例排列到适当的分支之下。然后重复整个过程,用每个分支节点的关联训练样例来选取在该点被测试的最佳属性。这形成了对合格决策树的贪婪搜索。

基本的ID3算法为:

1) 随机选择C的一个子集W (窗口)

2) 调用CLS生成W的分类树DT(强调的启发式标准在后)

3) 顺序扫描C搜集DT的意外(即由DT无法确定的例子)

4) 组合W与已发现的意外,形成新的W

5) 重复2)4),直到无例外为止。

启发式标准:

只跟本身与其子树有关,采取信息理论用熵来量度。

是选择事件时选择自由度的量度,其计算方法为:P=freq(Cj,S)/|S|INFO(S)=-SUM(P*LOG(P))SUM()函数是求j1n的和。Gain(X)=Info(X)-Infox(X)Infox(X)=SUM( (|Ti|/|T|)*Info(X)

为保证生成的决策树最小,ID3算法在生成子树时,选取使生成的子树的熵(Gain(S))最小的特征来生成子树。

ID3算法对数据的要求:

1) 所有属性必须为离散量;

2) 所有的训练例的所有属性必须有一个明确的值;

3) 相同的因素必须得到相同的结论且训练例必须唯一。

4.类比学习

1)类比标示:指出源问题实例和新问题之间的相似性;

2)确定映射函数:选择源问题实例的相关部分,确定映射函数;

3)应用映射函数:使用映射函数,将新问题从给定的领域转换到目标领域;

4)有效性:采用证明或仿真的过程检验新得到方案的有效性;

5)学习:如果新方案是有效的,则可以对新的知识进行编码和保存。

5.基于范例的学习:

基于范式推理(Case Based Reasoning,CBR)。人工智能领域中一种重要的基于知识问题求解和学习的方法。

 

基于范例的推理:

1)       检索算法:近邻法,归纳法,以及模板检索

近邻法:采用特征间的加权匹配来估计范例之间的相似度;

归纳法:可以确定那个特征用于分规范时最好,此方法能生成一棵决策树,它可以有效的组织范例。

模板检索:与SQL查询类似,模板检索能返回一定参数值范围内的所有范例。

   调整:

   在旧解中增加新的内容,或从旧解中删去某些内容,或对旧解中的某些内容进行替换,或旧解中的某些部分进行重新交换。

   辩护:

   除了寻找新旧范例间的相似之处,辩护过程还有对它们之间的不同点进行仔细的考虑以确定过去的情况是否适应现在的情况。

   6.解释学习:

   基于解释的学习是分析学习的主要方式,基于解释的学习(简称EBL)是将大量的成果汇集在一个统一、简单的框架内,通过分析为什么实例是某个目标概念的一个具体的例子,EBL对分析过程加以推广,剔去与具体例子相关的成分,从而产生目标概念的一个描述。通过一个实例学习,抽象目标概念被具体化,变得易操作与理解,从而为相似问题的求解提供有效的经验。

EBL的框架一般是一个四元组<DT,TC,E,C>来表示,分别表示领域理论,目标概念,训练实例和可操作准则。

   基于解释学习的过程:

1)  分析阶段:使用领域理论建立一个证明训练例子满足目标的概念定义的解释结构,该结构可表示为一棵证明树,又称为解释树,他用于解释为什么实例是目标概念的一个实例,起每个分枝的叶节点上的表达式都必须满足可操作性的准则。

2)  基于解释的泛化(Explanation-Based Generzalion,EBG)阶段:通过将实例证明树中的常量用变量进行替换,从而完成解释的泛化,并使用满足操作的准则,形成一棵基于解释的泛化树,得到目标概念的一个充分条件。

7.支持向量机(Support Vector Machine,SVM):是从线性可分情况下的最优分类面发展而来的,采用的是保持经验风险值固定而最小化置信范围的策略。

支持向量机属于一般化线性分类器。它们也可以被认为是提克洛夫规范化(Tikhonov Regularization)方法的一个特例。这种分类器的特点是他们能够同时最小化经验误差与最大化几何边缘区。因此支持向量机也被称为最大边缘区分类器

在统计计算中,最大期望(EM)算法是在概率(probabilistic)模型中寻找参数最大似然估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variable)。最大期望经常用在机器学习和计算机视觉的数据集聚(Data Clustering)领域。最大期望算法经过两个步骤交替进行计算,第一步是计算期望(E),也就是将隐藏变量像能够观测到的一样包含在内从而计算最大似然的期望值;另外一步是最大化(M),也就是最大化在 E 步上找到的最大似然的期望值从而计算参数的最大似然估计。M 步上找到的参数然后用于另外一个 E 步计算,这个过程不断交替进行。

Vapnik等人在多年研究统计学习理论基础上对线性分类器提出了另一种设计最佳准则。其原理也从线性可分说起,然后扩展到线性不可分的情况。甚至扩展到使用非线性函数中去,这种分类器被称为支持向量机(Support Vector Machine,简称SVM)。支持向量机的提出有很深的理论背景。支持向量机方法是在近年来提出的一种新方法,但是进展很快,已经被广泛应用在各个领域之中。

SVM的主要思想可以概括为两点:

(1) 它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能;

(2) 它基于结构风险最小化理论之上在特征空间中建构最优分割超平面,使得学习器得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上界。

在学习这种方法时,首先要弄清楚这种方法考虑问题的特点,这就要从线性可分的最简单情况讨论起,在没有弄懂其原理之前,不要急于学习线性不可分等较复杂的情况,支持向量机在设计时,需要用到条件极值问题的求解,因此需用拉格朗日乘子理论,但对多数人来说,以前学到的或常用的是约束条件为等式表示的方式,但在此要用到以不等式作为必须满足的条件,此时只要了解拉格朗日理论的有关结论就行。

支持向量机将向量映射到一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。假定平行超平面间的距离或差距越大,分类器的总误差越小。一个极好的指南是C.J.C Burges的《模式识别支持向量机指南》。van der Walt Barnard 将支持向量机和其他分类器进行了比较。

   有很多个分类器(超平面)可以把数据分开,但是只有一个能够达到最大分割。

我们通常希望分类的过程是一个机器学习的过程。这些数据点并不需要是 中的点,而可以是任意 (统计学符号)中或者 (计算机科学符号) 的点。我们希望能够把这些点通过一个n-1维的超平面分开,通常这个被称为线性分类器。有很多分类器都符合这个要求,但是我们还希望找到分类最佳的平面,即使得属于两个不同类的数据点间隔最大的那个面,该面亦称为最大间隔超平面。如果我们能够找到这个面,那么这个分类器就称为最大间隔分类器

设样本属于两个类,用该样本训练SVM得到的最大间隔超平面。在超平面上的样本点也称为支持向量。

SVM的优势:

由于支持向量机方法是建立在统计学习理论的VC维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力(Generalizatin Ability)。支持向量机方法的几个主要优点是:

l   可以解决小样本情况下的机器学习问题;

l   可以提高泛化性能;

l   可以解决高维问题;

l   可以解决非线性问题;

l  可以避免神经网络结构选择和局部极小点问题。

posted on 2012-04-23 14:07 SunRise_at 阅读(2326) 评论(2)  编辑 收藏 引用 所属分类: 机器算法

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理