第2章 基于贝叶斯决策理论的分类器

2.1 分类器的描述方法

分类器是一种计算机程序,它的设计目标是在通过学习后,可自动将数据分到已知类别。分类器常应用在搜索引擎以及各种检索程序中,同时也大量应用于数据分析与预测领域。分类器是一种机器学习程序,因此归为人工智能的范畴。人工智能的多个领域,包括数据挖掘、专家系统、模式识别,都用到此类程序。对于分类器,其实质为数学模型。针对模型的不同,目前有多种分支,包括:贝叶斯网络分类器、决策树算法、SVM(支持向量机)算法等。

解决分类问题的方法很多,单一的分类方法主要包括:决策树、贝叶斯、人工神经网络、k-近邻法、支持向量机和基于关联规则的分类等;另外还有用于组合单一分类方法的集成学习算法,如装袋和提升/推进等。

(1)决策树

决策树是用于分类和预测的主要技术之一,决策树学习是以实例为基础的归纳学习算法,它着眼于从一组无次序、无规则的实例中推理出以决策树表示的分类规则。构造决策树的目的是找出属性和类别间的关系,用它来预测将来未知类别的记录的类别。它采用自顶向下的递归方式,在决策树的内部节点进行属性的比较,并根据不同属性值判断从该节点向下的分支,在决策树的叶节点得到结论。

主要的决策树算法有ID3、C4.5(C5.0)、CART、PUBLIC、SLIQ和SPRINT算法等。它们在选择测试属性采用的技术、生成的决策树的结构、剪枝的方法及时刻,以及能否处理大数据集等方面都有各自的不同之处。

(2)贝叶斯

贝叶斯(Bayes)分类算法是一类利用概率统计知识进行分类的算法,如朴素贝叶斯(Naive Bayes)算法。这些算法主要利用贝叶斯定理来预测一个未知类别的样本属于各个类别的可能性,选择其中可能性最大的一个类别作为该样本的最终类别。由于贝叶斯定理的成立本身需要一个很强的条件独立性假设前提,而此假设在实际情况中经常是不成立的,因而其分类准确性就会下降。为此就出现了许多降低独立性假设的贝叶斯分类算法,如TAN(Tree Augmented Nave Bayes)算法,它是在贝叶斯网络结构的基础上增加属性对之间的关联来实现的。

(3)人工神经网络

人工神经网络(Artificial Neural Networks,ANN)是一种应用类似于大脑神经结构进行信息处理的数学模型。在这种模型中,大量的节点(或称“神经元”,或“单元”)之间相互连接构成网络,即“神经网络”,以达到处理信息的目的。神经网络通常需要进行训练,训练的过程就是网络进行学习的过程。训练改变了网络节点连接的权值,使其具有分类的功能,经过训练的网络就可用于对象的识别。

目前,神经网络已有上百种不同的模型,常见的有BP网络、径向基RBF网络、Hopfield网络、随机神经网络(Boltzmann机)、竞争神经网络(Hamming网络,自组织映射网络)等。但是当前的神经网络仍普遍存在收敛速度慢、计算量大、训练时间长和不可解释等缺点。

(4)k-近邻法

k-近邻(k-Nearest Neighbors,KNN)法是一种基于实例的分类方法。该方法就是找出与未知样本x距离最近的k个训练样本,看这k个样本中多数属于哪一类,就把x归为哪一类。k-近邻法是一种懒惰学习方法,它存放样本,直到需要分类时才进行分类,如果样本集比较复杂,可能会导致很大的计算开销,因此无法应用到实时性很强的场合。

(5)支持向量机

支持向量机(Support Vector Machine,SVM)是Vaplik根据统计学习理论提出的一种新的学习方法,它的最大特点是根据结构风险最小化准则,以最大化分类间隔构造最优分类超平面来提高学习机的泛化能力,较好地解决了非线性、高维数、局部极小点等问题。对于分类问题,支持向量机算法根据区域中的样本计算该区域的决策曲面,由此确定该区域中未知样本的类别。

(6)基于关联规则的分类

关联规则挖掘是数据挖掘中一个重要的研究领域。近年来,对于如何将关联规则挖掘用于分类问题,学者们进行了广泛的研究。关联分类方法挖掘形如condset→C的规则,其中condset是项(或属性值对)的集合,而C是类标号,这种形式的规则称为类关联规则(Class Association Rules,CARs)。关联分类方法一般由两步组成:第一步使用关联规则挖掘算法从训练数据集中挖掘出所有满足指定支持度和置信度的类关联规则;第二步使用启发式方法从挖掘出的类关联规则中挑选出一组高质量的规则用于分类。属于关联分类的算法主要包括CBA、ADT、CMAR等。

(7)集成学习

实际应用的复杂性和数据的多样性往往使得单一的分类方法不够有效。因此,学者们对多种分类方法的融合即集成学习(ensemble learning)进行了广泛的研究。集成学习已成为国际机器学习界的研究热点,并被称为当前机器学习四个主要研究方向之一。

集成学习是一种机器学习范式,它试图通过连续调用单个的学习算法,获得不同的基学习器,然后根据规则组合这些学习器来解决同一个问题,可以显著地提高学习系统的泛化能力。组合多个基学习器主要采用(加权)投票的方法,常见的算法有装袋(bagging)、提升/推进(boosting)等。

集成学习由于采用了投票平均的方法组合多个分类器,所以有可能减少单个分类器的误差,获得对问题空间模型更加准确的表示,从而提高分类器的分类准确度。

以上简单介绍了几种主要的分类方法,应该说都有各自不同的特点及优缺点。对于数据库负载的自动识别,应该选择哪种方法呢?用来比较和评估分类方法的标准主要有:

1)预测的准确率:模型正确地预测新样本的类标号的能力。
2)计算速度:包括构造模型以及使用模型进行分类的时间。
3)强壮性:模型对噪声数据或空缺值数据正确预测的能力。
4)可伸缩性:对于数据量很大的数据集,有效构造模型的能力。
5)模型描述的简洁性和可解释性:模型描述越简洁、越容易理解,则越受欢迎。

《模式识别原理及工程应用》——第2章 基于贝叶斯决策理论的分类器 2.1 分类器的描述方法...相关推荐

  1. Educoder 机器学习 第1关:基于贝叶斯决策理论的分类方法

    第1关:基于贝叶斯决策理论的分类方法 任务描述 本关任务:理解朴素贝叶斯的分类思想,完成编程习题. 相关知识 为了完成本关任务,你需要掌握:1.贝叶斯,2.朴素贝叶斯. 贝叶斯 朴素贝叶斯是贝叶斯决策 ...

  2. [模式识别].(希腊)西奥多里蒂斯第四版笔记2之__基于贝叶斯决策理论的分类器

    本章的主要工作在基于训练集的特征向量,估计概率密度函数. 1,贝叶斯决策理论 条件概率公式.其中P(w)为先验概率,P(x|w)为类条件概率密度 2,基于正态分布的贝叶斯分类 高斯分布和正态分布是最常 ...

  3. 基于贝叶斯决策理论的分类器

    1.引言 模式识别是根据对象特征值将其分类.d个特征组成特征向量x=[x1,···,xd]T,生成d维特征空间,在特征空间一个x称为一个模式样本. Bayes决策理论是用概率统计方法研究决策问题. ( ...

  4. 《模式识别原理及工程应用》一1.4 模式识别系统的应用举例

    1.4 模式识别系统的应用举例 从20世纪末到21世纪初,随着模式识别理论和技术自身的发展及计算机数据处理能力的飞速提高,模式识别技术的应用已经开始进入各行各业.这里,我们列举几个典型的例子来说明模式 ...

  5. 编译原理个人作业--第五章——基于 编译原理 国防工业出版社 第三版

    1 文法 G 1 G_1 G1​为 E → E + T ∣ T T → T ∗ F ∣ F F → ( E ) ∣ i E\rightarrow E+T|T\\ T\rightarrow T*F|F\ ...

  6. 数据库原理及设计 第六章 关系数据库设计理论 思维导图

  7. Machine Learning in Action 读书笔记---第4章 基于概率论的分类方法:朴素贝叶斯

    Machine Learning in Action 读书笔记 第4章 基于概率论的分类方法:朴素贝叶斯 文章目录 Machine Learning in Action 读书笔记 一.基于贝叶斯决策理 ...

  8. 文献阅读1:基于旋量理论的串联机器人运动特性研究现状

    从机构学与机器人学的发展历史上来看,机构学与机器人学的发展与数学工具是息息相关的.与机构学与机器人学联系紧密的数学工具有很多:如传统意义上的 线性代数与矩阵理论.用于拓扑结构分析及综合的图论(grap ...

  9. 《异构信息网络挖掘: 原理和方法(1)》一第2章 基于排名的聚类

    本节书摘来自华章出版社<异构信息网络挖掘: 原理和方法(1)>一书中的第2章,作者[美]孙艺洲(Yizhou Sun)韩家炜(Jiawei Han),更多章节内容可以访问云栖社区" ...

最新文章

  1. Android开发之Activity转场动画
  2. python threading condition使用_Python threading模块condition原理及运行流程详解
  3. 机器学习:随机森林算法及其实现
  4. 解决问题Can’t connect to local MySQL server through socket
  5. JWT 介绍 - Step by Step
  6. PHP后台处理jQuery Ajax跨域请求问题 — xx was not called解决办法
  7. mysql 6.5.7_centos 6.5装mysql5.7
  8. EL表达式,JSP内置对象
  9. linux基础学习2
  10. matlab图像频谱分析代码_信号频域分析方法的理解(频谱、能量谱、功率谱、倒频谱、小波分析)...
  11. 【全源码及文档】基于JAVA的干部档案管理系统
  12. jquery html5关系图,html5 canvas复杂人物关系图设置代码
  13. 惠普打印机WiFi连接使用
  14. JQuery中美元符号$
  15. 分层结构的生活例子_系统抽样和分层抽样在现实生活中有什么例子?
  16. 装系统时遇到的一些坑
  17. 期货反向跟单犯法吗?
  18. python图像预处理-(二)腐蚀与膨胀
  19. ubuntu 下载jdk1.8
  20. 用matlab打造的摩斯电码加解码器音频版,支持包括中文在内的任意字符

热门文章

  1. php empty判断0,PHP empty() 检测一个变量是否为空
  2. gitlab上传本地项目_环境搭建:gitLab平台的搭建和简单使用
  3. 20200213:去除重复字母(leetcode316)
  4. LKT系列加密芯片如何预置openssl生成的rsa密钥完成运算(三)
  5. 【转载】中国煤层气资源量
  6. 知道你为什么富不起来吗 十个耽误你一生的缺点 穷人杀手[网摘]
  7. 阿里无人车,正在高速过弯
  8. 蓦然认知戴帅湘:做新一代决策引擎,比DuerOs走得垂直纵深
  9. Pandas 基础(17) - to_datetime
  10. 使用Docker部署SpringBoot