multout.m

来自「《面向matlab工具箱的神经网络理论与应用》配套源程序」· M 代码 · 共 18 行

M
18
字号
% multout.m
P = [ 0.1  0.5; 0.3  -0.2 ];	% 已知输入矢量数据
S1 = 2;	S2 =3;	S3 = 5;		    % 已知各层节点数
[ R, Q ] = size (P);		    % 求出输入矢量的行和列
[ W1, B1 ] = rands (S1, R);		% 给第一隐含层权值赋(-1, 1)之间的随机值
[ W2, B2 ] = rands (S2, S1);	% 给第二隐含层权值赋(-1, 1)之间的随机值
[ W3, B3 ] = rands (S3, S2);	% 给输出层权值赋(-1, 1)之间的随机值
B10 = cat(2, B1, B1);           % 通过B10 = [B1, B1]将S1 1的B1矩阵合成为一个
                                % S1 Q的B10矩阵以便进行下面的加法运算
n1 = W1*P + B10;				% 计算第一层的加权输入和
A1 = hardlims ( n1 )		    % 计算第一层输出表达式
B20 = cat(2, B2, B2);			% 用两个S2 1的B2矩阵组成一个S2 Q矩阵
n2 = W2*A1 + B20;			    % 计算第二层的加权输入和
A2 = logsig ( n2 )		        % 计算第二层输出表达式
B30 = cat(2, B3, B3);			% 用两个S3 1的B3矩阵组成一个S3 Q矩阵
n3 = W3*A2 + B30; 			    % 计算输出层的加权输入和
A3 = purelin ( n3 )		        % 计算输出层输出表达式

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?