MATLAB! 请问帮我解释一下这个程序的意思吧,希望能详细解释一下每句的意思!

MATLAB! 请问帮我解释一下这个程序的意思吧,希望能详细解释一下每句的意思!,第1张

close all %关闭开着的文件或程序

clear %清除所有变量

clc %清除commond命令窗口的内容

IN=1:61 %给IN赋值,[1 2 3 4 5 6 … 59 60 61]

sr=zeros(1,61) % sr是1×61的零矩阵,[0 0 0 0 0 … 0]

OUT=sr % 把矩阵sr赋值给OUT

[X,minx,maxx,T,mint,maxt]=premnmx(IN,OUT) % 对输入和输出函数进行归一化处理,其中:IN为输入数据,OUT为输出数据,X为输入数据转换成的标准数据,minx为输入的最小数据,maxx为输入的最大数据,T为输出数据转换成的标准数据,mint为输出的最小值,maxt为输出的最大值。

q=50 q1=0 q0=70%赋值

while(q1<q) %当q1<q时,

q=q0 %q=q0

[M,N]=size(X) % M为X的行数;N为X的列数

[L,N]=size(T) %L为T的行数;N为T的列数

net=newff(minmax(X),[q,L],{'tansig','purelin'},'trainlm')%建立前馈型网络。其中minmax(X)为输入向量X的最小值和最大值;q为隐含层单元数;L为隐含层层数;tansig 隐含层转移函数;purelin 输出层转移函数;trainlm网络的训练函数

net.trainParam.lr=0.01%网络学习速率

net.trainParam.epochs=2000%学习步骤

net.trainParam.goal=1e-5%学习目标

[net,tr]=train(net,X,T)%对建立好的网凳数络进行训练

Y=sim(net,X)%对输入量X进行仿真,Y为仿真结果

Y=postmnmx(Y,mint,maxt)%对仿真结果进行反归一化

%灰色关联分析,调整网络隐层节点

p=0.3

e=0.3

an=repmat(net.b{1},1,N)%将矩阵net.b{1}复制1×N块,即an由1×N块net.b{1}平铺而成

op=tansig(net.iw{1,1}*X+an)%

op1=op' % op1为op的转置

T0=T' % T0为T的转置

T1=repmat(T0,1,q)%将矩阵T0复制1×q块,即T1由1×q块T0平铺而成

DIF=abs(T1-op1)% T1-op1的绝对值

MIN=min(min(DIF)) %min(DIF),DIF 的最小值

MAX=max(max(DIF)) %max(DIF),DIF 的最大值

Si=(MIN+p*MAX)./(DIF+p*MAX)%计算得到Si

ri=sum(Si)/N% 求Si的平均值;sum(Si)是对Si进行求和

D=find(ri>=e)%找出数组ri中的所有大于e的元素的位置,并且在向量D中返回非零元素的线性索引。

[q0,q1]=size(D) % q0为D的行数,q1为D的列数

q0=q1 %将q1的值赋给q0

end

q0

ri

D

q=q1 %将q的值赋给q1

1、这是三层网桐粗携络 2、隐含层由70 个神经元组成 3、输入神经元个数61 输出神经元个数61

这是我自己的理解,因为不知道干什么用局伏所以不知道具体的是什么意思,只能单句理解没法整体掌握,就先分析到这里吧,不知道对错,希望对你有帮助~

用matlab求预测一组数据的bp神经网络模型,可以分

1、给定已经数据,作为一个原始序列;

2、设定自回归阶数,一般2~3,太高不一定好;

3、设定预测某一时间段

4、设定预测步数

5、用BP自定粗伏义函数进行预测

6、根据预测值,用plot函数绘制预测数据走势图

其主要实现代码如下:

clc

% x为原始序列(行向量)

x=[208.72 205.69 231.5 242.78 235.64 218.41]

%x=[101.4 101.4 101.9 102.4 101.9 102.9]

%x=[140 137 112 125 213 437.43]

t=1:length(x)

% 自回归阶数

lag=3

%预测某一时间段

t1=t(end)+1:t(end)+5

%预测步数为fn

fn=length(t1)

[f_out,iinput]=BP(x,lag,fn)

P=vpa(f_out,5)

A=[t1' P']

disp('预测值')

disp(A)

% 画出预测图锋雹

figure(1),plot(t,iinput,'bo-'),hold on

plot(t(end):t1(end),[iinput(end),f_out],'rp-'),grid on

title('BP神经网络预测某地铁线路客流量岩基携')

xlabel('月号'),ylabel('客流量(百万)')

运行结果:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12243452.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存