What is a good Dimensionality Reduction technique I can use?
4 views (last 30 days)
Show older comments
I'm currently analyzing human gait, and designing a system for automatic recognition based on those unique traits. My features are extracted by accumulating the difference between sequential frames taken from video sequences of walking subjects. and then applying DCT at one stage to get one feature vector per sample, of dimension 100. I'm using a linear classifier. Upon testing the classifier, I get a Recognition Rate of around 75%. One of the techniques I'm trying to enhance my Rate is Dimensionality Reduction. I'v tried one Pattern-Recognition Tool Box I found on the web, including techniques like PCA, LPP, etc. I've also tried the Matlab function stepwisefit. However, none of the mentioned seems to work with me.
I'd appreciate if anyone can advise me for a good technique I should try. whether a built-in Matlab function or another code? What would be the best way to test these techniques?
0 Comments
Accepted Answer
Ilya
on 26 Sep 2012
Your best chance would be to set up variable selection based on that linear classifier you are using (you don't say what it is). For 100 features, sequentialfs from Statistics Tlbx could produce results within reasonable time; it depends, of course, on how many observations you have. If your data has two classes, I am surprised stepwisefit did not help since linear regression often gives a decent approximation to linear binary classification. If you have R2012a or later, you could try ClassificationDiscriminant with thresholding and possibly regularization. It is also possible that 75% is as good as you can ever do with a linear technique.
Other possibilities are mentioned here: http://www.mathworks.com/matlabcentral/answers/33808-select-machine-learning-features-in-matlab
4 Comments
Ilya
on 18 Nov 2012
It appears that you obtain low classification accuracy because the training set is sampled from one distribution and the test set is sampled from another. This issue may not be fixable by any feature selection procedure. In particular, stepwisefit only looks at the training data and therefore does not address this issue at all. You don't say what data are passed to sequentialfs, but I suspect you pass only the "normal" set as well.
Here is an obvious question: Why not include your sets 2 and 3 in the training set?
More Answers (0)
See Also
Categories
Find more on Dimensionality Reduction and Feature Extraction in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!