首页 > 编程知识 正文

家雀儿和麻雀的区别,简述特征空间优化的方法

时间:2023-05-05 06:26:35 阅读:39597 作者:625

基于麻雀搜索算法的同步优化特征选择-带码文章基于麻雀搜索算法的同步优化特征选择-带码1 .数据集2.SVM模型建立3 .麻雀搜索算法同步优化特征选择4 .测试结果5 .参考文献:参考文献

摘要:针对传统支持向量机在打包特征选择中分类效果差、子集选择冗馀、计算性能易受核函数参数影响的不足,采用麻雀优化算法进行了同步优化。

1 .数据集

wine数据的来源是UCI数据库,记录意大利同一区域3种不同品种葡萄酒的化学成分分析。 数据包括178个样本,每个样本包括13个特征成分(化学成分),每个样本的类别标签已经给出。 将该178个样本的50%作为训练集,将剩下的50%作为测试集,在训练集中训练SVM,可以得到分类模型,用得到的模型对测试集进行类标签预测。

总体数据存储在chapter_WineClass. mat中,解释如下: classnumber=3,记录类别数;

在wine、178 13的双精度型矩阵中,记录178个样本的13个属性

wine_ labels、178 1的一个双精度型的列方向盘记录178个样本各自的类别标签。

图1 .数据集2.SVM模型构建是首先从原始数据中提取训练集和测试集,然后进行一定的预处理(必要时也进行特征提取),然后在训练集中训练SVM,利用最后得到的模型进行测试集

图2 .在SVM模型中,数据预处理采用归一化处理。 对训练集和测试集进行归一化预处理,采用以下归一化映射。

y=xxmInxmaxmIn(1) y=(FRAC(x-x_{min} ) x_{max}-x{min} ) tag{1}y=xmaxxminxxmin) ) ) ) ) )

3 .麻雀搜索算法并行优化特征选择在元启发式群智能算法优化计算时,由于优化问题的不同,种群个体表现出不同的含义。 对特征选择问题来说,其本质是二元优化问题,优化后的选择特征结果表示仅限于“0”和“1”,“0”的值表示未选择该特征,“1”的值表示选择了该特征在优化选择特征的情况下,种群个体解可视为一维向量,各维原始数据值与0.5相比,大于或等于0.5时选择该特征,否则排除该特征。 特征选择可以视为多个目标优化问题,分类结果中分类精度高,特征子集个数少时表明所获得的分类效果优良。 在算法迭代过程中,一般采用适应度函数评价各解的质量。 为了取得分类精度和特征子集个数的平衡,根据SVM进行分类

分类准确率与特征选择的所选特征子集个数, 设计适应度函数 如下所示:
f i t e n e s s = a r g m a x ( a c c u r a c y [ p r e d i c t ( t r a i n ) ] + a c c u r a c y [ p r e d i c t ( t e s t ) ] + 1 − r / N ) fiteness = argmax(accuracy[predict(train)]+accuracy[predict(test)] + 1 - r/N) fiteness=argmax(accuracy[predict(train)]+accuracy[predict(test)]+1−r/N)
其中accuracy[predict(train)],accuracy[predict(test)]分别为训练集和测试集(验证集)准确率,根据自身需要看是只用训练集准确率还是综合考虑验证集准确率,r为选择的特征个数,N为总特征个数。

由于麻雀是求极小值,将目标求最大值转换为求极小值
f i t n e s s = − f i t n e s s fitness = -fitness fitness=−fitness

4.测试结果

麻雀算法参数设置如下:

%% 麻雀参数设置% 定义优化参数的个数,在该场景中,优化参数的个数为数据集特征总数 。%目标函数fobj = @(x) fun(x,train_wine_labels,train_wine,test_wine_labels,test_wine); % 优化参数的个数 特征维度dim = size(train_wine,2); %特征维度% 优化参数的取值下限,[0,1],大于0.5为选择该特征,小于0.5为不选择该特征lb = 0;ub = 1;%% 参数设置pop =10; %麻雀数量Max_iteration=50;%最大迭代次数 %% 优化[Best_pos,Best_score,curve]=SSA(pop,Max_iteration,lb,ub,dim,fobj);


基础SVM训练集最终预测准确率:100
基础SVM测试集最终预测准确率:98.8764
SSA特征选择后SVM训练集最终预测准确率:100
SSA特征选择后SVM测试集最终预测准确率:100
总特征数:13
麻雀算法选择的特征总数:9
麻雀算法选择的特征(0为不选择,1为选择):1 0 0 1 1 1 1 0 0 1 1 1 1

从结果来看,经过特征选择后,特征数明显减少,由13维变为9维,而且训练集和测试集精度均能达到比较好的结果。

5.参考文献:

[1]qcdzxc,mldxh,yxdqt.基于改进秃鹰搜索算法的同步优化特征选择[J/OL].控制与决策:1-9[2021-11-02].https://doi.org/10.13195/j.kzyjc.2020.1025.

6.Matlab代码

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。

  • 相关阅读