朴素贝叶斯分类算法在数据预测中的应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

朴素贝叶斯分类算法在数据预测中的应用

摘要:朴素贝叶斯分类方法是数据库分类知识挖掘领域的一项基本技术,并具有广泛的应用。使用贝叶斯分类算法实现了对经典数据集Iris的分类。实践表明,朴素贝叶斯分类是一种有效的数据挖掘分类算法。

关键词:数据挖掘;朴素贝叶斯分类;数据预测;鸢尾花(Iris)数据集

1 数据挖掘

许多人把数据挖掘视为另一个常用的术语:数据中的知识发现。数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的,但又是潜在的、有用的信息和知识的过程。

本文利用数据挖掘中的朴素贝叶斯分类技术来研究鸢尾花数据集中有关于鸢尾花分类问题。以鸢尾花数据集为对象,尝试通过数据挖掘中的朴素贝叶斯分类技术对数据进行分析,实现对鸢尾花所属分类进行预测,发现鸢尾花所属分类与鸢尾花各项数据之间的联系,有助于对鸢尾花的培养进行管理。

2 朴素贝叶斯分类算法

假设每个数据样本用一个n维特征向量来描述n个属性的值,即X={x\-1,x\-2,...,x\-n},假设有m个类,分别用C\-1,C\-2,...,C\-m表示。给定的一个未知的数据样本X(没有标

明属于哪个类),根据贝叶斯定理得:

P(|X)=P(c\-i|X)=[SX(]P(X|c\-i)*P(c\-i)[]P(X)[SX)]由于P(X)对于所有类为常数,所以,最大后验概率P(c\-i|X)P(|X)可以转化为从最大先验概率P(X|c\-i)*P(c\-i)计算得到。如果训练数据集有很多元组和属性,计算P(X|c\-i)的开销可能非常大,为此,通常假设各属性的取值是相互独立的,这样先验概率P(x\-1|C\-i),P(x\-2|C\-i),...,

P(x\-n|C\-i)都可以从训练数据集求得。

根据此方法,对于类别未知的样本X,可以先分别计算X 属于每一个类别c\-i的概率。

P(X|c\-i)*P(c\-i),然后选择概率最大的类别作为其类别。

若朴素贝叶斯分类算法将未知数的数据样本X分配给Ci,则需要满足:

P(|X)> P(|X), P(c\-i| X)>P(c\-j|X),1≤j≤m,i≠j

从理论上来讲,朴素贝叶斯分类算法与其他算法相比有着最小的错误率,在实践中朴素贝叶斯分类算法还可以和神经网络算法和判定树等分类算法相媲美,并且它的适应性也很强,执行效率高,在给定的N个属性的M个训练集,学习时间的复杂度为O(N*M),这使得它在现实中有着广泛的应用。

3 实例

鸢尾花数据集中数据属性分为花萼长、花萼宽、花瓣长、

花瓣宽和所属分类5项。为了编程方便,使用calyx_length表示花萼长、calyx_width表示花萼宽、petal_length表示花瓣长、petal_width表示花瓣宽、category表示所属分类。

鸢尾花的类别分为3种:Iris-setosa、Iris-versicolor、Iris-virginica,我们从鸢尾花数据集中选取60个数据样本作为训练数据集(可随机选取,这里为了实验计算方便,每种类别均选取了20个样本),预测一个未知的数据所在分类。

若从预测数据集中读出如下数据(5.4,3.7,1.5,0.2

4个属性类别分别为花萼长(calyx_length)、花萼宽(calyx_width)、花瓣长(petal_length)、花瓣宽(petal_width)。3个分类类别分别为setosa(用C\-1表示),versicolor(用C\-2表示),virginica(用C\-3表示)。

朴素贝叶斯分类算法的步骤如下:

(1)计算训练数据集中每个种类所占的比例。

因为60个训练数据集中每个种类均选取了20个样本,所以在训练数据集中对于鸢尾花的3个种类出现的概率为:

在这里Max(P\-1,P\-2,P\-3)=P\-1,所以我们把预测数据分类在P\-1类,即Iris-setosa类别。实际上预测数据的类别就是Iris-setosa。如果Max(P\-1,P\-2,P\-3)=P\-2,那么分在versicolor

类,如果Max(P\-1,P\-2,P\-3)=P\-3那么分在virginical类。我们通过这个过程说明如何使用朴素贝叶斯分类算法对未知数据进行分类,达到了数据挖掘的目的。

4 结束语

随着计算机技术的发展,数据挖掘越来越受到研究人员的关注,而分类算法中的朴素贝叶斯分类算法以其简单的算法思想、较高的精确度等优点成为挖掘领域热门的研究方向。朴素贝叶斯分类算法是建立在各个属性之间的相互独立性假设的前提下进行的,这种假设在现实中是很少出现的。朴素贝叶斯分类算法在属性之间没有那么严格的条件下也能发挥比较好的性能,所以朴素贝叶斯分类算法在证券、消费、教育、银行等行业中占有一席之地。

参考文献:

\[1\] 李志刚,马刚.数据仓库与数据挖掘的原理及应用\[M\].北京:高等教育出版社,2008.

\[2\] \[美\]PANG-NING TAN ,MICHAEL STEINBACH,VIPIN KUMAR. Introduction to Data Mining\[M\]北京:人民邮电出版社,2006.

\[3\] \[美\]WALTER SA VITCH,Absolute Java\[M\],北京:清华大学出版社,2008.

\[4\] 李艳,刘信杰,胡学刚.数据挖掘中朴素贝叶斯分类的应用\[J\].潍坊学院学报,2007(4).

\[5\] 余芳,姜云飞.一种基于朴素贝叶斯分类的特征选择方法\[J\].中山大学学报(自然科学版),2004(5).

相关文档
最新文档