改进DS证据理论在中医诊断模型中的应用

2020-09-29 08:08袁付勇
计算机工程与设计 2020年9期
关键词:信度准确率证据

袁付勇,毕 利

(宁夏大学 信息工程学院,宁夏 银川 750021)

0 引 言

中医辨证是对症状信息的整合与分析,要求医师有扎实的中医知识和丰富的诊断经验,给中医的传承和应用带来了挑战。智能诊断是中医信息化发展中重要的一部分,利用人工智能算法实现疾病诊断可以帮助医生更全面、准确地确定病情。国外对中医应用的研究也在不断深入,包括对中医诊断决策算法的研究[1-3]、中医药的病理研究[4]等,其中诊断决策算法以决策树、神经网络为主。国内对中医的研究更为重视,中医智能化进程不断加快[5],诊断决策算法的设计显得尤为重要,很多智能算法都曾被尝试应用到中医诊断中,其中人工神经网络算法凭借较好的非线性映射能力、自学习能力被广泛应用于中医诊断的各个层面[6,7],如BP神经网络[8,9]、RBF神经网络[10]、PNN神经网络等[11,12]。随着智能诊断应用性要求的不断提高,针对单种疾病的智能诊断无法满足应用的需求,而单个神经网络算法在应用到多种疾病混合预测时很难达到预期准确率。DS证据理论是处理不确定问题的概率组合理论,可融合不同来源的数据,在信息融合方面有很好的效果。然而对证据源本身的准确性并未进行充分考虑。基于此,给出加入证据源准确性系数的方法对DS证据理论进行改进,并以不同神经网络的预测结果作为不同证据源的基本信度函数,设计基于改进DS证据理论的诊断模型,实现对3种疾病的混合预测。

1 神经网络理论

人工神经网络是对人脑神经处理事物的一种模拟,通过神经元组成网络进行数据处理,MP模型是较早且影响力最大的神经元模型,其模型如图1所示。

图1 MP神经元模型

图1中,x1…xi…xn是神经元的输入值,yo是输出值,wi是各个输入值对应的权值,b是神经元的阈值,f(.)是激活函数。神经元的输出如式(1)

(1)

激活函数也有很多种,如线性函数、S型(Sigmoid)函数、RBF(radial basis function)函数等。由于激活函数和拓展方式的区别,人工神经网络又分为很多类。在中医领域,病例数据中症状往往具有多值属性、多类标的特点,辨证也具有复杂性,使得症状与结果之间往往呈非线性关系,而神经网络凭借网络结构能够完成对数据的非线性映射,在解决这类问题上比较适用。在所设计的实验中,单个网络的预测模型选用了拓扑结构不同的BP神经网络、RBF神经网络、PNN神经网络和LVQ神经网络。

1.1 BP神经网络

BP神经网络是一种多层前馈网络,网络结构为输入层、隐含层和输出层,每两层之间通过线性变换来连接,隐含层的激活函数一般为S型函数,如式(2)、式(3)

(2)

(3)

其中,xi为神经元的输入值,f(hi)为神经元的输出值。BP神经网络的性能由隐含层节点数、各层之间的连接权值、各神经元的阈值共同决定。常见的BP神经网络的结构比较简单,是最早被应用于疾病预测领域的网络结构,为智能算法应用到疾病诊断领域的实现开拓了思路和方法,但该神经网络由于自身结构的局限性,在应用时也存在一些难以解决的问题,包括模型结构上如何选择最优的隐含层神经元数目、如何解决网络运算过程中的局部最优困境,如何提高在多预期结果条件下的预测准确率等。

1.2 RBF神经网络

RBF神经网络是一种单隐层前馈神经网络,计算过程比BP网络更复杂,拥有更好的非线性拟合能力。相比于BP神经网络,输入层到隐含层为非线性变换。隐含层的激活函数一般使用径向Gaussian函数,公式如式(4)

(4)

1.3 PNN概率神经网络

PNN神经网络是一种双隐层前馈网络,结合了密度函数估计和贝叶斯决策理论。网络结构分为输入层、模式层、求和层和输出层,属于完全前向的计算过程,节省了反向误差传播的计算时间,其输入层到模式层实现非线性变换,求和层对类别进行密度函数估计。模式层的激活函数为径向基函数,输出值为一个标量。模式层的激活函数如式(5)

(5)

其中,x表示输入向量,xij表示第i类的第j个中心点,δ表示平滑参数,d为前一层的维数。PNN网络的性能主要受模式层平滑因子的影响。相对于RBF神经网络,概率神经网络在判定类别过程中加入了密度函数估计与贝叶斯决策,不需要反向调参,学习时间短,同时具备容错性,但对训练集的代表性要求较高,计算过程中需要的存储空间也较大。

1.4 LVQ神经网络

LVQ神经网络是对SOM网络(Kohonen自组织网络)的一种改进网络。该网络结构分为输入层、竞争层和输出层,不同于另外3种网络模型,LVQ神经网络在模型训练学习过程中结合了有监督学习和竞争学习两种方式对竞争层的参数进行调整,其中输入层和竞争层之间为全连接,竞争层和输出层为部分连接。LVQ神经网络的隐含层按照类别数目分成多个神经元组,神经元组的每个神经元用输入层和隐含层之间的权值作为参考矢量的分量,在训练过程中修改权值来更接近预期结果。其中网络中输入向量和竞争层神经元的距离计算过程如式(6)

(6)

其中,R表示输入向量的维度,xj表示输入层第j个神经元,wij表示输入层第j个神经元到竞争层第i个神经元的权值,通过计算距离来得到获胜神经元。LVQ神经网络的优点在于不必对向量进行规格化,可以直接对输入向量进行分类,结构较为简单且效率高。但某些情况下,输入层到竞争层之间的权值可能不收敛,另外LVQ神经网络在训练过程中忽略了输入层各维对结果的影响性差异,也可能会带来误差。

2 DS证据理论及改进

DS证据理论是用于整合多源不确定信息的常用推理方法,是一种有效的信息融合理论[13],可以满足比概率论更弱的条件,在医学诊断、组合决策、故障诊断和物联网等领域有广泛的应用[14-17]。

2.1 基本概念

定义1 辨识框架。即所研究命题在所有可能情况下出现的结果的并集,辨识框架是证据理论最基础的概念,描述了最终所有可能出现的结果,定义如下

θ={θ1,θ2,…,θi,…,θn}

(7)

其中,θi表示命题可能出现的一种结果,结果之间互斥,在一种情况下只可出现一种结果,n表示结果的个数。

定义2 基本信度赋值。又称mass函数,是对辨识框架里出现某些结果子集的基本概率分布,m(A)表示对结果子集A的基本信度赋值,定义如下

(8)

定义3 基本信度函数。基本信度函数是出现某个结果时,对所有支撑该结果命题为真的结果子集进行基本信度赋值求和,决定了对该事件的确认程度,定义如下

(9)

2.2 DS证据合成规则

由经典的DS证据理论知,在证据源之间不完全冲突的前提下,运用Dempster规则可以完成不同证据源之间的证据组合,以两个证据源进行证据组合来举例,m1、m2表示两个不同证据源对于得到结果A事件的基本信度函数,则两者组合所得到的事件A发生的信任确认程度如式(10)

(10)

本文的研究是在多证据源进行组合的实验环境下进行,根据组合规则的特点,当证据源增加时,组合规则满足结合律和交换律,在此设共有n个不同证据源,各证据源的基本信度函数分别为m1、m2、…、mn,则关于结果事件A经过证据组合而得到的基本信任函数如式(11)

(11)

为了计算方便,式(11)中的归一化因子通过式(12)的方式得到

(12)

2.3 DS证据理论的改进

DS证据理论自1976年被提出后,因其在应用过程中可以满足比贝叶斯更弱的条件,实现多途径获取知识的有效融合,通过基本信度函数更直观表达命题结果的确定性,得到广泛的应用,但对DS证据理论的改进也从未停止过。DS证据理论在应用中出现的弊端主要体现在3个方面,首先是对证据的约束性,DS证据理论要求证据必须是独立的,且证据源之间尽量避免高冲突情况,否则就会出现“Zadeh悖论”之类的反预期结果;其次是辨识框架中元素的问题,当元素递增时,在计算过程中所产生的焦元会呈指数形式变大,消耗的计算时间也会增加,出现焦元爆炸问题;最后是证据合成的准确性问题,经典DS证据理论在合成过程中并未考虑证据源自身的可信度,也并未考虑证据源所提供证据的准确性,默认全部证据源准确性相同,这种做法在已知证据源准确性不一致情况下并未充分利用已知信息,在合成结果上可能存在误差。

结合本文实验场景,对于经典证据理论存在的问题进行分析如下:①针对证据组合中证据之间高冲突的问题,一般通过改进组合规则或对实验数据进行修正两种方式来解决,改进组合规则的相关算法有很多,例如李永忠等认为当证据冲突过大时应考虑证据的相似程度,通过计算证据间的相似程度求得权系数,在组合时考虑权系数的影响,以此为思路提出了对应的证据组合公式[18],但改进组合规则也会带来一些新的问题,经过研究李永忠、王力[19]等学者的组合规则,发现前两种组合方式增加了证据组合过程的计算量,第三种组合方式破坏了证据组合规则的交换律和结合律,由此可见,对组合规则的修改伴随着计算量增加或者组合优良特性被破坏的问题。而降低冲突的第二种方式,即对实验数据进行修正,例如徐凯通过修改原数据,利用指数形式替换原来的基本信度函数,使得合成过程中不会出现0值焦元[20]。这种方式使证据在符合逻辑的基础上又避免相互之间的高冲突问题,基于此,本文采取对实验数据进行修正的方式避免高冲突,具体实现为将单网络模型的预测结果设定为信度赋值是0.8,其余两个非预测结果的信度赋值为0.1,避免0值焦元的产生,减少了Dempster规则整体丢弃式处理方式带来的误差。②针对辨识框架中元素个数的问题,当辨识框架中元素较多时,通常通过两种方式进行改进:一是根据证据特点,设计快速算法进行计算;二是通过某种规则来减少焦元,从而进行近似计算。因本文所设计的实验选取数据为患痹病、湿阻、感冒3种病其中之一的患者数据,不存在同时多种病并发的病例,根据证据理论关于辨识框架的定义可知,元素数目为3个,不足以出现焦元爆炸类问题,不宜采用近似计算,计算过程较少,可以直接采用组合方式。③对于证据合成的准确性问题,大多数学者是对证据权重进行了调整,例如如李金玉等提出利用AHP法计算证据中各个证据的权重[21],王法玉等提出采用模糊综合评价法结合AHP法计算证据的权重[22],但该类方法仅是对证据完成权重调整,忽略了证据源准确性带来的影响。本文提出对各证据源准确性进行分析,在证据组合过程中考虑其带来的影响,引入证据源准确性系数λ来表示各个证据源的可信度,改进的DS理论组合规则计算如式(13)

(13)

其中,λA表示关于命题A的各证据源综合可信度,λA的计算方式如式(14),其中n是证据源的个数,λ1…λn为各个证据源的可信度,应满足0≤λi≤1。因为可信度系数的存在,各证据源的数据会有一部分处于未知领域,加入该系数后,处于未知领域的信息将被保留为可信比例的信度函数

(14)

为了验证方法的有效性,给出λ影响效果较小和较大的两个算例,设A、B、C为3个不同结果事件,m1、m2、m3、m4为4个不同证据源,合成结果见表1。

从验证算例的结果可以看出,在一般情况下,利用两种组合规则所得到的结果均符合预期结论,相比之下,加入证据源准确性系数后,改进规则的预期结果的基本信任函数略小于经典DS证据理论,并不改变结果的正确性。但当证据源所提供的基本信度函数为第二种情况时,利用DS理论所得到的结果无法判断A、B中哪个的可能性更高,但加入证据源准确性系数后,得到的结果为m(A)小于m(B),这种结果更为符合预期。

表1 DS证据理论组合验证算例

3 基于ANN和改进DS理论的预测模型

3.1 模型设计

实验根据病人症状对病名进行预测,预期结果为痹病、湿阻、感冒,每个病例的诊断结果为一种病名,不考虑多种病同时存在的情况。在预测前需要训练并保存神经网络组模型:首先对数据进行预处理,再利用预处理后的数据训练4种不同的神经网络,获取4种网络的准确率,并保存训练得到的神经网络组;模型在预测时,直接调用神经网络组进行预测,对所有预测结果进行证据组合,在证据组合计算时利用改进的DS证据理论组合规则,将网络的准确率转换为证据源准确性系数,经过证据组合得到最终的信度函数。模型的预测流程如图2所示。

图2 预测流程

3.2 模型的实现

依据模型设计的设想,具体实现如下:

输入:原始数据集

输出:预测的疾病编号

步骤1 将原始数据集进行预处理,并随机分为90%和10%的两份,分别作为训练集和测试集;

步骤2 利用训练集数据对4种类型的网络分别进行训练并保存(BP神经网络、RBF神经网络、LVQ神经网络、PNN神经网络);

步骤3 载入保存的4个网络模型,对测试集进行预测,产生4组预测值,将预测值转化为3种病的基本信度赋值;

步骤4 对步骤3所得到的4组基本信度赋值利用改进的DS证据理论进行证据组合,得出每种病的基本信度函数。选取最大的一项作为最终的预测结果,若没有则提示预测失败,算法结束。

4 实验和评价

4.1 数据集和评价指标

4.1.1 数据集

本文所用数据集为某中医院2004-2016年的真实诊断数据,数据集中包含性别、症状、舌像、脉象、对应疾病等信息,共3个数据表:ClinicPatient、GlobalSickDrug、GlobalSickinfo,依次表示病人信息、用药信息、诊断信息。

4.1.2 评价指标

实验通过模型预测的准确率、100条数据预测用时这两个量化指标对模型进行评价。

4.2 数据预处理

步骤1 根据实验的需要,从数据库中分离出病人的IC卡号、性别、就诊时间、症状、舌像、脉象、证候7条属性作为初始数据;

步骤2 利用IC卡号和就诊时间区分不同的病案,删除相同病案,删除症状属性、舌像属性、脉象属性不完整的病案,最终保留3种证候各1500条的数据集;

步骤3 对症状语句进行分词,通过词频汇总统计出频率较高的症状,建立症状值字典;并用相同的方法建立舌像值字典、脉象值字典;

步骤4 读取每条病例数据,通过同义词替换对数据进行规范化,用症状值、舌像值、脉象值字典分别对症状属性、舌像属性、脉象属性进行映射,出现症状记为1,未出现记为0,性别分别用0、1表示,以上属性共96项;3种证候使用0、1、2进行表示,得到用于训练和测试的数据矩阵。

4.3 训练神经网络组

BP神经网络:通过网格搜索的方法寻找最佳隐含层节点数,节点数从5递增到20,每个节点的准确率取5次验证准确率的平均值,准确率统计如图3所示。

图3 BP神经网络准确率统计

最终选取隐含层节点数为9,此时模型的平均准确率为80%,模型保存为BP_net。

RBF神经网络:通过网格搜索的方法寻找最佳spread值,spread从0.4递增至1.6,每次增加0.1,每个spread的准确率取5次验证的平均值,准确率统计如图4所示。

图4 RBF神经网络准确率统计

最终选取的spread值为1,此时模型的平均准确率为81%,保存为RBF_net。

LVQ神经网络寻找最佳隐含层节点数同BP网络,最终选择隐含层节点为30,平均准确率为75%,保存为LVQ_net;PNN神经网络取默认参数,保存为PNN_net,平均准确率为89%,神经网络组训练完成。

4.4 DS证据融合

调用之前4个网络模型,将测试集输入网络,生成4组预测值。将4组结果转化成对3种疾病的基本信度赋值:将预测编号所对应病名的基本信度赋值确定为0.8,其余两种确定为0.1。之后进行证据组合,计算过程如式(13),得到的结果表示3种病的最终基本信度函数。

4.5 结果分析

实验将从测试集中随机选取100条数据测试,单独使用BP网络、RBF网络、LVQ网络、PNN网络分别进行预测,记录预测时间和准确率,再利用本文所提出的模型进行预测,与上述4种网络进行对比进行分析。

4.5.1 证据源独立性分析

在进行实验结果分析前,首先进行多次预测实验,检验证据源之间是否独立,是否符合4种网络预测属于不同证据源。经过多次实验,4个单独神经网络模型的错误预测序号不存在雷同,随机选取一次实验,对5个模型的错误预测序号统计见表2。

表2 错误预测样本统计

分析可知,4种神经网络因为训练过程和分类方式不同,用不同的计算过程对数据完成了处理,造成各模型分类结果也不完全相同,符合DS证据理论对证据源相互独立的要求。

4.5.2 实验结果对比分析

记录预测时间方面,取5次预测时间的平均值;记录预测准确率方面,对测试集进行10次随机选取100条数据的测试,取其预测的准确率;统计结果见表3。

表3 各模型平均准确率统计

通过对比结果可以看出,基于ANN和改进DS理论的预测模型在平均准确率上高于所有单个网络,准确率保持在90%以上,其余4个网络准确率在75%至89%不等,分析可知,由于所有神经网络的预测准确率都在70%以上,对于单个样本而言,加入改进的DS证据理论后,随着概率的合成会逐渐增大预测的准确率,因此得到比单个网络模型更优的结果。在预测用时上,本文提出的模型耗时最长,这是因为该模型的预测是在4组网络模型的基础上进行,预测时间为4个网络并行所用时间与证据组合计算时间之和,但100条数据的整体响应时间控制在0.15 s之内,在实时诊断中是能够接受的。

5 结束语

利用证据源准确性系数对DS证据理论进行了改进,按证据源的可信度对证据合成进行加权处理,解决了不同准确度的证据源合成问题。将改进的DS证据理论应用到中医诊断模型中,以多个不同神经网络的预测确定基本信度函数,以各个神经网络的准确度确定证据源的准确性系数,最后应用改进的DS证据理论进行证据组合。实验结果表明,该模型对3种疾病的预测准确率高于单个神经网络,且稳定保持在90%以上,对更多种疾病的混合预测具有可扩展性;该模型的预测用时控制在可接受时间范围内,可以应用到对特定疾病的实时诊断中。但该模型所适用的情景为3种疾病的混合预测,仍不能满足实时辅助诊断的要求,在后续的研究中将增大数据集,扩展疾病种类,探究在更大数据集情况下,如何更好兼顾准确率和响应时间。

猜你喜欢
信度准确率证据
《广东地区儿童中医体质辨识量表》的信度和效度研究
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
平衡损失函数下具有时间效应和通胀因子的信度估计
高速公路车牌识别标识站准确率验证法
对于家庭暴力应当如何搜集证据
手上的证据
耳鸣残疾问卷中文版的信度和效度检验及其临床应用
手上的证据