MATLAB中模糊神经网络工具箱的使用
扫描二维码
随时随地手机看文章
前些天把玩了一下MATLAB中神经网络工具箱的使用,忽有“扪参历井仰胁息”之感。别的倒是没什么,只是神经网络的数据组织结构有些“怪异”,要是不小心就会导致工具箱报错。以下便是神经网络工具箱的正确打开姿势,谨供诸君参考:
先贴一个使用批处理命令调用神经网络工具箱的方法:
P = [0.1515 0.1501 0.1509 0.1504 0.1504 0.1500
0.1515 0.1501 0.1509 0.1504 0.1504 0.1500
0.1515 0.1501 0.1500 0.1504 0.1504 0.1500
0.1515 0.1500 0.1509 0.1504 0.1504 0.1500
0.1515 0.1500 0.1509 0.1504 0.1504 0.1500
0.1515 0.1500 0.1509 0.1504 0.1504 0.1500
0.9684 0.2792 0.877 0.7426 0.7228 0.2272
0.9838 0.2941 0.9181 0.7977 0.7702 0.2452
0.9922 0.3101 0.9475 0.8445 0.8227 0.2665
0.9953 0.3058 0.9625 0.8708 0.8637 0.2624
0.9982 0.3242 0.9797 0.9089 0.9001 0.3008
0.9995 0.3469 0.9917 0.9314 0.9282 0.3678
0.9998 0.3565 0.9948 0.9493 0.9525 0.4500];
T= [0.1521
0.6949
0.7064
0.7083
0.7560
0.7807
0.8182
0.8533
0.8677
0.8459
0.8910
0.9269
0.9496];
P=P‘;T=T’;
ff=newff(P,T,13);
ff.trainParam.epochs = 15000;
ff = train(ff,P,T);
Y1 = sim(ff,P);
cf=newcf(P,T,13);
cf.trainParam.epochs = 15000;
cf = train(cf,P,T);
Y2 = sim(cf,P);
plot(P,T,‘o-’);
hold on;
plot(P,Y1,‘^m-’);
plot(P,Y2,‘*-k’);
TItle(‘newff & newcf’)
legend(‘原始数据’,‘newff结果’,‘newcf结果’,0);
上面这个方法要注意P和T应该要先进行转置,即神经网络训练样本是矩阵的每一个列。
首先要做的自然是安装MATLAB,这个步骤我就不过多描述了,请诸君自行参悟。打开后在命令行输入:anfisedit ,然后就会出现如下的界面:
首先点击第一个红框中的“Load Data”按钮来导入数据,可以从文件导入也可以从工作空间导入。这里要说明的是导入数据的格式,它必须满足如下的要求:数据前面部分是系统输入,后面部分是系统输出。假设我们的系统是3输入1输出,那么数据就应该是:[x1,x2,x3,y]。
先导入系统所需的训练数据(第一个红框选的是数据类型为:Training)。导入数据后,工具箱会在相应位置打点,情况如下:
单击“Edit”菜单下的“FIS ProperTIes”选项,出现如下的界面: