阿壮博客阿壮博客阿壮博客

贝叶斯分类算法<span> 贝叶斯分类算法流程图

贝叶斯分类算法是统计学的一种分类方法,它是一类利用概率统计知识进行分类的算法。在许多场合,朴素贝叶斯(Naïve Bayes,NB)分类算法可以与决策树和神经网络分类算法相媲美,该算法能运用到大型数据库中,而且方法简单、分类准确率高、速度快,朴素贝叶斯做文本分类的效果非常好!

中文名:贝叶斯分类算法

属性:统计学的分类方法

应用:大型数据库中

优点:方法简单、分类准确率高、速度快

分类

(1)朴素贝叶斯算法

设每个数据样本用一个n维特征向量来描述n个属性的值,即:X={x1,x2,…,xn},假定有m个类,分别用C1, C2,…,Cm表示。给定一个未知的数据样本X(即没有类标号),若朴素贝叶斯分类法将未知的样本X分配给类Ci,则一定是

P(Ci|X)>P(Cj|X)1≤j≤m,j≠i

根据贝叶斯定理

由于P(X)对于所有类为常数,最大化后验概率P(Ci|X)可转化为最大化先验概率P(X|Ci)P(Ci)。如果训练数据集有许多属性和元组,计算P(X|Ci)的开销可能非常大,为此,通常假设各属性的取值互相独立,这样

先验概率P(x1|Ci),P(x2|Ci),…,P(xn|Ci)可以从训练数据集求得。

根据此方法,对一个未知类别的样本X,可以先分别计算出X属于每一个类别Ci的概率P(X|Ci)P(Ci),然后选择其中概率最大的类别作为其类别。

朴素贝叶斯算法成立的前提是各属性之间互相独立。当数据集满足这种独立性假设时,分类的准确度较高,否则可能较低。另外,该算法没有分类规则输出。

(2)TAN算法(树增强型朴素贝叶斯算法)

TAN算法通过发现属性对之间的依赖关系来降低NB中任意属性之间独立的假设。它是在NB网络结构的基础上增加属性对之间的关联(边)来实现的。

实现方法是:用结点表示属性,用有向边表示属性之间的依赖关系,把类别属性作为根结点,其余所有属性都作为它的子节点。通常,用虚线代表NB所需的边,用实线代表新增的边。属性Ai与Aj之间的边意味着属性Ai对类别变量C的影响还取决于属性Aj的取值。

这些增加的边需满足下列条件:类别变量没有双亲结点,每个属性有一个类别变量双亲结点和最多另外一个属性作为其双亲结点。

找到这组关联边之后,就可以计算一组随机变量的联合概率分布如下:

其中ΠAi代表的是Ai的双亲结点。由于在TAN算法中考虑了n个属性中(n-1)个两两属性之间的关联性,该算法对属性之间独立性的假设有了一定程度的降低,但是属性之间可能存

在更多其它的关联性仍没有考虑,因此其适用范围仍然受到限制。

详细介绍

关联规则挖掘是数据挖掘研究的一个重要的、高度活跃的领域。近年来,数据挖掘技术己将关联规则挖掘用于分类问题,取得了很好的效果。

ARCS

ARCS(Association Rule Clustering System)基于聚类挖掘关联规则,然后使用规则进行分类。将关联规则画在2-D栅格上,算法扫描栅格,搜索规则的矩形聚类。实践发现,当数据中存在孤立点时,ARCS比C4.5稍微精确一点。ARCS的准确性与离散化程度有关。从可伸缩性来说,不论数据库多大,ARCS需要的存储容量为常数。

CBA

CBA(classification based on association)是基于关联规则发现方法的分类算法。该算法分两个步骤构造分类器。第一步:发现所有形如xi1∧x=>Ci的关联规则,即右部为类别属性值的类别关联规则(classification association rules,CAR)。第二步:从已发现的CAR中选择高优先度的规则来复盖训练集,也就是说,如果有多条关联规则的左部相同,而右部为不同的类,则选择具有最高置信度的规则作为可能规则。文献对该过程进行了较深入的研究,使得算法在此步骤不需要对训练数据集进行过多的扫描。

CBA算法的优点是其分类准确度较高,在许多数据集上比C4.5更精确。此外,上述两步都具有线性可伸缩性。

CBA

CBA(Classification Based on Association)是关联分类。此算法把分类规则挖掘和关联规则挖掘整合到一起。与CART和C4.5只产生部分规则不同的是,CBA产生所有的类关联规则CARs(Class Association Rules),然后选择最好的规则去复盖训练集。另外,在此算法的框架中,数据库可以驻留在磁盘中

CAEP使用项集支持度挖掘HV露模式(Emerging Pattern), 而EP用于构造分类。CAEP找出满足给定支持度和增长率阈值的EP。已经发现,在许多数据集上,CAEP比C4.5和基于关联的分类更精确。一种替代的、基于跳跃的HV露模式JEP(Jnmping Emerging Pattern)是一种特殊类型的EP,项集的支持度由在一个数据集中的0陡峭地增长到另一个数据集中的非0。在一此大的多维数据库中,JEP性能优于CAEP,但在一些小型数据库中,CAEP比JEP优,这二种分类法被认为是互补的。

ADT

ADT(Association Decision Trec)分二步实现以精确度驱动为基础的过度适合规则的剪枝。第一步,运用置信度规则建立分类器。主要是采用某种置信度的单调性建立基于置信度的剪枝策略。第二步,为实现精确性,用关联规则建立一种平衡于DT(Dccision Tree)归纳的精确度驱动剪枝。

这样的结果就是ADT(Association Based Decision Trec)。它联合了大量的关联规则和DT归纳精确性驱动剪枝技术。

CMAR

基于多维关联规则的分类算法CMAR(Classification Based on Multiple Class-Association Rules)是利用FP-Growth算法挖掘关联规则,建立类关联分布树FP-树。采用CR-树(Classification Rulc Trcc)结构有效地存储关联规则。基于置信度、相关性和数据库复盖来剪枝。分类的具体执行采用加权厂来分析。与CBA和C 4.5相比,CMAR性能优异且伸缩性较好。但CMAR优先生成的是长规则,对数据库的复盖效果较差;利用加权x统计量进行分类,会造成x统计量的失真,致使分类值的准确程度降低。

CPAR

CPAR(Classification Based on Predictive Association Rules)整合了关联规则分类和传统的基于规则分类的优点。为避免过度适合,在规则生成时采用贪心算法,这比产生所有候选项集的效率高;采用一种动态方法避免在规则生成时的重复计算;采用顶期精确性评价规则,并在预测时应用最优的规则,避免产生冗余的规则。另外,MSR(Minimnm Set Rule)针对基于关联规则分类算法中产生的关联规则集可能太大的问题,在分类中运用最小关联规则集。在此算法中,CARS并不是通过置信度首先排序,因为高置信度规则对噪声是很敏感的。采用早期剪枝力方法可减少关联规则的数量,并保证在最小集中没有不相关的规则。实验证实,MSR比C45和CBA的错误率要低得多。

基本步骤

主要有以下7个步骤:

1.收集大量的垃圾邮件和非垃圾邮件,建立垃圾邮件集和非垃圾邮件集。

2.提取邮件主题和邮件体中的独立字符串,例如 ABC32,¥234等作为TOKEN串并统计提取出的TOKEN串出现的次数即字频。按照上述的方法分别处理垃圾邮件集和非垃圾邮件集中的所有邮件。

3.每一个邮件集对应一个哈希表,hashtable_good对应非垃圾邮件集而hashtable_bad对应垃圾邮件集。表中存储TOKEN串到字频的映射关系。

4.计算每个哈希表中TOKEN串出现的概率P=(某TOKEN串的字频)/(对应哈希表的长度)。

5.综合考虑hashtable_good和hashtable_bad,推断出当新来的邮件中出现某个TOKEN串时,该新邮件为垃圾邮件的概率。数学表达式为:

A事件----邮件为垃圾邮件;

t1,t2…….tn代表TOKEN串

则P(A|ti)表示在邮件中出现TOKEN串ti时,该邮件为垃圾邮件的概率。

P1(ti)=(ti在hashtable_good中的值)

P2(ti)=(ti在hashtable_bad中的值)

则P(A|ti)=P2(ti)/[(P1(ti)+P2(ti)];

6.建立新的哈希表hashtable_probability存储TOKEN串ti到P(A|ti)的映射

7.至此,垃圾邮件集和非垃圾邮件集的学习过程结束。根据建立的哈希表hashtable_probability可以估计一封新到的邮件为垃圾邮件的可能性。

当新到一封邮件时,按照步骤2,生成TOKEN串。查询hashtable_probability得到该TOKEN串的键值。

假设由该邮件共得到N个TOKEN串,t1,t2…….tn,hashtable_probability中对应的值为P1,P2,……PN,P(A|t1,t2,t3……tn)表示在邮件中同时出现多个TOKEN串t1,t2……tn时,该邮件为垃圾邮件的概率。

由复合概率公式可得

P(A|t1,t2,t3……tn)=(P1*P2*……PN)/[P1*P2*……PN+(1-P1)*(1-P2)*……(1-PN)]

当P(A|t1,t2,t3……tn)超过预定阈值时,就可以判断邮件为垃圾邮件。

参考资料

1.人工智能之朴素贝叶斯算法原理与源码实战·腾讯课堂

1.文章《贝叶斯分类算法<span> 贝叶斯分类算法流程图》援引自互联网,仅供学习和研究使用,内容仅代表作者本人观点,与本网站无关,侵删举报等反馈请点击此处

2.文章《贝叶斯分类算法<span> 贝叶斯分类算法流程图》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://100248.com/wen/498685.html

相关推荐

奋进新时代踏上新征程作文 启航新征程,奋进新时代作文

2022年奋进新时代踏上新征程作文9篇从作文的写作命题来分,作文可以分为命题作文和非命题作文。命题作文,一般是指出题者给出一个既定的题目,要

有趣的万圣节活动作文 有趣的活动作文500字以上

有趣的万圣节活动作文5篇作为一名合格的学生,对于自己的万圣节活动内容,可以书写作文进行描写记录。相信,很多朋友都对写作文感到非常苦恼吧,下面

万圣节快乐优质作文 快乐的万圣节作文

万圣节快乐优质作文7篇关于万圣节的到来,对于这一天的节日文化,可以书写作文记录自己的个人感想。那么,写作文时还应注意哪些问题呢?下面是由小编

万圣节活动推文怎么写 校园活动推文怎么写

万圣节活动推文怎么写5篇作为一名学生,对于自己的万圣节活动,应该书写作文记录下来。作文的事项有许多,那么,你确定会写吗?下面是由小编给大家带

万圣节的节日作文 万圣节是什么节日?

万圣节的节日作文7篇对于万圣节的节日文化,为了进一步进行了解,可以结合实际书写一篇作文。相信,很多朋友都对写作文感到非常苦恼吧,下面是由小编

有趣的万圣节作文评析 有趣的万圣节作文400字

有趣的万圣节作文评析5篇对于万圣节活动的开展,为了能够深入了解万圣节文化,因此需要书写一篇万圣节话题作文。那么,写作文时还应注意哪些问题呢?

感恩节的来历和意义简短 感恩节的来历和意义英文

感恩节的来历和意义简短7篇为了记录感恩节的活动经历,可以选择书写作文的方式,以此进行认识。那么,你有了解过作文吗?下面是由小编给大家带来的感

万圣节主题文章内容 文章内容切合主题

万圣节主题文章内容7篇对于万圣节的到来,每一个人都有自己的庆祝方式,为了了解这个节日的关联,可以书写作文进行探索。那么,写作文时还应注意哪些