Feature selection using neural network
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Max Mefodovskiy
am 19 Apr. 2016
Bearbeitet: Greg Heath
am 26 Nov. 2016
Hello. I need to select the most informative input parameters using a neural network. I tried using autoencoder, but I did not succeed. Can you advise me(or give ready code if it is exist) how I can determine the most important parameters in the input sample?
INPUT matrix: 114(features)x426(samples), outputs: 62x426.
Data look so: inputs (1; 85,4794464111327; 56,4613265991210; 0; 0; 0; 0; 29,0181198120117; 0; 51,6929779052734; 87; 50; 32; 18; 137,172424316406 ...),
outputs (0,731800019741058; 0,555100023746491; 0,214200004935265; 0,00219999998807907; 0,0132999997586012; 0,00289999996311963; 0,00689999992027879; 0,00130000000353903; 0,00150000001303852; 0,0496999993920326; 0,0828000009059906; 0,142299994826317...). It is one sample of 426.
0 Kommentare
Akzeptierte Antwort
Greg Heath
am 20 Apr. 2016
The most important of I inputs in "I"nput matrices with I rows and N columns depends on the "O"utput target matrix with O rows and N columns.
If input and output variables are separately standardized to zero-mean/unit-variance variables, inputs can be ranked more easily via stepwise selection algorithms. The most common of these are forward selection and backward selection. However, there are also combined forward/backward and backward/forward algorithms.
I tend to rely on the stepwise selection algorithms for linear transformations. These are available from the MATLAB function STEPWISEFIT.
A command line search yields
>> lookfor stepwise
addedvarplot - Create added-variable plot for stepwise regression
stepwise - Interactive tool for stepwise regression.
stepwisefit - Fit regression model using stepwise regression
stepwiseglm - Create generalized linear regression model by stepwise regression.
stepwiselm - Create 1st order linear regression model by stepwise regression.
The help and doc commands yield explanations and examples.
Another possibility is to use a 2nd order linear regression model by adding crossproducts and squares.
Most likely there are more sophisticated algorithms available. However, I have never had the need.
Hope this helps.
Thank you for formally accepting my answer
Greg
2 Kommentare
Greg Heath
am 26 Nov. 2016
Bearbeitet: Greg Heath
am 26 Nov. 2016
1 Since a neural network is a universal approximator, the most important inputs to the function must be the most important inputs to a minmimun MSE NN which is not overfit (and probably, the best when it is underfit!)
2. The only way to determine what inputs are the most important is via a complete search of all of the input combinations.
3. The most practical way to estimate input rankings is via a backward search with standardized inputs and targets.
4. Forward-Backward and Backward-Forward searches may yield better solutions. However, the additional effort is seldom worth the amount of improvement.
Greg
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!