特征选择方法有两种模式:过滤(filter)模式和封装(wrapper)模式 [12] 。过滤模式利用特征对数据的可分度和特征间的相关性作为选取特征组合的指标,一般具有效率高而效果差的特点;封装模式利用分类器的分类正确率作为选取特征组合的指标,具有效率低但效果好的特点。由于建立分类器是在离线状态下进行的,对速度的要求不高,而且该分类器用于医学背景下,需要保证较高的敏感性和特异性,所以选择封装模式较为适宜。
特征选择实际是一个特征的组合优化问题,已被证明是NP-Hard问题,常见的智能优化方法如GA被应用到解决该问题中。对于许多图像检测的应用(如医学影像中的模式识别)上的标准数据,基于SVM建立的分类器效果要优于人工神经元网络(ANN,Artificial Neural Networks) [13] 、决策树(DT,Decision Trees) [14] 等其他分类器,这是因为SVM是专门针对有限样本分类情况的。SVM最终把分类问题转化成为一个二次型寻优问题,可以得到全局最优解,解决了人工神经元网络中无法避免的局部极值问题。SVM将原特征空间通过非线性变化转换到高维特征空间,在高维特征空间中构造线性判别函数来实现原空间中的非线性判别函数。图2-1描述了基于组合优化和SVM的特征选择的过程框架。
图2-1 基于组合优化和SVM的特征选择的过程框架
在图2-1中首先由组合优化算法产生初始候选特征组合集(初始候选特征子集),并和训练集数据一起训练出SVM分类器;然后,用SVM分类器测试用于特征选择的测试集,得出的测试结果返回给组合优化算法进行对候选特征组合的评估,并产生下一代候选特征子集;如此反复迭代到最大代数,从而求出最优特征组合。对特征选择问题建立数学模型如下:
max f ( X )= w 1 · Sensitivity ( X )+ w 2 · Specificity ( X )(2-1)
s . t . Sensitivity ( X )= TP ( X ) / [ TP ( X )+ TN ( X )]
Specificity ( X )= FN ( X ) / [ FP ( X )+ FN ( X )]
X i ∈{0,1}
式中: w 1 + w 2 =1并且 w 1 > w 2 ; Sensitivity 为敏感性率; Specificity 为特异性率,检测的敏感性和特异性之和为1; TP 为真阳性; FP 为假阳性; FN 为假阴性; TN 为真阴性; w 1 和 w 2 分别为敏感性和特异性的权重参数,它们是[0,1]之间的实数; f 为[0,1]之间的实数; X 为特征组合。