注册 登录
编程论坛 Matlab

样本 输入 输出

带她去看海 发布于 2007-09-20 18:19, 2018 次点击
%训练样本准备
%输入矢量矩阵
pp=[1 2 3;2 1 3;2 3 1;1 3 2;3 1 2;3 2 1];
%输入数据归一化
p=prestd(pp)';
%目标矢量矩阵
t=[1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0;0 0 0 1 0 0;0 0 0 0 1 0;0 0 0 0 0 1]';
%建立网络结构
net1=newff(minmax(p),[6,15,6],{'tansig','tansig','purelin'},'traingdm');
%设置网络参数
net1.trainParam.show=50;
net1.trainParam.lr=0.2;
net1.trainParam.mc=0.2;
net1.trainParam.epochs=10000;
net1.trainParam.goal=1e-5;
%对网络进行训练
[net1,tr]=train(net1,p,t);
各位大侠,帮我解释一下
从这个程序可以看出,输入层神经元接点为6,样本数为3个,输出层的神经元节点为6,可是从目标矢量矩阵看来训练样本数为6个,这是什么原因?
还有训练好之后我怎么才能得到各曾的权值?
11 回复
#2
jiangbiao662007-09-20 21:15
实际上按照pp=[1 2 3;2 1 3;2 3 1;1 3 2;3 1 2;3 2 1];来说输入神经元是六个
但经过p=prestd(pp)';处理后,你使用了传置
输入神经元节电数变为3,训练样本为六
把次数改为net1.trainParam.epohs=10000;比较合适



#3
jiangbiao662007-09-20 21:16

至于取权值 我还没有成功

#4
带她去看海2007-09-20 22:31
那如果我要查看哪个输入神经元对输出神经元有贡献,怎么做啊?
我现在在做一个中医诊断神经网络
输入神经元为病人所有的症状,输出神经元为症型,这个网络所要做的是症状到症型的映射,找出每一种症型所包含的症状,也就是说对症型影响较大的症状是哪些.
每一种症行都有对它影响较大的症状.
这个怎么去确定呢?
#5
带她去看海2007-09-20 22:36
症状以有为1,无为0
症型也是有为1,无为0;
#6
jiangbiao662007-09-21 20:09
我看上面你做的那个网络就可以
#7
带她去看海2007-09-23 21:54
可是可以,可训练之后我不知道该怎么样去确定哪些症状对症型的影响比较大啊?
#8
seidel2007-09-24 11:16
你建立的网络结构输入层神经元数是6个,输出层神经元也是六个,隐层有15个神经元,
建立网络结构 必须要这样做
net1=newff(minmax(p),[15,6],{'tansig','purelin'},'traingdm');
net1.trainParam.show=50;
net1.trainParam.lr=0.2;
net1.trainParam.mc=0.2;
net1.trainParam.epochs=10000;
net1.trainParam.goal=1e-5;
%对网络进行训练
[net1,tr]=train(net1,p,t);
到此神经网络训练就结束了,查看神经网络的各层权重矩阵和阈值向量就可以使用下面的命令:
>>net1.iw{1,1}
>>net1.b{1}



#9
带她去看海2007-09-24 15:03
那得到权值之后根据什么可以判定输入神经元对输出神经元的影响呢?
就是说对于每个输出神经元,对它影响最大的输入神经元是哪些?
#10
seidel2007-09-25 09:07

我个人认为应该是权值最大的那个神经元吧。

#11
带她去看海2007-09-25 16:12

可是对于每一个样本,输入神经元都有一个权值.
>> net1.iw{1,1}

ans =

1.4269 -0.2058 2.1866
-1.1312 -2.1157 1.0780
0.5616 1.7941 -1.7882
-0.5272 -1.1336 -2.1159
1.8070 0.6691 1.5407
1.1959 1.2797 1.8390
你说这个怎么去确定啊?
对于我上面列出的程序,到底是三个样本还是六个样本,如果是三个样本,可从输出看却是六个样本?
这个怎么解释?

#12
带她去看海2007-09-26 08:27

可是对于每一个样本,它的输入神经元都有一个权值,怎么确定啊
>> net1.iw{1,1}

ans =

1.4269 -0.2058 2.1866
-1.1312 -2.1157 1.0780
0.5616 1.7941 -1.7882
-0.5272 -1.1336 -2.1159
1.8070 0.6691 1.5407
1.1959 1.2797 1.8390

1