Wine数据集分类——贝叶斯分类算法(MATLAB实现)
- 一、Wine数据集的介绍
-
-
- 1.1 实验目的
- 1.2 数据介绍
-
- 二、贝叶斯算法理论
-
-
- 2.1 贝叶斯分类
- 2.2 贝叶斯公式
- 2.3 朴素贝叶斯分类器的设计流程
- 2.3 朴素贝叶斯分类器的数学原理
-
- 三、MATLAB仿真实现
一、Wine数据集的介绍
1.1 实验目的
??该实验的Wine数据集来自于UCI机器学习数据库中,数据集中的数据则是产自意大利同一地区但来自三个不同品种的葡萄酒进行化学分析的结果,分析确定了三种酒中每种所含13种不同成分的数量。
??实验的目的就是利用分类算法实现Wine数据集中三种不同品种的葡萄酒分类。通过学习贝叶斯分类相关的知识,我们决定使用贝叶斯分类算法对Wine数据集进行分类。Wine数据集含有178个样本,我们将采用k折交叉验证的方法选取训练集和测试集,并采用朴素贝叶斯分类算法实现Wine数据集的分类。实验过程所使用的编程软件为MATLAB仿真软件,利用MATLAB实现算法及分类。
1.2 数据介绍
??下表是Wine数据集的相关信息。
Data Set Characteristics: | Multivariate | Number of Instances: | 178 | Area: | Physical |
---|---|---|---|---|---|
Attribute Characteristics: | Integer, Real | Number of Attributes: | 13 | Date Donated: | 1991-07-01 |
Associated Tasks: | Classification | Missing Values/td> | No | Number of Web Hits: | 1509517 |
??这些数据包括了三种酒中13中不同成分的数量。13种成分分别是:Alcohol、Malic acid、Ash、 Alkalinity of ash、Magnesium、Total phenols、Flavanoids 、Nonflavanoid phenols、Proanthocyanins、Color intensity、Hue、OD280/OD315 of diluted wines、Proline。在‘Wine.data’文件中,每一行代表一种酒的样本,共有178个样本;一共14列,其中第一列为类别标志属性,共有3类,分别标记为‘1’、‘2’、‘3’,对于三种不同的葡萄酒;后面13列为每一个样本对应属性的属性值;类别‘1’共有59个样本,类别‘2’共有71个样本,类别‘3’共有48个样本。
??由于数据集中每个样本的数据都是完整的,没有空缺值,所以没有对该数据集进行必要的数据清洗工作。
??http://archive.ics.uci.edu/ml/datasets/Wine
二、贝叶斯算法理论
2.1 贝叶斯分类
??贝叶斯分类是指通过训练集(已分类的数据子集)训练来归纳出分类器,并利用分类器对未分类的数据(可以看作是测试集)进行分类。其基本思想是依据先验概率、类条件概率的信息,并按照某种准则使分类结果从统计上讲是最佳的。它是一种有监督学习的分类方法。
2.2 贝叶斯公式
??若已知总共有M类样品,以及各类在n维特征空间的统计分布,根据概率知识可以通过样品库得知各类别 w i ( i = 1 , 2 , . . . , M ) w_i(i=1,2,…,M) wi?(i=1,2,...,M)的先验概率 p ( w i ) p(w_i) p(wi?)以及类条件概率 p ( X / w i ) p(X/w_i) p(X/wi?)。对于待测样品,贝叶斯公式可以计算出该样品分属各类别的概率,叫做后验概率 p ( w i / X ) p(w_i/X) p(wi?/X) 。比较各个后验概率,把X归于后验概率最大的那一个类。
??第一阶段——准备工作阶段,这个阶段的任务是为朴素贝叶斯分类做必要的准备,主要工作是根据具体情况确定特征属性,并对每个特征属性进行适当划分,然后由人工对一部分待分类项进行分类,形成训练样本集合。这一阶段的输入是所有待分类数据,输出是特征属性和训练样本。这一阶段是整个朴素贝叶斯分类中唯一需要人工完成的阶段,其质量对整个过程将有重要影响,分类器的质量很大程度上由特征属性、特征属性划分及训练样本质量决定。
??第二阶段——分类器训练阶段,这个阶段的任务就是生成分类器,主要工作是计算每个类别在训练样本中的出现频率及每个特征属性划分对每个类别的条件概率估计,并将结果记录。其输入是特征属性和训练样本,输出是分类器。这一阶段是机械性阶段,根据前面讨论的公式可以由程序自动计算完成。
??第三阶段——应用阶段。这个阶段的任务是使用分类器对待分类项进行分类,其输入是分类器和待分类项,输出是待分类项与类别的映射关系。这一阶段也是机械性阶段,由程序完成。
2.3 朴素贝叶斯分类器的数学原理
??本实验中所采用的贝叶斯分类算法是朴素贝叶斯分类算法。朴素贝叶斯算法又叫做基于最小错误率的贝叶斯分类算法,也可称为基于最大后验概率的贝叶斯分类算法。它的原理就是利用贝叶斯公式将样本划分到后验概率最大的那一类中。因此可以定义每一类的判别函数为:
插讲:多维正态分布是样本在更高维度上的正态分布,它的基本形式与一维正态分布是相同的。只是在方差项上由一个协方差矩阵代替了方差,反映了各个维度之间存在的关联。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!