24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 424  |  回复: 2

groove7887

木虫 (小有名气)

[求助] 神经网络变量清除

用clear清除变量后,把训练好的神经网络数据即MAT文件调用出来进行优化,但是同样的条件每次优化的结果都一样,这是为什么呢?困扰我好久了。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nono2009

超级版主 (文学泰斗)

No gains, no pains.

优秀区长优秀区长优秀区长优秀区长优秀版主

【答案】应助回帖


感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢参与! 2012-05-07 22:54:53
同样的条件每次优化的结果都一样,这不很正常吗?
楼主能否将问题描述得更具体清楚一些?
2楼2012-05-07 20:06:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

groove7887

木虫 (小有名气)

xiegangmai: 编辑内容 2012-05-07 22:55
xiegangmai: , 帖子中代码部分可以用“插入代码”功能 2012-05-07 22:55:40
引用回帖:
2楼: Originally posted by nono2009 at 2012-05-07 20:06:13:
同样的条件每次优化的结果都一样,这不很正常吗?
楼主能否将问题描述得更具体清楚一些?

谢谢,可以。
CODE:
input_train=[500 11 0.4 0.22 600;500 11 0.6 0.22 600;500 11 0.8 0.22 600;400 13 0.4 0.16 550;
    400 13 0.4 0.18 550;400 13 0.4 0.2 550;600 11 0.4 0.18 500;600 12 0.4 0.18 500;
    600 13 0.4 0.18 500;350 11 1.2 0.2 500;400 11 1.2 0.2 500;500 11 1.2 0.2 500;
    400 11 0.6 0.18 450;400 11 0.6 0.18 500;400 11 0.6 0.18 550;350 10 0.4 0.16 450;
    500 12 0.8 0.2 450;600 13 1.2 0.22 450;400 10 0.8 0.22 500;500 13 0.6 0.16 500;
    350 12 0.6 0.22 550;500 10 1.2 0.18 550;600 11 0.8 0.16 550;350 13 0.8 0.18 600;
    400 12 1.2 0.16 600;600 10 0.6 0.2 600;500 12 0.4 0.16 400;400 8 0.6 0.18 400;
    450 9 0.4 0.16 400;650 14 0.6 0.18 400;500 9 0.8 0.18 400;300 11 0.2 0.14 450;
    450 11 0.6 0.14 450;400 9 1.2 0.16 450;550 14 1.2 0.16 450;650 15 0.6 0.2 450;
    650 14 0.4 0.2 450;500 9 0.4 0.24 450;300 9 0.6 0.14 500;400 9 0.4 0.16 500;
    400 11 0.6 0.18 500;500 11 0.6 0.18 500;450 9 0.8 0.2 500;550 11 0.8 0.2 500;
    650 11 0.6 0.24 500;350 8 0.8 0.16 550;650 9 1.2 0.16 550;500 11 0.2 0.16 550;
    500 12 0.6 0.2 550;650 15 0.8 0.24 550;500 12 0.2 0.16 600;450 8 0.6 0.16 600;
    400 12 0.4 0.18 600;450 11 1.0 0.2 600;400 8 0.8 0.22 600]';
output_train=[0.0828;0.0807;0.0767;0.0624;0.0674;0.0789;0.0744;0.0761;0.0746;0.0697;
    0.0704;0.0722;0.0666;0.0655;0.0685;0.0613;0.0731;0.0800;0.0781;0.0599;
    0.076;0.065;0.0607;0.0627;0.0575;0.0804;0.0627;0.0663;0.068;0.0663;
    0.0668;0.0676;0.0541;0.0591;0.0632;0.0722;0.0779;0.0924;0.0543;0.0688;
    0.0656;0.0664;0.0717;0.0716;0.0882;0.0596;0.0606;0.0996;0.0721;0.0835;
    0.0960;0.0701;0.0712;0.0699;0.0775]';
input_test=[650 14 1.0 0.24 600; 400 12 1.2 0.2 500;400 12 0.6 0.18 450;
   600 13 0.2 0.18 500; 400 8 0.2 0.2 500;450 8 0.6 0.16 600]';
output_test=[0.0823;0.0704;0.0667;0.0969;0.0807;0.0727]';
hiddennum = 11; % 隐层第一层节点数
TypeNum = 1;   % 输出维数
TF1 = 'logsig';TF2='tansig';TF3 = 'purelin';%各层传输函数,TF3为输出层传输函数
%数据归一化
[inputn,inputps]=mapminmax(input_train);
[outputn,outputps]=mapminmax(output_train);
net=newff(minmax(input_train),[hiddennum,TypeNum],{TF1 TF3},'trainlm');
net.trainParam.epochs=2000;
net.trainParam.lr=0.01;
net.trainParam.goal=0.001;

%网络训练
net=train(net,inputn,outputn);
inputn_test=mapminmax('apply',input_test,inputps);
%网络预测输出
an=sim(net,inputn_test);

%网络输出反归一化
BPoutput=mapminmax('reverse',an,outputps);
save data net inputps outputps

%%%%这是神经网络代码,一共5个变量,我想用GA优化工艺参数

% % 遗传算法主函数
%% 初始化遗传算法参数
%初始化参数
maxgen=100;                         %进化代数,即迭代次数
sizepop=30;                        %种群规模
pcross=[0.7];                       %交叉概率选择,0和1之间
pmutation=[0.2];                    %变异概率选择,0和1之间

lenchrom=[1 1 1 1 1];          %每个变量的字串长度,如果是浮点变量,则长度都为1
bound=[300 650;8 15;0.2 1.2;0.16 0.24;400 600];  %数据范围


individuals=struct('fitness',zeros(1,sizepop), 'chrom',[]);  %将种群信息定义为一个结构体
avgfitness=[];                      %每一代种群的平均适应度
bestfitness=[];                     %每一代种群的最佳适应度
bestchrom=[];                       %适应度最好的染色体

%% 初始化种群计算适应度值
% 初始化种群
for i=1:sizepop
    %随机产生一个种群
    individuals.chrom(i,:)=code(lenchrom,bound);   
    x=individuals.chrom(i,:);
    %计算适应度
    individuals.fitness(i)=fun(x);   %染色体的适应度
end
%找最好的染色体
[bestfitness bestindex]=min(individuals.fitness);
bestchrom=individuals.chrom(bestindex,:);  %最好的染色体
avgfitness=sum(individuals.fitness)/sizepop; %染色体的平均适应度
% 记录每一代进化中最好的适应度和平均适应度
trace=[avgfitness bestfitness];

%% 迭代寻优
% 进化开始
for i=1:maxgen
      i
    % 选择
    individuals=select(individuals,sizepop);
    avgfitness=sum(individuals.fitness)/sizepop;
    %交叉
    individuals.chrom=cross(pcross,lenchrom,individuals.chrom,sizepop,bound);
    % 变异
    individuals.chrom=mutation(pmutation,lenchrom,individuals.chrom,sizepop,[i maxgen],bound);
   
    % 计算适应度
    for j=1:sizepop
        x=individuals.chrom(j,:); %解码
        individuals.fitness(j)=fun(x);   
    end
   
  %找到最小和最大适应度的染色体及它们在种群中的位置
    [newbestfitness,newbestindex]=min(individuals.fitness);
    [worestfitness,worestindex]=max(individuals.fitness);
    % 代替上一次进化中最好的染色体
    if bestfitness>newbestfitness
        bestfitness=newbestfitness;
        bestchrom=individuals.chrom(newbestindex,:);
    end
    individuals.chrom(worestindex,:)=bestchrom;
    individuals.fitness(worestindex)=bestfitness;
   
    avgfitness=sum(individuals.fitness)/sizepop;
   
    trace=[trace;avgfitness bestfitness]; %记录每一代进化中最好的适应度和平均适应度
end
%进化结束

%% 结果分析
[r c]=size(trace);
figure(2)
plot([1:r]',trace(:,2),'r-');
title('适应度曲线','fontsize',12);
xlabel('进化代数','fontsize',12);
ylabel('适应度','fontsize',12);
axis([0,100,0,1])
disp('适应度 变量');
x=bestchrom;
% 窗口显示
disp([bestfitness x]);
%%%%%%%%%%%%%%%%%%%
figure(2)
plot(trace(:,2))

%%%%%%%%%%%这是GA主程序,我现在想选择种群规模,每次更换种群规模后我都得重新开启MATLAB软件,重新训练神经网络,因为用clear;clc清除后再把训练好的NET.MAT文件调用出来算同样一个结果每次都不一样,且差别很大。
不知道有没有说清楚啊。

[ Last edited by xiegangmai on 2012-5-7 at 22:55 ]
3楼2012-05-07 20:21:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 groove7887 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 288环境专硕,求调材料方向 +6 lllllos 2026-04-04 6/300 2026-04-04 20:14 by barlinike
[考研] 290求调剂 +5 luoziheng 2026-04-04 5/250 2026-04-04 20:11 by babysonlkd
[考研] 一志愿华北电力大学(北京),材料科学与工程学硕265,求调剂 +11 yelck 2026-04-03 12/600 2026-04-04 19:52 by dongzh2009
[考研] 材料调剂 +12 一样YWY 2026-04-02 12/600 2026-04-04 19:37 by 蓝云思雨
[考研] 一志愿211,化学学硕,310分,本科重点双非,求调剂 +10 努力奋斗112 2026-04-04 10/500 2026-04-04 19:35 by 唐沐儿
[考研] 333求调剂 +10 wfh030413@ 2026-04-03 10/500 2026-04-04 18:53 by imissbao
[考研] 323求调剂 +6 李佳乐1 2026-04-04 6/300 2026-04-04 16:19 by 无际的草原
[考研] 专硕310求调剂 +4 捞捞我…. 2026-04-04 5/250 2026-04-04 14:25 by wxiongid
[考研] 292分,材料与化工,申请调剂 +21 程晴之 2026-04-01 25/1250 2026-04-04 11:01 by hmn_wj
[考研] 387求调剂 +4 爱吃片豆土 2026-04-03 5/250 2026-04-04 08:10 by 岸上的一条鱼
[考研] 本科985,专业0812分336求调剂 +4 莫莫很行 2026-04-03 4/200 2026-04-03 21:31 by zhq0425
[考研] 295求调剂 +6 FZAC123 2026-04-03 6/300 2026-04-03 21:01 by zhq0425
[考研] 085600 295分求调剂 +19 W55j 2026-03-30 23/1150 2026-04-03 09:53 by 千千运气
[考研] 302求调剂 +9 zyx上岸! 2026-04-02 9/450 2026-04-02 23:07 by 马儿快快地跑
[考研] 一志愿南开大学0710生物学359求调剂 +6 兔兔兔111223314 2026-03-29 8/400 2026-04-02 22:37 by louise0220
[考研] 293求调剂 +4 珂珂乐 2026-04-02 4/200 2026-04-02 20:10 by 6781022
[考研] 求调剂,一志愿 南京航空航天大学 ,080500材料科学与工程学硕,总分289分 +11 @taotao 2026-03-29 11/550 2026-04-02 10:04 by realme321
[考研] 土木304求调剂 +6 兔突突突, 2026-03-31 7/350 2026-04-02 09:06 by coolminer
[考研] 350求调剂 +7 阿佳~ 2026-03-31 7/350 2026-04-01 16:12 by yanflower7133
[考研] 考研调剂 +9 小蜡新笔 2026-03-29 10/500 2026-03-31 19:52 by Dyhoer
信息提示
请填处理意见