① 如何用c#调用Matlab神经网络的工具箱
把问题描述清楚些,或许能帮助你解决。
具体如下:
1.m文件
function net = TrainNN(input, output)
x = input';
y = output';
net = newrb(x,y);
2.C#调用代码
MWArray net = cla.TrainNN((MWNumericArray)inputData, (MWNumericArray)outputData);
其中inputData是double[100,2]数组,outputData是double[100,1]数组
3.调用异常
??? Undefined function or method 'newrb' for input arguments of type 'double'.
Error in ==> TrainNN at 5
System.Exception:
... MWMCR::EvaluateFunction error ...
Undefined function or method 'newrb' for input arguments of type 'double'.
Error in =>TrainNN.m at 5.
② 求助神经网络MATLAB程序
你用的工具箱函数了吗?用工具箱函数可以简单点,工具箱调用是nntool;在command
windows使用,先用import,将数据分别放入
inputs和targets(导入数据)。然后按NEW
NETWORK选择结构,选择Feedforward
Backprop,确定Number
of
Layers(网络层数),在下面确定每层节点数,然后选择下函数:logsig
,purelin,tansig。最后,关闭此窗口。单击View,即可显示结构。
然后按train,在
inputs和targets里面填入输入值X和训练的Y,在training
parameters中设置你要的参数,比如误差。最后按train就可以开始训练。完了一定记住按网络模型输出(Export),将模型转入command
windows。下面调用:如y1=sim(network1,x0);plot(x,y,'o',x0,y0,y1,':')。
如果你要程序,可以这样:
function
BP
x=[-1:0.01:1];
y=[-1:0.01:1];
p=[x;y];
T=x.^2+y.^2;
x0=[-1:0.1:1];
y0=[-1:0.1:1];
p0=[x0;y0];
T0=x0.^2+y0.^2;
net=newff(minmax(p),[10,1],{'logsig','purelin'});
net.trainParam.epochs=10000;
net.trainParam.goal=1e-6;
net=train(net,p,T);
figure;
T1=sim(net,p0);
plot(p,T,'o',p0,T0,p0,T1,':');
end
③ bp神经网络 matlab 工具箱怎么调出来
有神经网络的工具箱,bp是配出来的!
④ matlab VC混合编程调用神经网络工具箱
调用MATLAB Engine虽然可以实现对神经网络工具箱的功能,但是因为这种方法是基于C/S模式的,效率很低,而且需要在matlab下实现其功能,无法脱离matlab直接运行,所以,基于这个原因,我放弃了利用MATLAB Engine来实现混合编程。利用C++数学库虽然可以脱离MATLAB直接运行,但是C++数学库并不支持神经网络工具箱,所以,无法实现基于神经网络的混合编程。利用mcc命令虽然可以直接生成.exe文件,并可以脱离MATLAB在VC++中直接运行,但是因为其自身的诸多缺点,这种方法并不能编译神经网络函数为C++文件,所以,也无法胜任这个任务。 最后,只有COM组件这一个办法了,由于COM组件技术的强大功能,利用matlab的COM Builder工具可以实现脱离matlab的混合编程,并成功的调用了神经网络工具箱。
⑤ 如何用c#调用Matlab神经网络的工具箱
如果是用Matlab提供的GUI界面,在命令窗口输入命令nntool回车即可。 建议不要用GUI界面,直接在代码中调用神经网络工具箱,使用更方便,参数设置更明了。神经网络工具箱提供多个函数接口,不同的神经网络对应不同的函数
⑥ matlab怎么打开神经网络工具箱
1单击Apps,在搜索框中输入neu,下方出现了所有神经网络工具箱。neural net fitting 是我们要使用的神经网络拟合工具箱。
2
在下界面中点击next
3
单击load example data set,得到我们需要的测试数据。
4
单击import
5
单击next
6
单击next
7
数字“10”表示有10个隐含层。单击next。
8
单击train,开始训练。
9
训练过程跳出的小窗口。
10
训练结果。其中MSE表示均方差,R 表示相关系数。单击next。
11
这里可以调整神经网络,也可以再次训练。单击next。
12
在这里,可以保存结果。如果不需要,直接finish。
⑦ matlab调用神经网络工具箱
你的p1,p2现在是一个9*2的矩阵,要改成五种直接把你的数据输入,将p1,p2改成9*5的矩阵就可以了,如p1=[1.24 1.27 1.36 1.74 1.38;1.64 1.38 1.82 1.381.90…………];等,你的x也是一样,改成5列的。
⑧ 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……
⑨ matlab怎么打开神经网络工具箱
在matlab命令窗口中,输入>>nnstart %回车后就会弹出神经网络工具箱主窗口。⑩ 怎么用遗传算法工具箱调用神经网络来寻求最优解啊
把你之前训练好的网络设置成一个全局变量ann,然后建立一个函数func,在func函数中调用这个训练好的网络ann获得输出。最后,遗传算法调用func作为目标函数