陈 伟,刘昌森
(1.淮南联合大学 计算机系,安徽 淮南232038;2.亳州市第三中学,安徽 亳州236800)
朴素贝叶斯分类预测学生CET4成绩
陈 伟1,刘昌森2
(1.淮南联合大学 计算机系,安徽 淮南232038;2.亳州市第三中学,安徽 亳州236800)
贝叶斯分类法是统计学分类方法,可以预测类成员关系的可能性,如给定元?组属于一个特定类的概率。大学英语四级考试一直是高校学生很重要的一门考试,对学生日后的就业也有指导性的作用,运用朴素贝叶斯分类方法,对学生的CET4成绩数据进行分类和预测,把得到的结论与实际情况比较,从而指导教学。
朴素贝叶斯;分类;CET4;预测
朴素贝叶斯分类法是假定一个属性值对给定类的影响独立于其他属性值。这一假定称作类条件独立性。做此假定是为了简化所需要的计算,并在此意义下称为“朴素的”。贝叶斯分类基于贝叶斯定理。
设X是类标号未知的数据样本。设H为某种假定,如,数据样本X属于某特定的类C。对于分类问题,希望确定P(H│X)——给定观测数据样本X,假定H成立的概率。P(H│X)是后验概率,或条件X下,H的后验概率。例如,假定数据样本由水果组成,我们用颜色和形状来描述它们。假定X表示红色和圆的,H表示假设X是苹果,则P(H│X)反映当我们看到X是红色并且是圆的时,我们判定X是苹果的概率。P(H,X)是先验概率,或H的先验概率。对于此例,它是任意给定的数据样本为苹果的概率,而不管数据样本是何颜色和形状。后验概率P(H│X)比先验概率P(H,X)基于更多的信息(例如颜色和形状的信息)。P(H,X)是独立于X的。
类似的,P(H│X)是条件H下,X的后验概率。即,它是已知X是苹果,X是红色并且是圆的的概率。P(H,X)是X的先验概率,是由水果集取出一个数据样本是红色和圆的的概率。
贝叶斯定理提供了后验概率的计算方法:
(1)设样本有n个属性(A1,A2,……,An),每个样本可看作是n维空间的一个点X=(x1,x2,……,xn)。
(2)假定有m个不同的类别,C1,C2,……,Cm。X是一个未知类别的样本。预测X的类别为后验概率最大的那个类别,即算法将未知类别的样本X归到类Ci,当且仅当P(CiP│X)>P(CjP│X),对于所有的j成立(1jm,ji),即最大。
(4)对未知样本X分类,对每个类Ci,计算。样本X被指派到类Ci,当且仅当>(1jm,ji),即X被指派到其最大类Ci。
贝叶斯分类具有如下特点:
(1)贝叶斯分类并不把一个对象绝对地指派给某一类,而是通过计算得出属于某一类的概率,具有最大概率的类便是该对象所属的类;
(2)一般情况下在贝叶斯分类中所有的属性都潜在地起作用,即并不是一个或几个属性决定分类,而是所有的属性都参与分类;
(3)贝叶斯分类对象的属性可以是离散的、连续的,也可以是混合的[1-2]。
本文所用数据为某学校某年学生CET4的成绩,以Visualfoxpro6.0为工具,针对现有数据的情况,在此进行的数据预处理(Data preprocessing),包括二个步骤:数据清理(Data Clearing)和数据变换(Data Transformation)。
数据清理:从原有数据中我们发现其中有很多学生的数据都为0,通过调查知道这些数据缺失的原因是学生未参加考试,我们把这样学生的数据都从数据库表中把它删除。另外为了研究的需要,我们只取 “学号”、“总分”、“听力分数”、“阅读分数”、“写作分数”、“综合分数”这6个字段。
数据变换:将数据转换成适合于研究的形式。将CET4中除了总分以外的各部分数据转换成优秀、良好、及格、不及格5个等级。如分数大于85的为“优”,介于85-60之间的为“合格”,60分以下为“不及格”;总分转换为通过和不通过,总分大于等于60分为通过,反之为不通过。因为CET4的分值分配为:总分710,听力249,阅读249,写作142,综合测试70,所以要把分数换算为百分制。“不及格”、“合格”、“优”分别设定为1、2、3;通过和不通过分别设定为“1”和“0”。表1为预处理后的成绩表中的部分数据。总计1814条记录。
表1预处理后的CET4成绩
以表1为训练数据样本,有4个属性(听力分数,阅读分数,写作分数,综合分数),总分有两个不同值:1和0。设C1对应于类总分=1,C2对应于类总分=0。要计算给定的样本X=(听力分数=2,阅读分数=1,写作分数=1,综合分数=3),我们需要最大化,i=1,2。每个类的先验概率可以根据训练样本计算:P(总分=1)=92/1814=0.0507,P(总分=0)=1722/ 1814=0.9493。
为了计算,i=1,2,计算下面的条件概率:
P(听力分数=2|总分=1)=62/92=0.6739,P(听力分数=2|总分=0)=41/1722=0.0238
P(阅读分数=1|总分=1)=17/92=0.1848,P(阅读分数=1|总分=0)=1530/1722=0.8885
P(写作分数=1|总分=1)=50/92=0.5435,P(写作分数=1|总分=0)=1578/1722=0.9164
P(综合分数=3|总分=1)=15/92=0.1630,P(综合分数=3|总分=0)=13/1722=0.0075
使用上面的概率得到:P(X|总分=1)=P(听力分数=2|总分=1)*P(阅读分数=1|
总分=1)*P(写作分数=1|总分=1)*P(综合分数=3|总分=1)
=0.6739*0.1848*0.5435*0.1630=0.0110
P(X|总分=0)=0.0238*0.8885*0.9164*0.0075=0.00015
为了发现最大化的类,计算
P(X|总分=1)*P(总分=1)=0.0110*0.0507=0.0005577
P(X|总分=0)*P(总分=0)=0.00015*0.9493=0.0001424
由于P(X|总分=1)*P(总分=1)>P(X|总分=0)*P (总分=0),因此对于样本X=(听力分数=2,阅读分数=1,写作分数=1,综合分数=3),即X(听力分数为合格,阅读分数为不及格,写作分数为不及格,综合分数为优)朴素贝叶斯分类预测总分=1,即为通过,这一预测与实际情况相符[3-5]。
通过实例说明了朴素贝叶斯能够利用现有知识对未知事件进行预测,而且具有一定的正确性[6-7]。
[1]韩家炜.数据挖掘概念与技术[M].北京:机械工业出版社,2000:172-173.
[2]陈文伟,黄金才,等.数据仓库与数据挖掘[M].北京:人民邮电出版社,2004:121-122.
[3]王峻.朴素贝叶斯分类模型在指导学生选择专业选修课方向中的应用[J].电脑知识与技术,2008:1286-1287.
[4]袁红星.朴素贝叶斯基于学生信息库的数据挖掘研究[J].软件导刊,2005(16):8-10.
[5]马希荣,孙华志.数据挖掘技术在教学评价中的应用[J].计算机工程与应用,2003(19):51-54.
[6]丁智斌,袁方,董贺伟.数据挖掘在高校学生学习成绩分析中的应用[J].计算机工程与设计,2006(4):590-592.
[7]谢斌.朴素贝叶斯分类在数据挖掘中的应用[J].甘肃联合大学学报:自然科学版,2007(4):79-81.
[责任编辑:曹怀火]
TP311
A
1674-1102(2010)03-0012-02
2010-03-03
陈伟(1975-),女,安徽六安人,淮南联合大学计算机系讲师,硕士,主要研究方向为数据挖掘。