A. 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)
B. 如何用MATLAB的神经网络工具箱实现三层BP网络
这是一个来自<神经网络之家>nnetinfo的例子,在matlab2012b运行后的确可以,因为网络知道的文本宽度不够,注释挤到第二行了,有些乱,楼主注意区分哪些是代码哪些是注释,
x1 =
[-3,-2.7,-2.4,-2.1,-1.8,-1.5,-1.2,-0.9,-0.6,-0.3,0,0.3,0.6,0.9,1.2,1.5,1.8]; %x1:x1 = -3:0.3:2;
x2 =
[-2,-1.8,-1.6,-1.4,-1.2,-1,-0.8,-0.6,-0.4,-0.2,-2.2204,0.2,0.4,0.6,0.8,1,1.2];%x2:x2 = -2:0.2:1.2;
y = [0.6589,0.2206,-0.1635,-0.4712,-0.6858,-0.7975,-0.8040,...
-0.7113,-0.5326,-0.2875
,0,0.3035,0.5966,0.8553,1.0600,1.1975,1.2618]; %y:
y = sin(x1)+0.2*x2.*x2;
inputData = [x1;x2]; %将x1,x2作为输入数据
outputData = y; %将y作为输出数据
%使用用输入输出数据(inputData、outputData)建立网络,
%隐节点个数设为3.其中隐层、输出层的传递函数分别为tansig和purelin,使用trainlm方法训练。
net = newff(inputData,outputData,3,{'tansig','purelin'},'trainlm');
%设置一些常用参数
net.trainparam.goal = 0.0001;
%训练目标:均方误差低于0.0001
net.trainparam.show = 400; %每训练400次展示一次结果
net.trainparam.epochs = 15000;
%最大训练次数:15000.
[net,tr] = train(net,inputData,outputData);%调用matlab神经网络工具箱自带的train函数训练网络
simout = sim(net,inputData);
%调用matlab神经网络工具箱自带的sim函数得到网络的预测值
figure; %新建画图窗口窗口
t=1:length(simout);
plot(t,y,t,simout,'r')%画图,对比原来的y和网络预测的y
C. 如何用MATLAB神经网络工具箱创建BP神经网络模型
1. 常用的前馈型BP网络的转移函数有logsig,tansig,有时也会用到线性函数purelin。当网络的最后一层采用曲线函数时,输出被限制在一个很小的范围内,如果采用线性函数则输出可为任意值。以上三个函数是BP网络中最常用到的函数,但是如果需要的话你也可以创建其他可微的转移函数。
2. 在BP网络中,转移函数可求导是非常重要的,tansig、logsig和purelin都有对应的导函数dtansig、dlogsig和dpurelin。为了得到更多转移函数的导函数,可以带字符"deriv"的转移函数:tansig('deriv')
D. 用MATLAB建立bp神经网络模型,求高手,在线等
Matlab神经网络工具箱提供了一系列用于建立和训练bp神经网络模型的函数命念友令,很仔扰槐难一时讲全。下面仅以一个例子列举部分函数的部分用法。更多的函数和用法请仔细查阅Neural Network Toolbox的帮助文档。
例子:利用bp神经网络模型建立z=sin(x+y)的模型并检验效果
%第1步。随机生成200个采样点用于训练
x=unifrnd(-5,5,1,200);
y=unifrnd(-5,5,1,200);
z=sin(x+y);
%第2步。建立神经网络模型。其中参数一是输入数据的范围,参数二是各层神经李樱元数量,参数三是各层传递函数类型。
N=newff([-5 5;-5 5],[5,5,1],{'tansig','tansig','purelin'});
%第3步。训练。这里用批训练函数train。也可用adapt函数进行增长训练。
N=train(N,[x;y],z);
%第4步。检验训练成果。
[X,Y]=meshgrid(linspace(-5,5));
Z=sim(N,[X(:),Y(:)]');
figure
mesh(X,Y,reshape(Z,100,100));
hold on;
plot3(x,y,z,'.')
E. matlab神经网络工具箱怎么效果好
导入数据:选择合适的数据,一定要选数值矩阵形式
在这里插入图片描述在这里插入图片描述
进行训练
在这里插入图片描述
接下来就点next,选择输入输出,Sample are是选择以行还是列放置矩阵的,注意调整
在这里插入图片描述
接下来一直next,在这儿点train
在这里插入图片描述
查看结果
在这里插入图片描述
导出代码:再点next,直到这个界面,先勾选下面的,再点Simple Script生成代码
在这里插入图片描述
使用训练好的神经网络进行预测
使用下方命令,z是需要预测的输入变量,net就是训练好的模型
在这里插入图片描述
再将结果输出成excel就行啦
在这里插入图片描述
打开CSDN,阅读体验更佳
使用MATLAB加载训练好的caffe模型进行识别分类_IT远征军的博客-CSDN...
在进行下面的实验前,需要先对数据进行训练得到caffemodel,然后再进行分类识别 c_demo.m function [scores, maxlabel] = c_demo(im, use_gpu) % Add caffe/matlab to you Matlab search PATH to use matcaffe if exist('/home/...
继续访问
MATLAB调用训练好的KERAS模型_LzQuarter的博客
下载了链接中的“kerasimporter.mlpkginstall”文件后,在matlab内用左侧的文件管理系统打开会进入一个页面,在该页面的右上角有安装的按钮,如果之前安装一直失败,可以通过这个安装按钮的下拉选项选择仅下载 下载还是有可能要用到VPN,但是相比...
继续访问
最新发布 matlab神经网络预测数据,matlab神经网络工具箱
Matlab语言是MathWorks公司推出的一套高性能计算机编程语言,集数学计算、图形显示、语言设计于一体,其强大的扩展功能为用户提供了广阔的应用空问。它附带有30多个工具箱,神经网络工具箱就是其中之一。谷歌人工智能写作项目:神经网络伪原创。
继续访问
matlab神经网络工具箱系统预测
matlab神经网络工具箱系统预测 有原始数据 根据原始数据预测未来十年内的数据
matlab预测控制工具箱
matlab预测控制工具箱,在学习预测控制的过程中翻译的matlab自带的示例,希望对大家有所帮助 matlab预测控制工具箱,在学习预测控制的过程中翻译的matlab自带的示例,希望对大家有所帮助
用matlab做bp神经网络预测,神经网络预测matlab代码
我觉得一个很大的原因是你预测给的输入范围(2014-)超出了训练数据的输入范围(2006-2013),神经网络好像是具有内插值特性,不能超出,你可以把输入变量-时间换成其他的变量,比如经过理论分析得出的某些影响因素,然后训练数据要包括大范围的情况,这样可以保证预测其他年份的运量的时候,输入变量不超出范围,最后预测的时候给出这几个影响因素的值,效果会好一点。输出层是个purelin,线性组合后的输出层输出当然也全是几乎相同的了。输出层是个purelin,线性组合后的输出层输出当然也全是几乎相同的了。
继续访问
BP神经网络预测实例(matlab代码,神经网络工具箱)
目录辛烷值的预测matlab代码实现工具箱实现 参考学习b站: 数学建模学习交流 bp神经网络预测matlab代码实现过程 辛烷值的预测 【改编】辛烷值是汽油最重要的品质指标,传统的实验室检测方法存在样品用量大,测试周期长和费用高等问题,不适用于生产控制,特别是在线测试。近年发展起来的近红外光谱分析方法(NIR),作为一种快速分析方法,已广泛应用于农业、制药、生物化工、石油产品等领域。其优越性是无损检测、低成本、无污染,能在线分析,更适合于生产和控制的需要。实验采集得到50组汽油样品(辛烷值已通过其他方法测
继续访问
用matlab做bp神经网络预测,matlab人工神经网络预测
ylabel('函数输出','fontsize',12);%画出预测结果误差图figureplot(error,'-*')title('BP网络预测误差','fontsize',12)ylabel('误差','fontsize',12)xlabel('样本','fontsize',12)。三、训练函数与学习函数的区别函数的输出是权值和阈值的增量,训练函数的输出是训练好的网络和训练记录,在训练过程中训练函数不断调用学习函数修正权值和阈值,通过检测设定的训练步数或性能函数计算出的误差小于设定误差,来结束训练。.
继续访问
matlab训练神经网络模型并导入simulink详细步骤
之前的神经网络相关文章: Matlab-RBF神经网络拟合数据 Matlab RBF神经网络及其实例 4.深度学习(1) --神经网络编程入门 本文介绍一下怎么把训练好的神经网络导入到simulink并使用,假定有两个变量,一个输出变量,随机生成一点数据 x1 = rand(1000,1);x2 = rand(1000,1);x = [x1 x2];y = rand(1000,1); 在App里面找到神经网络工具箱 点击Next 选择对应的数据,注意选择好对应的输入和输出,还
继续访问
用matlab做bp神经网络预测,matlab神经网络怎么预测
它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。Network可以看出,你的网络结构是两个隐含层,2-3-1-1结构的网络,算法是traindm,显示出来的误差变化为均方误差值mse。达到设定的网络精度0.001的时候,误差下降梯度为0.0046,远大于默认的1e-5,说明此时的网络误差仍在快速下降,所以可以把训练精度目标再提高一些,比如设为0.0001或者1e-5。如果你所选用的激活函数是线性函数,那么就可以先把输出的表达式写出来,即权向量和输入的矩阵乘积。
继续访问
matlab训练模型、导出模型及VC调用模型过程详解
MATLAB是美国MathWorks公司出品的商业数学软件,为算法开发、数据可视化、数据分析以及数值计算等提供了高级计算语言和交互式环境。随着人工智能的崛起,MATLAB也添加了自己的机器学习工具包,只需要很少的代码或命令就能完成模型训练和测试的过程,训练好的模型也能方便的导出,供VC等调用。本文主要介绍模型训练、导出和调用的整个过程。 软件版本: VC2015,matlab2018a ...
继续访问
matlab神经网络预测模型,matlab人工神经网络预测
谷歌人工智能写作项目:小发猫matlab带有神经网络工具箱,可直接调用,建议找本书看看,或者MATLAB论坛找例子常见的神经网络结构。核心调用语句如下:%数据输入%选连样本输入输出数据归一化[inputn,inputps]=mapminmax(input_train);[outputn,outputps]=mapminmax(output_train);%%BP网络训练%%初始化网络结构net=newff(inputn,outputn,[88]);net.trainParam.epochs=100;=0.0
继续访问
在Matlab中调用pytorch上训练好的网络模型
在Matlab中调用pytorch上训练好的网络模型
继续访问
MATLAB_第二篇神经网络学习_BP神经网络
BP神经网络代码实现1. BP神经网络的简介和结构参数1.1 BP神经网络的结构组成1.2 BP神经网络训练界面的参数解读 非常感谢博主wishes61的分享. 1. BP神经网络的简介和结构参数 一种按照误差逆向传播算法训练的多层前馈神经网络用于预测BP神经网络的计算过程:由正向计算过程和反向计算过程组成。 正向传播过程,输入模式从输入层经隐单元层逐层处理,并转向输出层,每一层神经元的状态只影响下一层神经元的状态。 如果在输出层不能得到期望的输出,则转入反向传播,将误差信号沿原来的连接通路返回,通过修改各
继续访问
MATLAB神经网络拟合回归工具箱Neural Net Fitting的使用方法
本文介绍MATLAB软件中神经网络拟合(Neural Net Fitting)工具箱的具体使用方法~
继续访问
灰色预测工具箱matlab,Matlab灰色预测工具箱——走过数模
2009-07-02 23:05灰色预测几乎是每年数模培训必不可少的内容,相对来说也是比较简单,这里写了四个函数,方便在Matlab里面调用,分别是GM(1,1),残差GM(1,1),新陈代谢GM(1,1),Verhust自己写得难免有所疏忽,需要的朋友自己找本书本来试验一下。。Gm(1,1)function [px0,ab,rel]=gm11(x0,number)%[px0,ab,rel]=gm...
继续访问
matlab利用训练好的BP神经网络来预测新数据(先保存网络,再使用网络)
1,保存网络。save ('net') % net为已训练好的网络,这里把他从workspace保存到工作目录,显示为net.mat文档。 2,使用网络。load ('net') % net为上面保存的网络,这里把他下载到workspace。y_predict = sim(...
继续访问
数学建模学习(79):Matlab神经网络工具箱使用,实现多输入多输出预测
Matlab神经网络工具箱实现,实现多输入多输出预测
继续访问
热门推荐 如何利用matlab做BP神经网络分析(包括利用matlab神经网络工具箱)
利用MATLAB 进行BP神经网络的预测(含有神经网络工具箱) 最近一段时间在研究如何利用预测其销量个数,在网上搜索了一下,发现了很多模型来预测,比如利用回归模型、时间序列模型,GM(1,1)模型,可是自己在结合实际的工作内容,发现这几种模型预测的精度不是很高,于是再在网上进行搜索,发现神经网络模型可以来预测,并且有很多是结合时间序列或者SVM(支持向量机)等组合模型来进...
继续访问
bp神经网络预测案例python_详细BP神经网络预测算法及实现过程实例
1.具体应用实例。根据表2,预测序号15的跳高成绩。表2国内男子跳高运动员各项素质指标序号跳高成绩()30行进跑(s)立定三级跳远()助跑摸高()助跑4—6步跳高()负重深蹲杠铃()杠铃半蹲系数100(s)抓举()12.243.29.63.452.151402.811.05022.333.210.33.752.21203.410.97032.243.09.03.52.21403.511.4504...
继续访问
如何调用MATLAB训练神经网络生成的网络进行预测
如何调用MATLAB训练神经网络生成的网络问题引出知识准备代码注解 问题引出 如何存储和调用已经训练好的神经网络。 本人前几天在智能控制学习的过程中也遇到了这样的问题,在论坛中看了大家的回复,虽然都提到了关键的两个函数“save”和“load”,但或多或少都简洁了些,让人摸不着头脑(呵呵,当然也可能是本人太菜)。通过不断调试,大致弄明白这两个函数对神经网络的存储。下面附上实例给大家做个说明,希望对跟我有一样问题的朋友有所帮助。 知识准备 如果只是需要在工作目录下保到当前训练好的网络,可以在命令窗口 输入:s
继续访问
matlab训练好的模型怎么用
神经网络
F. matlab 神经网络工具箱中的som怎么使用
使用newsom函数创建网络:
net=newsom(PR,[D1,D2,^],TFCN,DFCN,OLR,OSTEPS,TLR,TND)
PR:R个输入元素的最大值和最小值的设定值,R*2维矩阵
Di:第I层的维数,默认为[5 8]
TFCN:拓扑函数,默认为hextop
DFCN:距离函数,默认为linkdist
OLR:分类阶段学习速率,默认为0.9
OSTEPS:分类阶段的步长,默认为1000
TLR:调谐阶段的学习速率,默认为0.02
TNS:调谐阶段的领域距离,默认为1.
例子:
>>P=[rand(1,400)*2;rand(1,400)];
>>plot(P(1,:),P(2,:),'.','markersize',20)
>>net=newsom([01;01],[35]);
>>net=train(net,P);
>>holdon
>>plotsom(net.iw{1,1},net.layers{1}.distances)
>>holdoff
第二个函数:newc函数
功能:该函数用于创建一个竞争层
net=newc
net=newc(PR,S,KLR,CLR)
S:神经元的数目
KLR:Kohonen学习速度,默认为0.01
CLR:Conscience学习速度,默认为0.001
net:函数返回值,一个新的竞争层。
也可以参考附件的代码,里面有一个案例是SOM神经网络的。
G. matlabBP神经网络工具箱,可以调整隐含层节点数嘛
Matlab神经网络工具箱几乎包含了现有神经网络的最新成果,神经网络工具箱模型包括感知回器、线性网络、答BP网络、径向基函数网络、竞争型神经网络、自组织网络和学习向量量化网络、反馈网络BP神经网络具有很强的映射能力,主要用于模式识别分类、函数逼近、函数压缩等。下面通过实例来说明BP网络在函数逼近方面的应用需要逼近的函数是f(x)=1+sin(k*pi/2*x),其中,选择k=2进行仿真,设置隐藏层神经元数目为n,n可以改变,便于后面观察隐藏层节点与函数逼近能力的关系。
H. 如何用MATLAB的神经网络工具箱实现三层BP网络
使用神经网络工具箱可以非常简便地实现网络建立和训练,实例代码如下:
%%BP算法
functionOut=bpnet(p,t,p_test)
%p,t为样本需要提前组织好
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.trainParam.showWindow=false;%阻止训练窗口的弹出
net.trainParam.showCommandLine=false;%阻止训练窗口的弹出
net=train(net,p,t);
Out=sim(net,p_test);
end
上面的代码不完整,完整的带训练样本数据的程序见附件。