How to compute sensitivity analysis in neural network model?
Mostrar comentarios más antiguos
How to compute sensitivity analysis in neural network model? I would like to find the level of importance of each input.
Input value is 12x1505 double. Target value is 1x1505 double.
Here is my code:
x = Input';
t = Target';
trainFcn = 'trainlm';
hiddenLayerSize = 3;
net = feedforwardnet(hiddenLayerSize,trainFcn);
net.input.processFcns = {'removeconstantrows','mapminmax'};
net.output.processFcns = {'removeconstantrows','mapminmax'};
net.divideFcn = 'divideind';
net.divideParam.trainInd = 1:903;
net.divideParam.valInd = 904:1204;
net.divideParam.testInd = 1205:1505.
net.performFcn = 'mse';
[net,tr] = train(net,x,t);
y = net(x);
e = gsubtract(t,y);
performance = mse(net,t,y)
trainTargets = t .* tr.trainMask{1};
valTargets = t .* tr.valMask{1};
testTargets = t .* tr.testMask{1};
trainPerformance = perform(net,trainTargets,y)
valPerformance = perform(net,valTargets,y)
testPerformance = perform(net,testTargets,y)
view(net)
Thank you very much
Janthorn
1 comentario
Greg Heath
el 28 de Mzo. de 2015
It is confusing when you make assignments that are already defaults
trainFcn = 'trainlm';
net = feedforwardnet(hiddenLayerSize,trainFcn) ;
net.input.processFcns = {'removeconstantrows','mapminmax'};
net.output.processFcns = {'removeconstantrows','mapminmax'};
net.performFcn = 'mse';
Respuesta aceptada
Más respuestas (1)
Wolfram Rinke
el 3 de Nov. de 2017
0 votos
You can also calculate the partial derivates of your ANN.
Categorías
Más información sobre Deep Learning Toolbox en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!