王勇 吴慕云
摘要:使用粒子群算法优化支持向量机的惩罚因子和核参数,提高分类的精度。粒子群算法收敛速度快,但是容易陷入局部最优。引入鲸鱼算法的包围运动和螺旋运动机制,形成参数自适应的混合粒子群优化算法,提升了算法的精度。在对数据进行预处理之后,80%的数据用于模型的训练,剩余20%用于模型的测试。每次实验分别按照比例随机生成的训练集和测试集进行20次预测,计算平均正确率。实验表明,自适应混合粒子群算法优化精度高于标准粒子群算法和鲸鱼算法。
关键词:乳腺癌;支持向量机;自适应;粒子群优化算法
中图分类号:TP391.4 文献标识码:A 文章编号:1672-4437(2024)02-0067-04
0引言
目前诊断乳腺癌的方法有触诊、乳腺彩超、磁共振以及乳腺穿刺等方法。随着数据科学和人工智能技术的发展,人工神经网络、支持向量机等机器学习方法被应用于乳腺癌的诊断与筛查。以BP网络为代表的人工神经网络具有很强的非线性拟合能力,但是网络结构以及权值、阈值的选取仍缺乏系统理论的指导[1]。相比之下,处理分类问题,支持向量机具有一定的优势。在使用支持向量机的过程中,惩罚因子和核参数等直接影响支持向量机的分类精度。粒子群算法、烟花算法等群体智能算法被应用于支持向量机参数的优化[2]。群体智能算法采用个体在空间中按照一定规律运动,通过个体之间的相互协作在可行域内搜索全局最优解。该方法适用于复杂的最优化问题,但是容易陷入局部最优。因此,设计计算方便、高精度的算法优化支持向量机的参数,对提高乳腺癌诊断的正确率具有重要意义。
1 数据的预处理
使用美国威斯康辛大学医院William Wolberg医生创建的乳腺癌诊断数据集[3]。由乳腺肿块的细针穿刺(FNA)的数字图像计算出细胞核的形态特征,以进一步判断肿瘤是良性或者恶性。采集患者乳腺细胞核半径、纹理、周长、面积、平滑度、紧凑度、凹度、凹点、对称性和分型维数这10个特征,并分别计算出这10个特征的平均值、标准差和最大值,由此构成30个特征向量。数据共569个样本,形成了维度为569×30的特征集。所有样本被分为两类:M表示恶性,B表示良性。为了便于后续处理,对每个特征向量 按照式(1)进行数据归一化处理, 、 分别为第 个特征量的最大值、最小值。
(1)
2 支持向量机
支持向量机分类效果好、应用范围广泛。在二分类中存在 个样本 构成的数据集,其中 。样本中 是 维的特征向量, 代表分类的类别。在支持向量机训练的过程中,在 维空间中求解一个超平面 ,将两类不同的样本分类隔开。 是权重向量决定超平面的方向。 是类别 中任意一点到超平面的垂直距离。因此对超平面的求解转化为一个二次规划问题[2]:
(2)
其中, 是松弛因子, 是惩罚因子。若空间中的超平面无法将训练样本完全隔开,在目标函数中引入惩罚函数 控制训练误差对目标函数的惩罚量。 取值过小,模型复杂度低,容易欠拟合。反之,模型复杂,结构风险大,容易过拟合。
数据在原始空间中不是线性可分的情况下,可将其通过核函数映射到高维空间中求解。在分类问题中常用的核函数有高斯核:
(3)
其中, 是高斯核函数的核参数, 取值越小,模型的分类越精细,模型容易过拟合。 取值越大越会造成训练不充分,模型欠拟合。因此,惩罚因子 和核参数 直接决定支持向量机的性能,必须通过高效、精确的优化算法确定其值。
3 自适应混合粒子群算法优化支持向量机
粒子群算法(Particle Swarm Optimization, PSO)的计算相对简单,收敛速度快,因此应用广泛。基于粒子群算法搜索支持向量机的惩罚因子 和核参数 的最优组合。首先在可行域内,初始化一个 的呈均匀分布的矩阵 作为初始种群,粒子 为该粒子所处的位置,代表一组待优化参数的潜在最优解。以测试集上分类的正确率作为适应度函数评价每个粒子所处位置的优劣。第 次迭代运算中第 个粒子运动过程中经历的最优位置为 ,种群的全局最优位置为 。寻优过程中,每个粒子根据个体最优值和种群最优值更新第 次迭代运算中自身的位置 和速度 [4]:
(4)
(5)
为惯性权重,用于平衡粒子在空间中的全局搜索能力和局部搜索能力。在更新速度的过程中, 、 为加速度因子, 是个体最优位置所占权重, 是全局最优位置所占权重。 、 是分布于 区间的随机数。在优化过程的中后期,粒子会逐步聚集,粒子种群容易陷入局部最优。为了克服这一不足,在寻优过程的初期,注重粒子在可行域内的全局搜索能力,随着迭代次数的增加,强调粒子的局部搜索能力。因此,在 次迭代运算中, 的取值按照公式(6)随着迭代次数的增加逐步减小,其中 是初始惯性权重, 为终止惯性权重。
(6)
寻优过程中,粒子个体最优位置所占比重逐步减小,而全局最优位置所占比重随着迭代次数逐步增加。采用双曲正切函数按照公式(7)在 区间内调节第 次迭代运算 、 的值,参数 用于限定双曲正切函数的范围[5]。
(7)
(8)
为了降低粒子迅速聚集而陷入局部最优的概率,引入鲸鱼优化算法(Whale Optimization Algorithm,WOA)中的包围运动机制和螺旋运动机制[6]。多种运动机制并存,提升了可行域内的寻优精度。如图1所示,初始化粒子群参数之后,根据式(4)、式(5)更新粒子的速度和位置。当第 次迭代运算中,第 个粒子所处位置 的适应度值 小于第 次运算的适应度值 时,则切换到鲸鱼算法的寻优策略。按照式(9)所示, 为 之间的随机数, 时,使用包围运动的策略,根据种群最优位置 更新位置得到 ;而 时,基于螺旋包围运动更新位置得到 。如果所使用优化策略得到的位置都不能优于前一次的结果 ,则选择最优解 作为最终的结果。
(9)
其中, , 为 之间的随机数, , , 。
4 实验分析
为了验证自适应混合粒子群算法优化高斯核支持向量机惩罚因子 和核参数 的精度。采用威斯康辛乳腺癌数据集80%的样本作为训练集,剩余20%的样本作为测试集。选取默认参数rbf内核支持向量机、标准粒子群算法、鲸鱼优化算法[7]以及自适应混合粒子群算法分别优化的支持向量机作为测试算法。每次实验中,分别按照比例随机生成训练集和测试集进行20次训练和测试。20次测试结果的平均正确率为 ,每20次测量结果的标准差为 。各优化算法的适应度值 。
标准粒子群算法、鲸鱼优化算法和自适应混合粒子群算法粒子的种群规模 ,最大迭代次数 , , 。标准粒子群算法的惯性权重 , , 。自适应混合粒子群算法初始惯性权重 ,终止惯性权重为 ,加速度因子的 , , 。20次迭代运算中,标准粒子群算法在寻优的过程中,粒子迅速向个体最优值和全局最优值运动,容易陷入局部最优(如图2所示)。而自适应混合粒子群算法有效地平衡了个体极值和全局极值的信息,并采用多种寻优策略共同作用,提升了优化的精度。不同算法的训练正确率和测试正确率以及20次测试结果的标准差如表1所示。针对20次不同的测试样本,标准粒子群算法的平均训练正确率为1.00000,而平均测试正确率仅为0.95965,存在过拟合的情况,但是依旧高于默认参数的支持向量机。自适应混合粒子算法的测试结果的平均值正确率为0.97719,标准差为0.01490,表现出了较强的泛化能力。如图3所示,自适应混合粒子群算法的测试正确率显著优于标准粒子群算法和鲸鱼算法。
5 结语
目前,乳腺癌仍然是威胁女性健康的主要疾病之一。将数据科学与机器学习技术相结合,对提高乳腺癌诊断的准确率具有重要意义。对于乳腺癌数据集此类多维度特征向量的二分类问题,支持向量机具有一定的优势。在对支持向量机惩罚因子 和核参数 的优化过程中,在标准粒子群算法中引入参数自适应机制和包围运动、螺旋运动的搜索机制,有效地降低了粒子过快聚集而陷入局部最优的概率,提高了粒子群算法的精度。
—
参考文献:
[1]许美贤,郑琰,李炎举,等.基于PSO-BP神经网络与PSO-SVM的抗乳腺癌药物性质预测[J].南京信息工程大学学报(自然科学版),2023,15(1):51-65.
[2]王谦.改进烟花算法及其在特征选择和SVM参数联合优化中的应用[D].南京:南京信息工程大学,2020.
[3]WOLBERG W, MANGA SARIAN O, STREET N, et al. Breast Cancer Wisconsin (Diagnostic)[DB/OL]. (1995-10-31) [2023-11-23].https://archive.ics.uci.edu/ dataset/17/dataset/17/breast+cancer+wisconsin+diagnostic
[4]李俊,李济顺,HAL G,等.混沌区间多目标粒子群优化算法及其应用[J].机械科学与技术,2022,41(7):1031-1038.
[5]路复宇,童宁宁,冯为可,等.自适应杂交退火粒子群优化算法[J].系统工程与电子技术,2022,44(11):3470-3476.
[6]李安东,刘升.混合策略改进鲸鱼优化算法[J].计算机应用研究,2022,39(5):1415-1421.
[7]刘一格,赵振宙,马远卓,等.基于鲸鱼优化算法的串列风力机主动尾流控制策略[J].中国电机工程学报, 2024,44(9):3702-3710.