摘 要: 目的:构造能够利用口腔疾病数据预测其他临床疾病致病规律的决策树,并提取分类规则。方法:使用weka软件,利用数据挖掘技术的ID3算法对口腔诊疗数据进行分析,并针对ID3算法的准确率进行改进。结果:得到了预期的决策树和分类规则。结论:改进的ID3算法准确率高于改进前,所得的结果能够对医师起到指导作用。
关键词:数据挖掘;口腔疾病;weka;决策树;ID3算法
引言
随着医院信息系统(Hospital Information System,HIS)的广泛应用,医院数据库系统中的各种医疗信息每天都在迅速增长。面对这些海量数据,我们很希望能够从中找到一些有价值的信息。
口腔医学领域充斥着大量医疗数据信息,如果我们不能把这些信息转化为对我们有用的知识,这些数据就显得用途不大了。
由以上几个步骤就能构造一棵ID3决策树,可以用它来对新的样本进行分类。
2.2 数据处理
在类别属性原发病中,胃溃疡、糖尿病、心脏病的实例数目分别为296、169、95,类别属性的信息熵为:
I= 1.4419917
需要计算每个属性的信息熵。龋病属性中,深龋、浅龋、无的实例数目分别为344、127、89。
患深龋的病人中患胃溃疡、糖尿病、心脏病的数目分别为255、47、42,则:
I(深龋)= 1.0829416
患浅龋的病人中患胃溃疡、糖尿病、心脏病的数目分别为26、96、5,则:
I(浅龋)= 0.9573660
不患龋病的病人中患胃溃疡、糖尿病、心脏病的数目分别为15、26、48,则:
I(无)= 1.4319919
由此可得,龋病的熵值为:
Entropy(龋病)=1.1099369
计算它的信息增益为:
Gain(龋病)=I-Entropy(龋病)=0.3320548
同理可得其他属性的信息熵和信息增益如下:
表1 属性的信息熵和信息增益
牙髓炎根尖周炎牙石牙周袋牙着色Entropy1.38136141.44196081.24673981.2978921.4256026Gain0.06063030.00003090.19525190.14409970.0163891 由以上结果可以看出,信息增益最大属性的是龋病,因此,龋病是构造决策树的根结点,根尖周炎的信息增益最小,比除它之外最小的属性牙着色还要小500多倍,由此可知,根尖周炎对决策树影响最小,为了简化决策树,将这一属性及其对应的数据删除。以龋病为根,根据龋病的三个分类,深龋、浅龋、无,构造决策树的分枝和叶结点。
2.3 准确率分析
由weka软件输出信息中的Correctly Classified Instances一项可知,总共560个样本中的474个被正确分类,占总样本数的84.6429 %,然后用训练集、测试集方法进行准确性测试,加载测试集数据文件,运行结果显示,根据先前生成的决策树,测试集数据中,总共288个样本中的238被正确预测,占测试集总样本的82.6389 %,分类器预测效果散点图如图2所示:
图2 分类器预测效果散点图
x轴表示测试集中原有数据的原发病属性,y轴表示由训练集生成的模型对测试集预测的原发病属性,坐标图中的“×”表示预测正确的样本,“□”表示预测错误的样本。从图中可以看出,绝大多数样本被正确分类了。
3.ID3算法的改进及对比
3.1 改进策略
本文是针对属性的选择对ID3算法进行改进,ID3算法计算属性A的信息增益时,用分类属性的总熵减去属性A的熵,如果引入一个参数α,将公式修改为:
则可以加强重要属性,降低非重要的属性,使决策树减少对取值较多属性的依赖,从而改善大数据淹没小数据的状况。式中,为属性A的权值, 即属性A的取值个数,在选择属性时,将信息增益度最大的属性选择为分支属性, 取代了原来的信息增益。由此公式,可以得出训练集中各属性的信息增益度,如下所示:
Gain’(龋病)=0.51148006
Gain’(牙髓炎)=0.226167147
Gain’(根尖周炎)=0.217046029
Gain’(牙石)=0.48972287
Gain’(牙周袋)=0.238730544
Gain’(牙着色)=0.219508183
3.2 改进前后对比
随机选取10个数据集,每个数据集都进行了50次实验,然后求出分类准确率的平均值,这样一来,实验数据更加具有一般性,通过分析这些数据,对比ID3算法与改进的ID3算法在分类精度方面的差异。所有实验都是在相同的软硬件环境下进行的。
每个数据集set1~set10的实例数目分别为,set1:235,set2:335,set3:435,set4:535,set5:635,set6:735,set7:835,set8:935,set9:1035,set10:1135。分别用ID3算法与改进的ID3算法进行学习,得到不同实例数目下的分类准确率,通过对比,得到如下结果:
表2 准确度比较
分组实例数量ID3算法准确率/%改进ID3算法准确率/% set1 235 77.3532 78.5284 set2 335 79.4389 80.3561 set3 435 82.5468 83.0732 set4 535 84.3689 84.8962 set5 635 86.0934 87.5309 set6 735 89.5802 91.5179 set7 835 90.4711 93.8153 set8 935 91.4092 94.7126 set9 1035 92.5471 94.5119 set10 1135 93.5923 95.1358 平均值 685 86.7401 88.4078 为了更直观的显示对比结果,我们可以用一个图来表示,如图3所示:
图3 准确度比较
4. 讨论
从ID3算法改进后的结果可以看出,没有出现像改进前,某个属性的信息增益比其他属性小很多的现象。第2节信息增益的计算部分,将根尖周炎这个信息增益远小于其他属性的属性删除,看似是去掉了非重要属性,简化了决策树的规模,但从医学角度来讲,根尖周炎也是判定口腔健康、预测其他疾病的重要因素,将其去掉并不合适。将ID3算法改进后,各个属性的信息增益度相差不大,从而避免了小数据被大数据淹没,这样就保证了决策树在实际应用中的可靠性。
从表2可以看出,随着测试数据集实例的增加,ID3算法与改进的ID3算法的准确率都逐步增加,但改进的ID3算法准确率更高。图3是ID3算法改进前后的准确率对比,横轴代表实例数目,纵轴代表准确率,上面的曲线是改进的ID3算法的准确率,下面的是ID3算法的准确率。从图中可以看出,相同的实例数目,改进后的ID3算法的准确率高于改进前。通过与医学知识对照,可以得出本文构造的决策树是有实际意义的。
参考文献:
.兰州大学学报(自然科学版), 2007, (06) :66-69
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。 返回电子论文列表