导航:首页 > 网络设置 > matlabbp神经网络工具箱如何设置

matlabbp神经网络工具箱如何设置

发布时间:2022-08-05 10:24:30

㈠ 你好,请问你知道在matlab神经网络工具箱里,学习率在哪里设置吗

lr就是学习率,performance是主要指标,你在程序里写的goal就是MSE,决定最后精度的。

%%BP算法
functionOut=bpnet(p,t,p_test)
globalS1
net=newff(minmax(p),[S1,8],{'tansig','purelin'},'trainlm');%trainlm训练函数最有效
%net=newff(P,T,31,{'tansig','purelin'},'trainlm');%新版用法
net.trainParam.epochs=1000;
net.trainParam.goal=0.00001;
net.trainParam.lr=0.01;%这是学习率
net=train(net,p,t);
Out=sim(net,p_test);
end


㈡ matlab中bp神经网络的工具箱怎么用,不要matlab程序,就工具箱怎么实现问题的解决

matlab中神经网络的工具箱:输入nntool,就会弹出一个对话框,然后你就可以根据弹出框的指示来操作。

㈢ bp神经网络 matlab 工具箱怎么调出来

1. 常用的前馈型BP网络的转移函数有logsig,tansig,有时也会用到线性函数purelin。当网络的最后一层采用曲线函数时,输出被限制在一个很小的范围内,如果采用线性函数则输出可为任意值。以上三个函数是BP网络中最常用到的函数,但是如果需要的话你也可以创建其他可微的转移函数。
2. 在BP网络中,转移函数可求导是非常重要的,tansig、logsig和purelin都有对应的导函数dtansig、dlogsig和dpurelin。为了得到更多转移函数的导函数,可以带字符"deriv"的转移函数:tansig('deriv')
ans = dtansig

第一步是建立网络对象。函数newff建立一个可训练的前馈网络。这需要4个输入参数。第一个参数是一个Rx2的矩阵以定义R个输入向量的最小值和最大值。第二个参数是一个颟顸每层神经元个数的数组。第三个参数是包含每层用到的转移函数名称的细胞数组。最后一个参数是用到的训练函数的名称。

http://blog.sina.com.cn/s/blog_8684880b010117bv.html

㈣ matlab bp神经网络工具箱怎么用

%% 训练集/测试集产生
% 训练集——用于训练网络
P_train = ;%输入集
T_train = ;%输出集
% 测试集——用于测试或者使用。
P_test = ;%输入
T_test ;
N = size(P_test,2);

%% BP神经网络创建、训练及仿真测试

% 创建网络
net = newff(P_train,T_train,9);
% 设置训练参数
net.trainParam.epochs = 1000;
net.trainParam.goal = 1e-3;
net.trainParam.lr = 0.01;
% 训练网络
net = train(net,P_train,T_train);
% 仿真测试、使用。
T_test = sim(net,P_test);%得到结果。

㈤ 1.如何用MATLAB神经网络工具箱创建BP神经网络模型具体有哪些步骤请高手举实例详细解释下 2.如何把输

%人脸识别模型,脸部模型自己找吧。
function mytest()

clc;
images=[ ];
M_train=3;%表示人脸
N_train=5;%表示方向
sample=[];
pixel_value=[];
sample_number=0;

for j=1:N_train
for i=1:M_train
str=strcat('Images\',num2str(i),'_',num2str(j),'.bmp'); %读取图像,连接字符串形成图像的文件名。
img= imread(str);
[rows cols]= size(img);%获得图像的行和列值。
img_edge=edge(img,'Sobel');

%由于在分割图片中我们可以看到这个人脸的眼睛部分也就是位于分割后的第二行中,位置变化比较大,而且眼睛边缘检测效果很好

sub_rows=floor(rows/6);%最接近的最小整数,分成6行
sub_cols=floor(cols/8);%最接近的最小整数,分成8列
sample_num=M_train*N_train;%前5个是第一幅人脸的5个角度

sample_number=sample_number+1;
for subblock_i=1:8 %因为这还在i,j的循环中,所以不可以用i
block_num=subblock_i;
pixel_value(sample_number,block_num)=0;
for ii=sub_rows:(2*sub_rows)
for jj=(subblock_i-1)*sub_cols+1:subblock_i*sub_cols
pixel_value(sample_number,block_num)=pixel_value(sample_number,block_num)+img_edge(ii,jj);
end
end
end
end
end
%将特征值转换为小于1的值
max_pixel_value=max(pixel_value);
max_pixel_value_1=max(max_pixel_value);
for i=1:3
mid_value=10^i;
if(((max_pixel_value_1/mid_value)>1)&&((max_pixel_value_1/mid_value)<10))
multiple_num=1/mid_value;
pixel_value=pixel_value*multiple_num;
break;
end
end

% T 为目标矢量
t=zeros(3,sample_number);
%因为有五类,所以至少用3个数表示,5介于2的2次方和2的3次方之间
for i=1:sample_number
% if((mod(i,5)==1)||(mod(i,5)==4)||(mod(i,5)==0))
if(i<=3)||((i>9)&&(i<=12))||((i>12)&&(i<=15))
t(1,i)=1;
end
%if((mod(i,5)==2)||(mod(i,5)==4))
if((i>3)&&(i<=6))||((i>9)&&(i<=12))
t(2,i)=1;
end
%if((mod(i,5)==3)||(mod(i,5)==0))
if((i>6)&&(i<=9))||((i>12)&&(i<=15))
t(3,i)=1;
end
end

% NEWFF——生成一个新的前向神经网络
% TRAIN——对 BP 神经网络进行训练
% SIM——对 BP 神经网络进行仿真

% 定义训练样本
% P 为输入矢量
P=pixel_value'
% T 为目标矢量
T=t
size(P)
size(T)
% size(P)
% size(T)

% 创建一个新的前向神经网络
net_1=newff(minmax(P),[10,3],{'tansig','purelin'},'traingdm')

% 当前输入层权值和阈值
inputWeights=net_1.IW{1,1}
inputbias=net_1.b{1}
% 当前网络层权值和阈值
layerWeights=net_1.LW{2,1}
layerbias=net_1.b{2}

% 设置训练参数
net_1.trainParam.show = 50;
net_1.trainParam.lr = 0.05;
net_1.trainParam.mc = 0.9;
net_1.trainParam.epochs = 10000;
net_1.trainParam.goal = 1e-3;

% 调用 TRAINGDM 算法训练 BP 网络
[net_1,tr]=train(net_1,P,T);

% 对 BP 网络进行仿真
A = sim(net_1,P);
% 计算仿真误差
E = T - A;
MSE=mse(E)

x=[0.14 0 1 1 0 1 1 1.2]';
sim(net_1,x)

㈥ matlab神经网络工具箱具体怎么用

为了看懂师兄的文章中使用的方法,研究了一下神经网络
昨天花了一天的时间查怎么写程序,但是费了半天劲,不能运行,网络知道里倒是有一个,可以运行的,先贴着做标本

% 生成训练样本集
clear all;
clc;
P=[110 0.807 240 0.2 15 1 18 2 1.5;
110 2.865 240 0.1 15 2 12 1 2;
110 2.59 240 0.1 12 4 24 1 1.5;
220 0.6 240 0.3 12 3 18 2 1;
220 3 240 0.3 25 3 21 1 1.5;
110 1.562 240 0.3 15 3 18 1 1.5;
110 0.547 240 0.3 15 1 9 2 1.5];
0 1.318 300 0.1 15 2 18 1 2];
T=[54248 162787 168380 314797;
28614 63958 69637 82898;
86002 402710 644415 328084;
230802 445102 362823 335913;
60257 127892 76753 73541;
34615 93532 80762 110049;
56783 172907 164548 144040];
@907 117437 120368 130179];
m=max(max(P));
n=max(max(T));
P=P'/m;
T=T'/n;
%-------------------------------------------------------------------------%
pr(1:9,1)=0; %输入矢量的取值范围矩阵
pr(1:9,2)=1;
bpnet=newff(pr,[12 4],{'logsig', 'logsig'}, 'traingdx', 'learngdm');
%建立BP神经网络, 12个隐层神经元,4个输出神经元
%tranferFcn属性 'logsig' 隐层采用Sigmoid传输函数
%tranferFcn属性 'logsig' 输出层采用Sigmoid传输函数
%trainFcn属性 'traingdx' 自适应调整学习速率附加动量因子梯度下降反向传播算法训练函数
%learn属性 'learngdm' 附加动量因子的梯度下降学习函数
net.trainParam.epochs=1000;%允许最大训练步数2000步
net.trainParam.goal=0.001; %训练目标最小误差0.001
net.trainParam.show=10; %每间隔100步显示一次训练结果
net.trainParam.lr=0.05; %学习速率0.05
bpnet=train(bpnet,P,T);
%-------------------------------------------------------------------------
p=[110 1.318 300 0.1 15 2 18 1 2];
p=p'/m;
r=sim(bpnet,p);
R=r'*n;
display(R);

运行的结果是出现这样的界面

点击performance,training state,以及regression分别出现下面的界面

再搜索,发现可以通过神经网络工具箱来创建神经网络,比较友好的GUI界面,在输入命令里面输入nntool,就可以开始了。

点击import之后就出现下面的具体的设置神经网络参数的对话界面,
这是输入输出数据的对话窗

首先是训练数据的输入

然后点击new,创建一个新的神经网络network1,并设置其输入输出数据,包括名称,神经网络的类型以及隐含层的层数和节点数,还有隐含层及输出层的训练函数等

点击view,可以看到这是神经网络的可视化直观表达

创建好了一个network之后,点击open,可以看到一个神经网络训练,优化等的对话框,选择了输入输出数据后,点击train,神经网络开始训练,如右下方的图,可以显示动态结果

下面三个图形则是点击performance,training state以及regression而出现的

下面就是simulate,输入的数据是用来检验这个网络的数据,output改一个名字,这样就把输出数据和误差都存放起来了

在主界面上点击export就能将得到的out结果输入到matlab中并查看

下图就是输出的两个outputs结果

还在继续挖掘,to be continue……

㈦ 一个关于BP神经网络的问题,matlab中神经网络工具箱的初始权值和阀值是

训练BP神经网络所采取的随机初始参数确实是随机的,在训练过程中这些参数和权值都会朝着同一个大方向进行修正。例如你用BP神经网络来拟合曲线,找到输入值与输出值之间的线性规律,那么在训练的过程中这个拟合的曲线会不断的调整其参数和权值直到满足几个预设条件之一时训练停止。虽然这个训练出来的结果有时候会有一定误差,但都在可以接受的范围内。
缩小误差的一个方法是需要预先设置初始参数,虽然每次依然会得到不一样的模型(只要参数是随机修正的),但不同模型之间的差距会很小。另外可以反复训练,找到一个自己觉得满意的模型(可以是测试通过率最高,可以是平均结果误差值最小)。
至于你说别人怎么检查你的论文结果,基本上都是通过你的算法来重建模型,而且还不一定都用matlab来做,即便是用同样的代码都会出现不同的结果,何况是不同的语言呢?其实验算结果最重要的是看测试时的通过率,例如在对一组新的数据进行测试(或预测)时,通过率达到95%,别人用其他的方式重建了你的模型也得到这样的通过率,那么你的算法就是可行的。注意,在计算机专业的论文里面大家看重的不是代码,而是算法。
补充一点:只要你训练好了一个神经网络可以把这个神经网络以struct形式保存,这样这个网络可以被反复使用,且每次对同一组测试数据的预测结果都会一样。你也可以当做是检测论文可行性的工具。

阅读全文

与matlabbp神经网络工具箱如何设置相关的资料

热点内容
网络共享中心没有网卡 浏览:659
电脑无法检测到网络代理 浏览:1531
笔记本电脑一天会用多少流量 浏览:922
苹果电脑整机转移新机 浏览:1512
突然无法连接工作网络 浏览:1261
联通网络怎么设置才好 浏览:1359
小区网络电脑怎么连接路由器 浏览:1254
p1108打印机网络共享 浏览:1337
怎么调节台式电脑护眼 浏览:888
深圳天虹苹果电脑 浏览:1136
网络总是异常断开 浏览:736
中级配置台式电脑 浏览:1191
中国网络安全的战士 浏览:751
同志网站在哪里 浏览:1582
版观看完整完结免费手机在线 浏览:1579
怎样切换默认数据网络设置 浏览:1299
肯德基无线网无法访问网络 浏览:1533
光纤猫怎么连接不上网络 浏览:1726
神武3手游网络连接 浏览:1097
局网打印机网络共享 浏览:1118