Solved – Positive or negative effect of neural network inputs on output in binary classification (MATLAB)

importanceMATLABneural networkssensitivity analysis

  • How we can find an input has positive or negative effects on output in a binary classification neural network in MATLAB R2015a? (with softmax transfer function in output layer, transig for two hidden layers, 5 neurons in first hidden layer and 7 neurons in second hidden layer + 10 inputs).

  • How we can know which inputs have higher weights on output in a trained neural network (MLP)? (most impotent inputs – ranking)?

Best Answer

The most common approach to find feature importance, is to employ a generalized linear model and check its performance by turning off features. The method is described here:

Another approach, that I usually prefer, is to use random forests to compute the feature importance based on their splits and OOB samples. You can find more information at:

If you still want to use a neural network, and given that your features are standardized, the method that you have to follow is called Sensitivity Analysis (as you have it in your tags). It does exactly what you want, but probably you will have to code it yourself. I would refer you for more information about implementing it to: