当前位置: 首页 > news >正文

网站建设与规划百度推广培训

网站建设与规划,百度推广培训,政府微网站建设方案,企业所得税怎么算100万以下分类预测 | MATLAB实现SSA-CNN麻雀算法优化卷积神经网络多特征分类预测 目录分类预测 | MATLAB实现SSA-CNN麻雀算法优化卷积神经网络多特征分类预测分类效果基本介绍模型描述程序设计参考文献分类效果 基本介绍 1.Matlab实现SSA-CNN麻雀算法优化卷积神经网络多特征分类预测&…

分类预测 | MATLAB实现SSA-CNN麻雀算法优化卷积神经网络多特征分类预测

目录

    • 分类预测 | MATLAB实现SSA-CNN麻雀算法优化卷积神经网络多特征分类预测
      • 分类效果
      • 基本介绍
      • 模型描述
      • 程序设计
      • 参考文献

分类效果

1
2
3
4

5
6

基本介绍

1.Matlab实现SSA-CNN麻雀算法优化卷积神经网络多特征分类预测,运行环境Matlab2018b及以上;
2.运行主程序MainSSA_CNNC即可,其余为函数文件,无需运行,可视化输出分类准确率,可在下载区获取数据和程序内容。
3.输入15个特征,输出4类标签。
4.SSA优化CNN的超参数,一共有9个参数需要优化,分别是学习率、迭代次数、批处理样本、第一层卷积层的核大小和数量、第2层卷积层的核大小和数量,以及两个全连接层的神经元数量。

模型描述

卷积神经网络(CNN)中超参数众多,人工选择比较困难,利用麻雀搜索算法(SSA)对卷积神经网络中的参数进行优化,消除人工操作的不确定性。本模型共优化8 个超参数,分别是迭代次数、学习率、第1 层卷积核大小和数量、第2 层卷积核大小和数量,以及2 个全连接层的神经元数量(conv 表示卷积层,fc 表示全连接层)。本文建立的模型组成包括输入层、2 层卷积层、2 层激活层、2 层全连接层和输出层。SSA CNN 模型预测具体实现步骤如下。
第1 步:对数据进行归一化处理。
第2 步:设定初始参数,包括种群中的个体总数、子群体数、每个子群体中的麻雀数、最大迭代次数、发现者的数量及SSA 其他参数等。
第3 步:初始化种群并定义适应度函数,以CNN的预测值与实际值的均方误差最小化作为适应度函数,SSA 的目的就是找到一组超参数,用这组超参数训练得到的CNN 的误差能够最小化。
第4 步:计算适应度函数值并排序。
第5 步:确定每个子群体中的最优解、最差解和全局最优解。
第6 步:更新麻雀位置,获取当前的新位置,如果新位置比以前的位置更好就更新它,若达到设定的最大迭代次数,则将其输出,否则返回继续寻优,直到得到最好的麻雀坐标。
第7 步:将寻优得到的麻雀坐标代入CNN 模型中,得到预测模型的输出。

7

程序设计

  • 完整程序和数据私信博主。
%种群初始化
X0=initialization(pop,dim,ub,lb);
X = X0;
%计算初始适应度值
fitness = zeros(1,pop);
for i = 1:popfitness(i) =  fobj(X(i,:));
end
[fitness, index]= sort(fitness);%升排序
BestF = fitness(1);
WorstF = fitness(end);
GBestF = fitness(1);%全局最优适应度值
for i = 1:popX(i,:) = X0(index(i),:);
end
curve=zeros(1,Max_iter);
GBestX = X(1,:);%全局最优位置
X_new = X;
for i = 1: Max_iterdisp(['第',num2str(i),'次迭代'])BestF = fitness(1);WorstF = fitness(end);R2 = rand(1);for j = 1:PDNumberif(R2<ST)X_new(j,:) = X(j,:).*exp(-j/(rand(1)*Max_iter));elseX_new(j,:) = X(j,:) + randn()*ones(1,dim);end     endfor j = PDNumber+1:pop
%        if(j>(pop/2))if(j>(pop - PDNumber)/2 + PDNumber)X_new(j,:)= randn().*exp((X(end,:) - X(j,:))/j^2);else%产生-11的随机数A = ones(1,dim);for a = 1:dimif(rand()>0.5)A(a) = -1;endend AA = A'*inv(A*A');     X_new(j,:)= X(1,:) + abs(X(j,:) - X(1,:)).*AA';endendTemp = randperm(pop);SDchooseIndex = Temp(1:SDNumber); for j = 1:SDNumberif(fitness(SDchooseIndex(j))>BestF)X_new(SDchooseIndex(j),:) = X(1,:) + randn().*abs(X(SDchooseIndex(j),:) - X(1,:));elseif(fitness(SDchooseIndex(j))== BestF)K = 2*rand() -1;X_new(SDchooseIndex(j),:) = X(SDchooseIndex(j),:) + K.*(abs( X(SDchooseIndex(j),:) - X(end,:))./(fitness(SDchooseIndex(j)) - fitness(end) + 10^-8));endend%边界控制for j = 1:popfor a = 1: dimif length(ub)>1if(X_new(j,a)>ub(a))X_new(j,a) =ub(a);endif(X_new(j,a)<lb(a))X_new(j,a) =lb(a);endelseif(X_new(j,a)>ub)X_new(j,a) =ub;endif(X_new(j,a)<lb)X_new(j,a) =lb;endendendend %更新位置for j=1:popfitness_new(j) = fobj(X_new(j,:));endfor j = 1:popif(fitness_new(j) < GBestF)GBestF = fitness_new(j);GBestX = X_new(j,:);   endendX = X_new;fitness = fitness_new;%排序更新[fitness, index]= sort(fitness);%排序BestF = fitness(1);WorstF = fitness(end);for j = 1:popX(j,:) = X(index(j),:);endcurve(i) = GBestF;disp(['current iteration is: ',num2str(i), ', best fitness is: ', num2str(GBestF)]);
end

参考文献

[1] https://blog.csdn.net/kjm13182345320/article/details/128713044?spm=1001.2014.3001.5501
[2] https://blog.csdn.net/kjm13182345320/article/details/128700127?spm=1001.2014.3001.5501

http://www.shuangfujiaoyu.com/news/17388.html

相关文章:

  • 国内网站域名吗广州seo搜索
  • 公司网站建设佛山哪家好怎么做电商创业
  • 设计做任务的网站西安网站建设平台
  • 南昌网站系统十大成功营销策划案例
  • 网站建设方案的内容2023年7月最新新闻摘抄
  • 怎么看网站是什么时候做的湖南长沙seo教育
  • 网站动画用什么做的泉州百度开户
  • 市政府网站建设工作情况汇报搜索引擎优化seo方案
  • 广州知名网站推广搜一搜百度
  • 做一钓鱼网站吗网站建设与网站设计
  • 做贷款网站犯法吗友情链接属于免费推广吗
  • imap 做网站seo手机排名软件
  • 网络营销 长沙搜索优化师
  • 不花钱做网站seo中文意思是
  • 网站建设公司该怎么销售自助发稿
  • 导航网站怎么做点击网站建设的重要性
  • 网站正能量免费下载重庆网站外包
  • 南阳河南网站建设如何推广宣传一个品牌
  • ps怎么做网站视频特效灰色关键词排名技术
  • 网站建设工作基本流程灰色词优化培训
  • 动态asp.net网站开发电脑培训学校在哪里
  • 做网站需要下什么软件抓关键词的方法10条
  • 婚礼网站怎么做的自己手机怎么免费做网站
  • 网站开发公司盈利石家庄网站建设方案推广
  • 做网站用微软雅黑字体被告侵权成都最好的网站推广优化公司
  • 网站做点击广告是怎么回事谷歌广告优化师
  • 北京网站建设公司空间续费北京百度热门搜索排行榜
  • 网络营销是什么的一项活动北京seo推广外包
  • 物流网站给做软件下载百度推广开户
  • 网站应该设计成什么样企业网站是什么