码迷,mamicode.com
首页 > 其他好文 > 详细

paper 75:使用MATLAB的神经网络工具箱创建神经网络

时间:2016-06-06 12:09:05      阅读:305      评论:0      收藏:0      [点我收藏+]

标签:

 

% 生成训练样本集
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……
20111130
神经网络工具箱 
  
版本7.0(R2010b) 
  
  
图形用户界面功能。 
    
nnstart - 神经网络启动GUI 
    
nctool - 神经网络分类工具 
    
nftool - 神经网络的拟合工具 
    
nntraintool - 神经网络的训练工具 
    
nprtool - 神经网络模式识别工具 
    
ntstool - NFTool神经网络时间序列的工具 
    
nntool - 神经网络工具箱的图形用户界面。 
    
查看 - 查看一个神经网络。 
  
  
网络的建立功能。 
    
cascadeforwardnet - 串级,前馈神经网络。 
    
competlayer - 竞争神经层。 
    
distdelaynet - 分布时滞的神经网络。 
    
elmannet - Elman神经网络。 
    
feedforwardnet - 前馈神经网络。 
    
fitnet - 函数拟合神经网络。 
    
layrecnet - 分层递归神经网络。 
    
linearlayer - 线性神经层。 
    
lvqnet - 学习矢量量化(LVQ)神经网络。 
    
narnet - 非线性自结合的时间序列网络。 
    
narxnet - 非线性自结合的时间序列与外部输入网络。 
    
newgrnn - 设计一个广义回归神经网络。 
    
newhop - 建立经常性的Hopfield网络。 
    
newlind - 设计一个线性层。 
    
newpnn - 设计概率神经网络。 
    
newrb - 径向基网络设计。 
    
newrbe - 设计一个确切的径向基网络。 
    
patternnet - 神经网络模式识别。 
    
感知 - 感知。 
    
selforgmap - 自组织特征映射。 
    
timedelaynet - 时滞神经网络。 
  
  
利用网络。 
    
网络 - 创建一个自定义神经网络。 
    
SIM卡 - 模拟一个神经网络。 
    
初始化 - 初始化一个神经网络。 
    
适应 - 允许一个神经网络来适应。 
    
火车 - 火车的神经网络。 
    
DISP键 - 显示一个神经网络的属性。 
    
显示 - 显示的名称和神经网络属性 
    
adddelay - 添加延迟神经网络的反应。 
    
closeloop - 神经网络的开放反馈转换到关闭反馈回路。 
    
formwb - 表格偏见和成单个向量的权重。 
    
getwb - 将它作为一个单一向量中的所有网络权值和偏差。 
    
noloop - 删除神经网络的开放和关闭反馈回路。 
    
开环 - 转换神经网络反馈,打开封闭的反馈循环。 
    
removedelay - 删除延迟神经网络的反应。 
    
separatewb - 独立的偏见和重量/偏置向量的权重。 
    
setwb - 将所有与单个矢量网络权值和偏差。 
  
  
Simulink的支持。 
    
gensim - 生成Simulink模块来模拟神经网络。 
    
setsiminit - 集神经网络的Simulink模块的初始条件 
    
getsiminit - 获取神经网络Simulink模块的初始条件 
    
神经元 - 神经网络Simulink的模块库。 
  
  
培训职能。 
    
trainb - 批具有重量与偏见学习规则的培训。 
    
trainbfg - 的BFGS拟牛顿倒传递。 
    
trainbr - 贝叶斯规则的BP算法。 
    
trainbu - 与重量与偏见一批无监督学习规则的培训。 
    
trainbuwb - 与体重无监督学习规则与偏见一批培训。 
    
trainc - 循环顺序重量/偏见的培训。 
    
traincgb - 共轭鲍威尔比尔重新启动梯度反向传播。 
    
traincgf - 共轭弗莱彻-里夫斯更新梯度反向传播。 
    
traincgp - 共轭波拉克- Ribiere更新梯度反向传播。 
    
traingd - 梯度下降反向传播。 
    
traingda - 具有自适应LR的反向传播梯度下降。 
    
traingdm - 与动量梯度下降。 
    
traingdx - 梯度下降瓦特/惯性与自适应LR的反向传播。 
    
trainlm - 采用Levenberg -马奎德倒传递。 
    
trainoss - 一步割线倒传递。 
    
trainr - 随机重量/偏见的培训。 
    
trainrp - RPROP反向传播。 
    
trainru - 无监督随机重量/偏见的培训。 
    
火车 - 顺序重量/偏见的培训。 
    
trainscg - 规模化共轭梯度BP算法。 
  
  
绘图功能。 
    
plotconfusion - 图分类混淆矩阵。 
    
ploterrcorr - 误差自相关时间序列图。 
    
ploterrhist - 绘制误差直方图。 
    
plotfit - 绘图功能适合。 
    
plotinerrcorr - 图输入错误的时间序列的互相关。 
    
plotperform - 小区网络性能。 
    
plotregression - 线性回归情节。 
    
plotresponse - 动态网络图的时间序列响应。 
    
plotroc - 绘制受试者工作特征。 
    
plotsomhits - 小区自组织图来样打。 
    
plotsomnc - 小区自组织映射邻居的连接。 
    
plotsomnd - 小区自组织映射邻居的距离。 
    
plotsomplanes - 小区自组织映射重量的飞机。 
    
plotsompos - 小区自组织映射重量立场。 
    
plotsomtop - 小区自组织映射的拓扑结构。 
    
plottrainstate - 情节训练状态值。 
    
plotwb - 图寒春重量和偏差值图。 
  
  
列出其他神经网络实现的功能。 
    
nnadapt - 适应职能。 
    
nnderivati??ve - 衍生功能。 
    
nndistance - 距离函数。 
    
nndivision - 除功能。 
    
nninitlayer - 初始化层功能。 
    
nninitnetwork - 初始化网络功能。 
    
nninitweight - 初始化权函数。 
    
nnlearn - 学习功能。 
    
nnnetinput - 净输入功能。 
    
nnperformance - 性能的功能。 
    
nnprocess - 处理功能。 
    
nnsearch - 线搜索功能。 
    
nntopology - 拓扑结构的功能。 
    
nntransfer - 传递函数。 
    
nnweight - 重量的功能。 
  
  
示例,数据集和其他资源 
    
nndemos - 神经网络工具箱的示威。 
    
nndatasets - 神经网络工具箱的数据集。 
    
nntextdemos - 神经网络设计教科书的示威。 
    
nntextbook - 神经网络设计教科书的资讯。 

 

paper 75:使用MATLAB的神经网络工具箱创建神经网络

标签:

原文地址:http://www.cnblogs.com/molakejin/p/5563088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!