医疗诊断上一种基于特征交互的MIFS 算法

2023-05-24 09:06王新利李雨沛李海洋
智能计算机与应用 2023年5期
关键词:互信息特征选择集上

王新利,李雨沛,李海洋

(1 上海理工大学 理学院,上海 200093;2 西交利物浦大学 智能工程学院,江苏 苏州 215000)

0 引言

近年来,随着医疗诊断数据增多,检测指标也随之增加,如何从大批量的诊断指标中筛选出对诊疗判断最为有利的指标,是机器学习在医疗领域应用中的一个研究热点[1]。

现有的研究通常将诊断的指标看作特征,患病的程度看作类别,筛选诊断指标,即选择对判断类别有利的特征,去除与判断类别无关的指标,也就是选择“好的”特征,去除“坏的”特征。特征选择主要有3 种常用的方法,分别是包裹法、嵌入法和过滤法。与过滤法相比,包裹法和嵌入法的特征选择效果更好,但是存在过拟合、计算复杂度高和效率低等问题,而过滤法的评价准则简单、运算效率高,应用范围更广泛[2]。

过滤法根据不同的评价准则来选择最优的特征子集,常用的评价准则有距离度量标准、一致性度量标准、依赖性度量标准和信息度量标准等[3]。距离度量标准用几何距离或者概率距离的大小来度量特征;一致性度量标准根据不一致样本数与总体样本比率来评估特征;依赖性度量标准则根据特征与类别的相关系数和特征之间的冗余性来判断特征;信息度量标准通过熵、互信息以及交互信息等来评价特征。相比于其他度量标准,信息度量标准可以衡量特征之间、特征与类别之间的非线性关系,因此信息度量标准作为过滤法的特征选择准则被广泛应用[4]。在信息度量标准中,“好的”特征指与某类别互信息大的特征,“坏的”特征指与已选特征的互信息大的特征。互信息可以度量特征与类别的相关性或两个特征之间的相关性,互信息越大,则相关性越大。特别地,两个特征之间的“相关”称为“冗余”,两者之间的互信息越大则冗余性越大。

另一方面,交互信息也是信息度量标准中的一个重要的评价指标。例如,在异或问题中,两个特征分别与类别无关,但是这两个特征联合起来与类别有强相关性,说明这两个特征有交互性,称这两个特征为交互特征。在许多特征选择的算法设计中,交互信息也越来越被重视。姜文煊等[5]将交互信息加入到基于互信息的评价指标中,得到一种新的评价标准,并将其应用于地质评价中,获得了较高的评价准确率;陈昊楠等[6]根据交互信息选择交互特征,根据条件互信息最大化选择低冗余的特征,将两者结合得到一种新的特征选择方法,并应用于癌症分类中,有效提高了分类的准确率;顾翔元等[7]使用对称不确定性计算特征的相关性,再计算特征的交互信息来消除冗余特征,在不同的分类器上都获得了较高的精度。

根据信息度量标准的过滤法进行特征选择时,互信息特征选择算法(MIFS)是一种经典的算法,其根据特征与类别之间的互信息来衡量二者的相关,用特征之间的互信息来衡量两个特征的冗余,通过参数来调整去除冗余的大小[8]。MIFS 算法可以有效地选出与类别相关性大,特征之间冗余性小的特征,但是随着已选特征数量增加,冗余信息也会随之增多,进而增大与相关信息的差值,导致算法过度重视“冗余”而忽略“相关”。为解决这个问题,Kwak等[9]在MIFS 算法的基础上,增加了一个系数,用来平衡相关信息与冗余信息不可比的情况,得到了MIFS-U 算法。MIFS 算法和MIFS-U 算法都含有参数,参数的不确定性导致了这两个算法自适应性不强。进一步地,Peng 等[10]提出了一种不含参数的最小冗余最大相关算法(mRMR),用已选特征子集个数的倒数来代替参数,使算法具有更强的普适性和自适应性;ESTÉVEZ 等[11]在mRMR 算法的基础上,将冗余信息的取值范围控制在0 到1 之间,对冗余项做归一化处理,得到了标准化互信息特征选择方法(NMIFS);Zhang 等[12]提出一种权重系数的加权归一化信息过滤准则,进一步解决了相关信息和冗余信息不平衡的问题。

MIFS 算法以及其各种改进算法都是围绕着“度量冗余”做改进,应用于医疗临床诊断数据分类时,分类效果较好,但是其并未考虑不同诊断指标之间的交互性。为进一步提高医疗临床诊断的分类精度,本文在MIFS 算法的基础上提出一种基于特征交互的MIFS 算法,应用于医疗临床诊断数据的分类。首先,根据特征交互信息和冗余信息的关系,重新定义不含参数的冗余系数,最大程度保留特征的交互信息,去除冗余信息;其次,用已选特征子集个数的倒数来平衡相关信息与冗余信息的不可比;最后,与其他7 种基于互信息的特征选择方法比较,证明该算法精度明显高于其他方法。

1 背景知识

信息论中,通常用信息熵和互信息来度量特征和类别的相关性、特征之间的冗余性[13]。特征fi的信息熵(Entropy)定义如式(1):

其中,p(fi)表示特征fi的概率密度函数,H(fi)的取值在0~1 之间。

特征fi和fj的联合熵(Joint Entropy)和条件熵(Conditional Entropy)定义如式(2)和式(3):

其中,p(fi,fj)表示特征fi和fj的联合概率密度函数,p(fi |fj)表示在特征fj的条件下fi的概率密度函数。

特征f1,…,fn的联合熵定义如式(4):

其中,p(f1,f2,…,fn)表示特征f1,…,fn的联合概率密度函数。

特征fi和fj的互信息(Mutual Information,MI)定义如式(5):

互信息可以度量特征与类别或特征之间的相关性,当一个特征与类别的互信息越大时,这个特征与类别之间的相关度越大;当两个特征之间的互信息越大时,则这两个特征的冗余度越大。

熵、互信息之间的关系如式(6)和式(7):

除了熵和互信息,交互信息也是信息论中重要的度量指标,交互信息又称为交互增益(Interaction Gain,IG),指的是三方或者多方的交互作用,通常三方的交互是指特征fi和fj以及类别C之间的交互信息,多方则是多个特征之间与类别的交互信息。三方交互增益的定义如式(8)[14]:

其中,I(fi;C)表示特征fi和类别C的互信息;I(fj;C)表示特征fj和类别C的互信息;H(fi,fj,C)是特征fi和fj以及类别C的联合熵;H(C)是类别C的熵;H(fi)是特征fi的熵;H(fj)是特征fj的熵。

根据熵与互信息的定义,交互信息的定义还可以用式(9)表示:

其中,I(fi,fj;C)表示特征fi和fj与类别C的联合互信息。

当IG(fi;fj;C)<0 或者IG(fi;fj;C)=0 时,说明特征fi和fj与类别无关或者两者提供了相似信息;当IG(fi;fj;C)>0 时,表示特征fi和fj组合提供的信息量大于特征fi和fj分别提供的信息量之和,说明特征fi与fj具有交互性。

2 相关工作

下面介绍一些经典的基于互信息的特征选择算法,其中C表示类别,F表示原始特征集,S表示已选特征集,fj∈F表示候选特征,fi∈S表示已选特征。

Battit 等[8]提出了基于互信息的特征选择算法(Mutual Information Feature Selection,MIFS)。该算法通过最大化特征与类别之间的互信息,最小化特征之间的互信息来选择特征。MIFS 算法的评价准则如式(10):

其中,I(fj;C)表示候选特征fj与类别C的相关信息;I(fi;fj)表示已选特征fi与候选特征fj的冗余信息;参数α表示冗余系数,范围在0~1 之间,当参数为0 时,算法只计算相关信息,完全忽略冗余信息。

MIFS 算法可以有效地选出与类别相关性大,特征之间冗余性小的特征。但是当已选特征的数量变多时,冗余项相对于相关项会变得很大,这两项可能不在一个数量级上,导致冗余项占主导地位,相关项可能被忽略。

为了解决相关项与冗余项不平衡的问题,Kwak等[9]在冗余项中加入系数来平衡两项不可比,提出了一致性分布的互信息特征选择方法(Mutual Information Feature Selection Under Uniform Information Distribution,MIFS-U),评价准则如式(11):

MIFS-U 算法在一定程度上缓解了相关项与冗余项的不平衡问题,但是在MIFS 和MIFS-U 算法的评价准则中都有需要调节的参数,取值具有一定的随机性和主观性,导致算法的自适应性不强。在MIFS 算法的基础上,Peng 等[10]提出了一种不含参数的最大相关最小冗余算法(Minimal Redundancy Maximum Relevance,mRMR),评价准则如式(12)所示:

该方法用已选子集个数的倒数来代替参数α,不仅解决相关项与冗余项不平衡的问题,还使算法更具自适应性。在算法MIFS、MIFS-U 和mRMR 的评价准则中,都只涉及了特征的相关信息和冗余信息,特征和类别之间的交互性并未考虑。

Bennasar 等[15]关注到了交互信息的重要性,提出一种特征交互最大化的特征选择方法(Feature Interaction Maximization,FIM),其评价准则为式(13):

Salem 等[16]注意到粗糙邻域集中的特征交互信息,并根据模糊联合互信息最大化的原则来选择特征,提出了基于模糊联合互信息最大化的特征选择方法(Feature Selection based on Fuzzy Joint Mutual Information Maximization,FJMJM),其评价准则如式(14):

Wan 等[17]提出一种混合式特征选择方法来尽可能地保留交互特征,去除冗余特征;Gu 等[18]重视三方交互信息在特征选择中的作用,提出了一种基于等间隔划分和三方交互信息的特征子集选择算法来优化特征选择的效果,提高算法精度。虽然这些算法也获得了较好的特征选择结果,但在重视交互的情况下,对冗余的关注却被大大降低。如何同时关注特征相关、冗余和交互,最大程度地保留相关、交互的特征,去除冗余特征,这是基于互信息的特征选择算法改进的一个重要的研究内容。

3 基于特征交互的MIFS 算法

MIFS 算法及其改进算法采用最大相关最小冗余评价准则,可以较有效地选出特征子集。两特征与类别之间的互信息、交互信息、熵的关系如图1 所示。图1 中a部分表示在类别C下,特征fi和fj的互信息I(fi;fj |C),可以用公式(15)表示;b部分表示两特征与类别之间的交互信息IG(fi;fj;C);c部分表示在特征fj的条件下,特征fi和类别C的互信息I(fi;C |fj);d部分表示在特征fi条件下,特征fj和类别C的互信息I(fj;C |fi)。

图1 两特征与类别之间的互信息、交互信息、熵的关系Fig.1 Relation of mutual information,interactive information and entropy between the two features and categories

图2 时特征与类别的关系Fig.2 Relationship between features and categories when

图3 特征与类别的关系Fig.3 Relationship between features and categories when

MIFS 算法在实现“最小冗余”的目标时,同时产生了“最小交互”。然而,当交互信息越大时,特征越应该被选入特征子集,因此需要最大程度地保留交互信息,以“最大交互”为目标。为了实现特征和类别的最大相关,同时尽可能兼顾特征之间的最小冗余和最大交互,本文提出了一种基于特征交互的 MIFS 算 法(Feature Interaction Based MIFS Algorithm,MIFS-FI),评价准则如式(16):

其中,S表示已选特征子集;F表示原始特征集;fi表示已选特征;fj表示候选特征;I(fj;fi)表示特征fi和fj的互信息;I(fj;C)表示特征fj和类别C的互信息;I(fj;fi |C)表示在类别C的条件下,特征fi和fj的互信息;IG(fj;fi;C)表示特征fj和fi以及类别C的三方交互信息。

基于特征交互的MIFS 算法(MIFS-FI)具体流程见表1。

表1 MIFS-FI 算法流程Tab.1 MIFS-FI algorithm flow

4 实 验

4.1 数据集与数据集的处理

本文选取14 个关于医疗诊断的数据集来验证本文所提出算法的有效性。除了第7 个数据集均来自Matlab 数据库,其他13 个实验数据集来自美国加州大学欧文分校提供的UCI 数据库,14 个数据集的样本个数、特征数和类别个数见表2。

表2 数据集的描述Tab.2 Description of the dataset

表2 中的数据集,有些存在不同程度的特征值缺失,本文采用均值替代法对存在缺失值的数据集进行填补后做归一化处理,xinew表示xi归一化之后的样本,式(17):

其中,xi表示第i个样本;xmin表示样本中的最小值;xmax表示样本中的最大值。

归一化数据有利于加快模型的收敛速度。

4.2 对比方法介绍和算法评价指标

为验证本文提出算法(MIFS-FI)的有效性,与7种基于互信息的特征选择方法进行对比实验。这7种方法分别是互信息最大特征选择算法(Mutual Information Maximum,MIM)、基于互信息的特征选择算法(Mutual Information Feature Selection,MIFS)、最大相关最 小冗余算法(Minimal Redundancy Maximum Relevance,mRMR)、条件信息特征提取算法(Conditional Informative Feature Extraction,CIFE)、基于模糊联合互信息最大化的特征选择方法(Feature Selection based on Fuzzy Joint Mutual Information Maximization,FJMJM)、动态变化特征选择算法(Dynamic Change of Selected Feature,DCSF)和特征交互最大化的特征选择方法(Feature Interaction Maximization,FIM)。

其中MIM 算法只考虑了特征相关的算法,MIFS算法、mRMR 算法、CIFE 算法、DCSF 算法考虑了特征的相关和冗余。另外,MIFS-FI 算法重视了交互信息,需要选取一些关注了交互信息的算法进行对比实验。本文选取考虑了特征交互和相关的FJMJM 算法、FIM 算法进行对比,上述几种算法的构造见表3。

表3 算法构造比较Tab.3 Comparison of algorithm construction

由于BP 神经网络分类精度高,且具有强自适应性、非线性映射等优点,被广泛应用于医疗诊断分类,因此本文选用BP 神经网络模型做分类器来检验选择特征的质量,其评价标准为分类准确率(ACC)、F1指数和召回率。

4.3 实验结果与分析

实验中所有特征选择方法选择特征数量不超过总特征的30%,BP 神经网络的迭代次数设置为1 000,学习率设置为0.02,权值的初始化范围为-0.5~0.5 之间。根据之前的研究可知MIFS 算法与MIFS-U 算法中的参数取值在0.5~1 之间,算法性能最优,本文将这两个算法的参数取为0.5。MIFSFI 算法与7 种算法在14 个数据集上的分类准确率如图4 所示,其中横坐标表示特征选择的个数,纵坐标表示分类准确率。由图4 可知,在14 组数据集上,本文提出的MIFS-FI 算法相较于7 种特征选择算法的分类准确率一直维持在较高水平。特别地,在D7这个高维小样本数据集上,MIFS-FI 算法在分类器下的分类准确率超过大多数特征选择算法。

图4 14 个数据集上不同特征选择方法准确率Fig.4 Accuracy of different feature selection methods on 14 datasets

14 个数据集分类的F1指数和召回率见表4 和表5,可见在大多数数据集上,本文所提出的MIFSFI 算法相较于其他7 种方法的F1指数和召回率更高。MIFS-FI 算法在14 组数据集上F1指数较MIM算法平均高0.133 2,较MIFS 算法平均高0.120 1,较mRMR 算法平均高0.143 4,较CIFE 算法平均高0.096 4,较FJMJM 算法平均高0.057 1,较FIM 算法平均高0.041 6,较DCSF 算法平均高0.032 1;MIFSFI 算法在14 组数据集上召回率较MIM 算法平均高0.113 4,较MIFS 算法平均高0.105 8,较mRMR 算法平均高0.098 9,较CIFE 算法平均高0.071 7,较FJMJM 算法平均高0.046 0,较FIM 算法平均高0.048 3,较DCSF 算法平均高0.031 6。

表4 14 个数据集上的F1 值Tab.4 F1 score on 14 data sets

表5 14 个数据集上的召回率Tab.5 Recall rate on 14 data sets

为了验证所提出算法的有效性,本文做了显著性检验,结果见表6,大部分都是接受原假设。其中原假设为H0,表示算法结果与原来类别之间无显著性差异,p≥0.05 表示接受原假设,p <0.05 表示拒绝原假设。

表6 算法显著性检验结果Tab.6 Significance test results of the algorithm

5 结束语

本文提出了一种基于特征交互的MIFS 算法,即MIFS-FI 算法,并将其应用于医疗诊断数据。MIFS-FI 算法解决了MIFS 算法中冗余项系数不确定和冗余项与相关项不可比的问题,并且重视了交互信息在冗余项中的作用,进而在实现最大相关的同时,也能兼顾最大交互和最小冗余。

实验结果来看,在分类准确率、F1指数和召回率三方面上,MIFS-FI 算法相比7 种基于互信息的特征选择方法,整体性能优于其他算法。尤其在处理高维小样本数据集时,MIFS-FI 算法的分类准确率超过大多数特征选择算法,且F1指数和召回率也相对高于其它特征选择方法。

MIFS-FI 算法也存在一些缺点,当交互信息在冗余信息中的占比非常小的极端情况下,会导致冗余项非常大,冗余项的系数起不到平衡冗余项和相关项的作用,可能会使与类别相关大且冗余小的特征被剔除。由于医疗诊断数据的诊断指标之间存在较大的交互性,因而在使用MIFS-FI 算法进行特征选择时并没有出现这种情况。若将此算法应用于其他数据集上,可能会存在上述问题。

猜你喜欢
互信息特征选择集上
Cookie-Cutter集上的Gibbs测度
链完备偏序集上广义向量均衡问题解映射的保序性
复扇形指标集上的分布混沌
Kmeans 应用与特征选择
基于互信息的贝叶斯网络结构学习
联合互信息水下目标特征选择算法
改进的互信息最小化非线性盲源分离算法
基于增量式互信息的图像快速匹配方法
基于特征选择和RRVPMCD的滚动轴承故障诊断方法
基于二元搭配词的微博情感特征选择