SeriesMachine Learning14 / 20

Feature Selection

Module 14 of CS 7641 - Machine Learning @ Georgia Tech. Lesson 3 of Unsupervised Learning Series.

What is Feature Selection?#

Definition#

Feature Selection refers to the process of subsetting a set of features for use in subsequent analytic methods. We typically perform feature selection as part of preprocessing for other machine learning methods (e.g., supervised learning, clustering, etc.). This is done for two primary reasons:

Time Complexity#

Given an initial feature set of NN features, we are interested in finding a subset of size MM. If we know MM in advance, we must compare over NN choose MM possible subsets. We don’t typically have a desired subset size, meaning we have 2N12^N - 1 possible subsets!

Feature selection therefore has exponential time complexity and is considered a nondeterministic polynomial (NP) hard problem.

Feature Selection Approaches#

Feature selection methods may be broadly grouped into two main categories.

Filtering Methods#

Feature selection by Filtering works by performing feature selection prior to a learning algorithm. Evaluation is bundled into the feature selection search algorithm, and is not intertwined with the learning process.

filtering

In general, any filtering feature selection algorithm works as follows:

  1. Define function to evaluate usefulness of feature subset (e.g., information gain, non-dependent features, statistical test, etc.).
  2. Apply function to each possible subset, and keep top MM subsets.

Wrapping Methods#

Conversely, Wrapping performs feature selection in conjunction with a learning algorithm. Subsets are evaluated by fitting the learning algorithm, implying feature selection and learning are an intertwined process.

wrapping

Examples of wrapping feature selection include forward selection and backward selection! Forward selection works by iteratively adding the “best” feature to a subset until reaching some evaluation threshold. Conversely, backward selection involves starting with the full feature set and iteratively removing the “worst” (least informative) feature.

Comparison of Properties#

Filtering tends to be faster than wrapping because it does not use the learning process as part of subset search. This comes with the downside of feature isolation, meaning we evaluate candidate feature subsets outside of the context of the end-goal learning algorithm.

Although wrapping is much slower, it takes into account model bias to determine the best feature subset. Wrapping therefore makes more sense conceptually, but can come at a very high cost depending on the end-goal learning algorithm (e.g., deep neural network)!

In the context of feature selection, Relevance refers to the degree of association / utility a feature has with the target (e.g., evaluation).

xi\mathbf{x}_i is strongly relevant if removing it degrades the Bayes Optimal Classifier (B.O.C.).
xi\mathbf{x_i} is weakly relevant if it is not strongly relevant, and \exists some subset of features SS such that adding xi\mathbf{x}_i to SS improves the B.O.C.
xi\mathbf{x}_i is irrelevant otherwise.

Relevance measures effect on the B.O.C., whereas usefulness measures effect on a particular predictor. Relevance is related to information, whereas usefulness has an impact on error / learning.


(all images obtained from Georgia Tech ML course materials)

License

CC BY-NC-SA 4.0 This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Related Posts