
crear red neuronal de tipo perceptrón multicapa con tus propios pesos y bias
Publicado por Wilber (7 intervenciones) el 09/05/2018 17:07:53
Muy buenas,
Alguien sabe cómo crear una red de tipo perceptrón multicapa de una capa oculta y con diez neuronas en esa capa oculta pero a la vez también definirle los pesos iniciales y bias para entrenar la red con esos datos esto quiciera hacerlo mediante los códigos necesarios y no con la erramienta nntool
para un ejemplo intenté hacerlo con estas líneas de código pero no me compila:
[x,t] = wine_dataset;
net =feedforwardnet(10); % esta linea es la que me choca, debe haber algún modo de definir que es de tipo perceptrón multicapa con una capa oculta y diez neuronas en esa capa oculta y que además me permita definir los pesos iniciales
net.IW{1,1}=[-0.018151 -0.14478 0.87845 -0.60477 -0.20309 0.14797 -0.59583 -0.75896 -0.69415 -0.074939 0.34347 0.17983 -0.050415; -0.23017 0.6927 -0.47162 0.50982 0.119 -0.56246 -0.46065 -0.2587 0.15912 0.53829 -0.6195 -0.16237 -0.66572; 0.70922 -0.31179 -0.73398 0.22733 -0.38975 0.63805 -0.1211 0.048468 0.43782 0.028348 -0.38507 0.65325 -0.50899; 0.64409 0.30815 0.093779 -0.18959 -0.32112 0.58176 -0.62178 0.23666 -0.1173 0.67978 -0.42287 -0.76441 0.33981; -0.82624 0.30724 0.70534 -0.57089 0.21628 0.58693 0.18198 -0.17063 -0.75578 0.25436 0.31 -0.069359 -0.048974; 0.43996 0.072372 0.31292 -0.13271 -0.43416 -0.44258 -0.053781 0.59187 -0.43196 0.84659 0.63702 -0.13993 -0.64236; -0.48729 0.41811 -0.65336 -0.037944 0.68462 0.19915 0.41356 0.46086 -0.73098 -0.54725 -0.32827 -0.082489 -0.33532; -0.11987 0.25868 -0.20363 -0.58934 0.74977 -0.74173 0.31051 0.728 -0.34019 0.27359 0.43576 0.41967 0.16682; 0.12657 -0.85099 -0.10384 0.23665 0.60876 -0.19761 0.36627 0.082845 -0.15841 -0.5577 0.46357 -0.46937 -0.815; 0.6344 -0.53302 0.69014 -0.39235 -0.22371 -0.26836 -0.6683 -0.25055 0.038893 0.24619 -0.70683 0.40801 0.34164];
net.IW{2,1}=[-0.48796 0.5038 -0.77589 0.088413 0.28011 0.84475 -0.50052 -0.094617 0.51288 -0.15909; 0.78798 -0.58772 0.14386 -0.1402 0.33793 -0.54945 -0.71848 -0.077915 -0.28275 0.64547; -0.57781 -0.53168 0.45878 0.3614 0.33974 0.52363 0.26848 0.40519 0.40535 0.83296];
net.b{1}=[1;1;1;1;1;1;1;1;1;1];
net.b{2}=[1;1;1];
[net,tr] = train(net,x,t);
gracias de antemano
Alguien sabe cómo crear una red de tipo perceptrón multicapa de una capa oculta y con diez neuronas en esa capa oculta pero a la vez también definirle los pesos iniciales y bias para entrenar la red con esos datos esto quiciera hacerlo mediante los códigos necesarios y no con la erramienta nntool
para un ejemplo intenté hacerlo con estas líneas de código pero no me compila:
[x,t] = wine_dataset;
net =feedforwardnet(10); % esta linea es la que me choca, debe haber algún modo de definir que es de tipo perceptrón multicapa con una capa oculta y diez neuronas en esa capa oculta y que además me permita definir los pesos iniciales
net.IW{1,1}=[-0.018151 -0.14478 0.87845 -0.60477 -0.20309 0.14797 -0.59583 -0.75896 -0.69415 -0.074939 0.34347 0.17983 -0.050415; -0.23017 0.6927 -0.47162 0.50982 0.119 -0.56246 -0.46065 -0.2587 0.15912 0.53829 -0.6195 -0.16237 -0.66572; 0.70922 -0.31179 -0.73398 0.22733 -0.38975 0.63805 -0.1211 0.048468 0.43782 0.028348 -0.38507 0.65325 -0.50899; 0.64409 0.30815 0.093779 -0.18959 -0.32112 0.58176 -0.62178 0.23666 -0.1173 0.67978 -0.42287 -0.76441 0.33981; -0.82624 0.30724 0.70534 -0.57089 0.21628 0.58693 0.18198 -0.17063 -0.75578 0.25436 0.31 -0.069359 -0.048974; 0.43996 0.072372 0.31292 -0.13271 -0.43416 -0.44258 -0.053781 0.59187 -0.43196 0.84659 0.63702 -0.13993 -0.64236; -0.48729 0.41811 -0.65336 -0.037944 0.68462 0.19915 0.41356 0.46086 -0.73098 -0.54725 -0.32827 -0.082489 -0.33532; -0.11987 0.25868 -0.20363 -0.58934 0.74977 -0.74173 0.31051 0.728 -0.34019 0.27359 0.43576 0.41967 0.16682; 0.12657 -0.85099 -0.10384 0.23665 0.60876 -0.19761 0.36627 0.082845 -0.15841 -0.5577 0.46357 -0.46937 -0.815; 0.6344 -0.53302 0.69014 -0.39235 -0.22371 -0.26836 -0.6683 -0.25055 0.038893 0.24619 -0.70683 0.40801 0.34164];
net.IW{2,1}=[-0.48796 0.5038 -0.77589 0.088413 0.28011 0.84475 -0.50052 -0.094617 0.51288 -0.15909; 0.78798 -0.58772 0.14386 -0.1402 0.33793 -0.54945 -0.71848 -0.077915 -0.28275 0.64547; -0.57781 -0.53168 0.45878 0.3614 0.33974 0.52363 0.26848 0.40519 0.40535 0.83296];
net.b{1}=[1;1;1;1;1;1;1;1;1;1];
net.b{2}=[1;1;1];
[net,tr] = train(net,x,t);
gracias de antemano
Valora esta pregunta


0