双重加权朴素贝叶斯算法预测乳腺癌复发率

2021-05-28 13:43冯照石范祺

冯照石 范祺

摘 要:针对朴素贝叶斯算法在处理不平衡数据时准确率不高的问题,提出类权重和属性值权重相结合的双重加权朴素贝叶斯算法.双重加权可降低算法的属性独立假设对分类结果的影响,提升少数类对分类过程的作用.乳腺癌患者复发率预测结果表明,双重加权朴素贝叶斯算法相对于传统的朴素贝叶斯算法、属性值加权的朴素贝叶斯、K最近邻分类算法、支持向量机分类算法、随机森林算法,准确率上分别从0.72,0.79,0.77,0.80,0.81提升至0.84,精确率和召回率均有不同程度的提升.

关键词:算法改进;数据不平衡;双重加权;乳腺癌复发

[中图分类号]O171   [文献标志码]A

Double Weighted Naive Bayes Algorithm for PredictingRecurrence Rate of Breast Cancer

FENG Zhaoshi,FAN Qi*

(School of Computer Science and Technology,Huaibei Normal University,Huaibei 235000,China)

Abstract:Aiming at the problem of low accuracy of Naive Bayes algorithm in dealing with unbalanced data,a double weighted Naive Bayes algorithm is proposed,which combines class weight and attribute value weight.The double weighting reduces the influence of attribute independence hypothesis on classification results and improves the effect of a few classes on classification process.The experimental results show that compared with the traditional Naive Bayes algorithm,Naive Bayes algorithm with weighted attribute values,K nearest neighbor classification algorithm,Support Vector Machine classification algorithm and Random Forest algorithm,the accuracy of the double weighted Naive Bayes algorithm is increased from 0.72,0.79,0.77,0.80 and 0.81 to 0.84 respectively,and the accuracy and recall rate are also improved to varying degrees.

Key words:improved algorithm;unbalanced data;double weighting;recurrence of breast cancer

樸素贝叶斯算法是分类算法中的经典算法之一,分类算法简单且十分高效.算法本身是基于独立性假设条件,且在面对不平衡数据时分类结果往往有所降低,故人们在提高朴素贝叶斯的分类性问题上做了广泛的研究和改进.邓维斌[1]等提出了一种基于粗糙集的属性加权方法.Hall[2]提出了一种基于决策树的属性加权方法.Chao Qun[3]等将一些关于朴素叶斯的工作应用到VDM的重量训练实例中,分配根据估计的条件概率与真正的条件概率的区别,对体重进行反复调整.Jiang[4]等提出根据不同类中属性分配特定权重的细粒度加权方法,使模型在分类性能上具有一定优势.

肿瘤阳性预测问题中,数据具有严重的不平衡性,如何提高分类结果的准确性成为数据挖掘中的重要研究方向,具有重要的研究意义.[5]由于朴素贝叶斯模型基于假设各特征条件相互独立,且每个特征项的权重相同,并不适合现实情况,预测结果可能会出现误差.许多专家学者为了让朴素贝叶斯的分类结果更加准确做了大量的研究和实验,以期提高朴素贝叶斯算法的分类性能和准确性.本文提出一种将属性值加权和类权值相结合的双重加权朴素贝叶斯算法,通过建立复发预测模型,提供较为准确的个体化预测结果,为临床医生的辅助治疗提供参考.笔者使用该方法对乳腺癌复发率进行预测的结果表明,双重加权朴素贝叶斯算法表现出更好的分类性能,对乳腺癌患者复发率预测更加准确.

1 朴素贝叶斯分类算法

朴素贝叶斯模型是基于假设各特征条件相互独立,以贝叶斯算法为基础的一种简单、稳定、易实现和有着较好分类效率的分类算法.[1]朴素贝叶斯分类的定义为:

(1)设x={c1,c2,c3,…,cn}是一个待分类的项,而每一个c为x的一个特征属性.

(2)有类别集合x={c1,c2,c3,…,cn}.

(3)已经知道分类项的集,统计各类别下的各个特征属性的条件概率.即:

(4)假设每个特征属性之间是相互独立的,由贝叶斯定理可以推导出:

因为分母为常数,故只要把分子最大化即可.又因为每个特征属性之间是相互独立的,所以有:

2 双重加权朴素贝叶斯算法

2.1 属性值加权

属性值加权朴素贝叶斯分类器算法(Correlation-based Attribute Value Weighted Naive Bayes,CAVWNB)是一种对所有属性值都增加一个不同的权值,该权值的大小只与该属性数值的重要性相关,与类标记无关.该权重削弱了朴素贝叶斯网络分类算法的属性独立假设对分类结果的影响,是传统属性加权横轴方向上的扩展,使属性值加权方法更具有细粒度.属性数值的权重是由属性值与类之间的关联性和属性值与属性值之间的冗余性共同决定.关联性大的属性值具有较大的权值,冗余性大的属性值具有较小的权值,关联性大且冗余性小的属性值具有较大权值,关联性小且冗余性大的属性值具有较小的权值.

对于某待测实例x=,用NI(bi,A)表示属性值bi与类变量A之间的关联性;用NI(bi,bj)代表属性值bi与属性值bj之间的冗余性,j的取值为1~n,并且i≠j,因此,在CAVWNB算法中,属性值bi的权值Wi,bi用公式(1) 采用相互信息进行度量计算关联性NI(bi,A)和冗余性NI(bi,bj).

算法的设计思路:假设属性值与类之间的相互信息取值大,属性值与其他属性值之间的冗余性和相互信息度量取值小,则该属性值对分类结果影响就越大,属性值的权重就越大.属性Bi与类变量A之间的相互信息计算公式为:

属性Bi与属性Bj之间的相互信息计算公式为:

算法需要对某一个属性值的权值进行计算,需要计算的是属性值与类变量之间的关联性,以及不同属性值之间的依赖性.在计算过程中,需要对公式(2)(3)稍作变化.属性值a与类变量C之间的相互信息计算公式为:

分别对Ibi,A和Ibi,bj进行归一化处理得到NIbi,A和NIbi,bj,即分别除以平均相互信息.

由(1)式可得,基于相互信息方式下属性值的权值为:

2.2 类权值

Frank提出了一种采用黄金分割系数的类权值选取方式,从类别信息自动生成加权方案.该权重使得分类器在分类的时候倾向于少数类样本,提高少数类分类的准确性.AVG(qt)每一类的平均个数#(qt)为类中的样本个数,其对角线元素为样本的权重.

2.3 双重加权朴素贝叶斯算法

属性值加权方法是在原有权值的基础上,将权值矩阵在横轴方向进行扩展,更加细粒度,使属性值加权后的朴素贝叶斯分类器能够更好地削弱属性条件独立假设;类权值使得分类器在分类过程中少数类的作用得到提升,使得分类器在处理不平衡数据时,更加严谨.笔者提出双重加权朴素贝叶斯公式,在使用更加细粒度对每一个属性值加上不同权重的同时,对不同类别进行加权,综合计算权重值.

朴素贝叶斯网络分类算法假设属性之间是相互独立的,故双重加权朴素贝叶斯分类器算法假设属性值之间也是相互独立的.双重加权朴素贝叶斯分类算法用公式(10)来分类.

算法流程如下:

算法:双重加权的朴素贝叶斯算法.

输入:训练实例集C,待测实例x.

输出:待测实例x的类标签 .

步骤:

1.对每一个具体的属性值bi:

(1)根据公式(2)计算属性值bi与类变量A之间的相互信息Ibi,A.

(2)根据公式(4)计算属性值bi与类变量A之间的关联性NIbi,A.

2.对每一对属性值bi与属性值bj:

(1)根据公式(3)计算属性值与属性值之间的相互信息Ibi,bj.

(2)根据公式(5)计算属性值与属性值之间的冗余性NIbi,bj.

3.根據公式(8)计算任意一个属性值bi的权值.

4.根据公式(9)计算不同类的权值.

5.根据公式(11)计算双重权重的具体数值.

6.基于双重加权的数据集构建朴素贝叶斯分类器.

7.根据公式(12)计算测待测实例x的类标签.

8.返回待测实例x的类标记.

3 双重加权朴素贝叶斯算法在乳腺癌患者复发率预测中的应用

数据来源于妇女健康饮食与生活(WHEL)计划回顾性纵向队列研究.WHEL数据库包含常规地从多个基于人群的癌症登记处收集的发病率和生存率数据.实验在JuPyter平台上使用Python3.6语言开发,实验配置为Inter Corei5-4200H cpu@2.80GHz Windows 7.

实验数据进行预处理,把所有属性列转化为数值型.运用多重插补对缺失值进行填补,实验使用十次十折交叉验证法.将患者诊断年份、年龄、肿瘤大小、肿瘤分期、肿瘤等级、雌激素受体状态、孕激素受体状态、淋巴结阳性数目、婚姻状态等入选特征属性.类变量四个取值分别代表:三年内复发、三至五年内复发、五至十年内复发或者十年内无复发.分类数据见表1.

实验选取前三个样本属性的双重加权权值进行举例,分别用朴素贝叶斯(NB)、属性值加权朴素贝叶斯(CAVWNB)、双重加权朴素贝叶斯、K最近邻(KNN)分类、支持向量机(SVM)、随机森林(RF)分类器对目标属性进行分类,实验结果见表2.

实验结果表明,双重加权朴素贝叶斯算法相对于传统的朴素贝叶斯算法(NB)、属性值加权朴素贝叶斯(CAVWNB)、K最近邻分类算法(KNN)、支持向量机分类算法(SVM)、随机森林算法(RF),其准确率、精确率、召回率均有不同程度的提升,说明在处理不平衡数据上,双重加权朴素贝叶斯算法有更好的分类能力,在预测乳腺癌患者复发率预测上有较好的表现.

4 结语

本文提出双重加权朴素贝叶斯算法,利用属性值之间的相关性,计算属性值与类之间的依赖关系,属性值与属性值之间的冗余性计算属性值的权重,更好的削弱属性条件独立假设,达到更高的分类精度.类权值对类别进行加权处理,使得分类在面对不平衡数据时,提升少数类对分类结果的作用,让分类器倾向于少数类.基于双重加权朴素贝叶斯乳腺癌患者复发实例集上构建的朴素贝叶斯分类器,实验表明,双重加权朴素贝叶斯算法在乳腺癌患者复发率预测上准确率达到0.84.

双重加权朴素贝叶斯算法表现出更好的分类性能,在乳腺癌患者复发率预测方面更加合理,亦可以为其他疾病复发率预测提供更加合理的统计学分类方法.该实验结果可为临床医生提供科学的判断依据:一是避免对可能复发患者治疗不足,或者对复发概率小的患者进行过度治疗,造成的身体损害和医疗资源的浪费.二是对三、五和十年内患者复发率的准确预测,有利于患者选择合适的个性化治疗,改善其治疗效果,显著延长患者的生存时间.该实验还可以识别出一些临床因素:年龄、肿瘤大小、等级、雌激素受体状态、孕激素受体状态等,这些因素可增加乳腺肿瘤复发风险,预测某些高危患者,使得患者的生存获益达到最高,对乳腺癌患者临床治疗有较好的指导意义.

参考文献

[1]邓维斌,王国胤,王燕.基于Rough Set的加权朴素贝叶斯分类算法[J].计算机科学,2007,34(2):204-206.

[2]Hall M.A decision tree-based attribute weighting filter for naive Bayes[C]//International Conference on Innovative Techniques and Applications of Artificial Intelligence. Springer, London, 2006: 59-70.

[3]Li C,Jiang L,Li H.Naive Bayes for value difference metric[J].Frontiers of Computer Science,2014,8(2):255-264.

[4]Lu G,Xia Y,Wang J,et al.Research on text classification based on TextRank[C]//2016 International Conference on Communications,Information Management and Network Security.Atlantis Press,2016.

[5]段淑敏.時间序列数据挖掘关键问题分析[J].中国市场,2016(03):38-39.

[6]范涛,方贤文.一种基于Petri网和因果关系矩阵的事件日志过程挖掘方法[J].牡丹江师范学院学报:自然科学版,2020(4):10-14.

[7]陈凤娟.不确定数据中的频繁闭项集挖掘[J].牡丹江师范学院学报:自然科学版,2016(3):22-25.

编辑:琳莉

收稿日期:2020-12-14

基金项目:国家自然科学基金项目(61976101);安徽省自然科学基金项目(1908085QF286);

安徽高校自然科学研究项目(KJ2017A390)

作者简介:冯照石(1993-),男,安徽宿州人.硕士研究生,主要从事数据挖掘研究;范祺(1979-),男,安徽淮北人.副教授,硕士,硕士生导师,主要从事数据挖掘与应用、人工智能、癌症信息学等研究.

通信作者:范 祺