Linear classifier explained

In the field of machine learning, the goal of statistical classification is to use an object's characteristics to identify which class (or group) it belongs to. A linear classifier achieves this by making a classification decision based on the value of a linear combination of the characteristics. An object's characteristics are also known as feature values and are typically presented to the machine in a vector called a feature vector. Such classifiers work well for practical problems such as document classification, and more generally for problems with many variables (features), reaching accuracy levels comparable to non-linear classifiers while taking less time to train and use. 5–12–23

Definition

If the input feature vector to the classifier is a real vector

\vecx

, then the output score is

y=f(\vec{w}\vec{x})=f\left(\sumjwjxj\right),

where

\vecw

is a real vector of weights and f is a function that converts the dot product of the two vectors into the desired output. (In other words,

\vec{w}

is a one-form or linear functional mapping

\vecx

onto R.) The weight vector

\vecw

is learned from a set of labeled training samples. Often f is a threshold function, which maps all values of

\vec{w}\vec{x}

above a certain threshold to the first class and all other values to the second class; e.g.,

f(x)=\begin{cases}1&ifwTx>\theta,\\0&otherwise\end{cases}

The superscript T indicates the transpose and

\theta

is a scalar threshold. A more complex f might give the probability that an item belongs to a certain class.

For a two-class classification problem, one can visualize the operation of a linear classifier as splitting a high-dimensional input space with a hyperplane: all points on one side of the hyperplane are classified as "yes", while the others are classified as "no".

A linear classifier is often used in situations where the speed of classification is an issue, since it is often the fastest classifier, especially when

\vecx

is sparse. Also, linear classifiers often work very well when the number of dimensions in

\vecx

is large, as in document classification, where each element in

\vecx

is typically the number of occurrences of a word in a document (see document-term matrix). In such cases, the classifier should be well-regularized.

Generative models vs. discriminative models

There are two broad classes of methods for determining the parameters of a linear classifier

\vecw

. They can be generative and discriminative models.[1] [2] Methods of the former model joint probability distribution, whereas methods of the latter model conditional density functions

P({\rmclass}|\vecx)

. Examples of such algorithms include:

The second set of methods includes discriminative models, which attempt to maximize the quality of the output on a training set. Additional terms in the training cost function can easily perform regularization of the final model. Examples of discriminative training of linear classifiers include:

\vecw

assuming that the observed training set was generated by a binomial model that depends on the output of the classifier.

Note: Despite its name, LDA does not belong to the class of discriminative models in this taxonomy. However, its name makes sense when we compare LDA to the other main linear dimensionality reduction algorithm: principal components analysis (PCA). LDA is a supervised learning algorithm that utilizes the labels of the data, while PCA is an unsupervised learning algorithm that ignores the labels. To summarize, the name is a historical artifact.[4]

Discriminative training often yields higher accuracy than modeling the conditional density functions. However, handling missing data is often easier with conditional density models.

All of the linear classifier algorithms listed above can be converted into non-linear algorithms operating on a different input space

\varphi(\vecx)

, using the kernel trick.

Discriminative training

Discriminative training of linear classifiers usually proceeds in a supervised way, by means of an optimization algorithm that is given a training set with desired outputs and a loss function that measures the discrepancy between the classifier's outputs and the desired outputs. Thus, the learning algorithm solves an optimization problem of the form[5]

\underset{w

} \;R(\mathbf) + C \sum_^N L(y_i, \mathbf^\mathsf \mathbf_i)

where

Popular loss functions include the hinge loss (for linear SVMs) and the log loss (for linear logistic regression). If the regularization function is convex, then the above is a convex problem. Many algorithms exist for solving such problems; popular ones for linear classification include (stochastic) gradient descent, L-BFGS, coordinate descent and Newton methods.

See also

Notes

  1. T. Mitchell, Generative and Discriminative Classifiers: Naive Bayes and Logistic Regression. Draft Version, 2005
  2. A. Y. Ng and M. I. Jordan. On Discriminative vs. Generative Classifiers: A comparison of logistic regression and Naive Bayes. in NIPS 14, 2002.
  3. R.O. Duda, P.E. Hart, D.G. Stork, "Pattern Classification", Wiley, (2001).
  4. R.O. Duda, P.E. Hart, D.G. Stork, "Pattern Classification", Wiley, (2001).
  5. Guo-Xun Yuan . Chia-Hua Ho . Chih-Jen Lin . Recent Advances of Large-Scale Linear Classification . Proc. IEEE . 100 . 9 . 2012. https://web.archive.org/web/20170610105707/http://dmkd.cs.vt.edu/TUTORIAL/Bigdata/Papers/IEEE12.pdf . 2017-06-10 . live.

Further reading

  1. Y. Yang, X. Liu, "A re-examination of text categorization", Proc. ACM SIGIR Conference, pp. 42–49, (1999). paper @ citeseer
  2. R. Herbrich, "Learning Kernel Classifiers: Theory and Algorithms," MIT Press, (2001).