effectiveness of input in neural net

2 views (last 30 days)
h c
h c on 24 Jan 2016
Commented: Greg Heath on 25 Jan 2016
hi I read on http://www.mathworks.com/matlabcentral/answers/83053-regularization-in-neural-networks-help-needed that "To rank the effectiveness of each input just use randperm to scramble it's order and record the resulting increase in mse."
Can you please help to elaborate how that can be done?
Thanks.

Accepted Answer

Greg Heath
Greg Heath on 24 Jan 2016
I don't know how to be any clearer than that. So, why don't you submit your code and I can comment
  2 Comments
h c
h c on 24 Jan 2016
hi Greg - thanks for the prompt response. I prepare my input outside of matlab so I don't exactly have that code for comment, but maybe I can ask a clarifying question (I just didn't know what "it's order" in the original statement was referring to). Did you mean to use randperm to change order of all input values of a specific feature, and measure resulting increase in mse? Then do it in turn for other features, and then the feature with biggest increase in mse is the most effective, etc.?
Thanks again.
Greg Heath
Greg Heath on 25 Jan 2016
Yes.
However, I find it useful to use zscore or mapstd to standardize the inputs to zero-mean/unit-variance.
Then in addition to
1. input(i,1:N) --> input( i, randperm(N))
You could also use
2. input(i,1:N) --> randn(1,N)
or
3. input(i,1:N) --> zeros(1,N)
I have also found that just using the MATLAB backward or forward ranking algorithms on a linear coefficient model tends to yield good results.
Hope this helps.
Greg

Sign in to comment.

More Answers (0)

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!