Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Kernel method

From Wikipedia, the free encyclopedia
(Redirected fromKernel machines)
Class of algorithms for pattern analysis
Part of a series on
Machine learning
anddata mining

Inmachine learning,kernel machines are a class of algorithms forpattern analysis, whose best known member is thesupport-vector machine (SVM). These methods involve using linear classifiers to solve nonlinear problems.[1] The general task ofpattern analysis is to find and study general types of relations (for exampleclusters,rankings,principal components,correlations,classifications) in datasets. For many algorithms that solve these tasks, the data in raw representation have to be explicitly transformed intofeature vector representations via a user-specifiedfeature map: in contrast, kernel methods require only a user-specifiedkernel, i.e., asimilarity function over all pairs of data points computed usinginner products. The feature map in kernel machines is infinite dimensional but only requires a finite dimensional matrix from user-input according to therepresenter theorem. Kernel machines are slow to compute for datasets larger than a couple of thousand examples without parallel processing.

Kernel methods owe their name to the use ofkernel functions, which enable them to operate in a high-dimensional,implicitfeature space without ever computing the coordinates of the data in that space, but rather by simply computing theinner products between theimages of all pairs of data in the feature space. This operation is often computationally cheaper than the explicit computation of the coordinates. This approach is called the "kernel trick".[2] Kernel functions have been introduced for sequence data,graphs, text, images, as well as vectors.

Algorithms capable of operating with kernels include thekernel perceptron, support-vector machines (SVM),Gaussian processes,principal components analysis (PCA),canonical correlation analysis,ridge regression,spectral clustering,linear adaptive filters and many others.

Most kernel algorithms are based onconvex optimization oreigenproblems and are statistically well-founded. Typically, their statistical properties are analyzed usingstatistical learning theory (for example, usingRademacher complexity).

Motivation and informal explanation

[edit]

Kernel methods can be thought of asinstance-based learners: rather than learning some fixed set of parameters corresponding to the features of their inputs, they instead "remember" thei{\displaystyle i}-th training example(xi,yi){\displaystyle (\mathbf {x} _{i},y_{i})} and learn for it a corresponding weightwi{\displaystyle w_{i}}. Prediction for unlabeled inputs, i.e., those not in the training set, are treated by the application of asimilarity functionk{\displaystyle k}, called akernel, between the unlabeled inputx{\displaystyle \mathbf {x'} } and each of the training inputsxi{\displaystyle \mathbf {x} _{i}}. For instance, a kernelizedbinary classifier typically computes a weighted sum of similaritiesy^=sgni=1nwiyik(xi,x),{\displaystyle {\hat {y}}=\operatorname {sgn} \sum _{i=1}^{n}w_{i}y_{i}k(\mathbf {x} _{i},\mathbf {x'} ),}where

Kernel classifiers were described as early as the 1960s, with the invention of thekernel perceptron.[3] They rose to great prominence with the popularity of thesupport-vector machine (SVM) in the 1990s, when the SVM was found to be competitive withneural networks on tasks such ashandwriting recognition.

Mathematics: the kernel trick

[edit]
SVM with feature map given byφ((a,b))=(a,b,a2+b2){\displaystyle \varphi ((a,b))=(a,b,a^{2}+b^{2})} and thus with the kernel functionk(x,y)=xy+x2y2{\displaystyle k(\mathbf {x} ,\mathbf {y} )=\mathbf {x} \cdot \mathbf {y} +\left\|\mathbf {x} \right\|^{2}\left\|\mathbf {y} \right\|^{2}}. The training points are mapped to a 3-dimensional space where a separating hyperplane can be easily found.

The kernel trick avoids the explicit mapping that is needed to get linearlearning algorithms to learn a nonlinear function ordecision boundary. For allx{\displaystyle \mathbf {x} } andx{\displaystyle \mathbf {x'} } in the input spaceX{\displaystyle {\mathcal {X}}}, certain functionsk(x,x){\displaystyle k(\mathbf {x} ,\mathbf {x'} )} can be expressed as aninner product in another spaceV{\displaystyle {\mathcal {V}}}. The functionk:X×XR{\displaystyle k\colon {\mathcal {X}}\times {\mathcal {X}}\to \mathbb {R} } is often referred to as akernel or akernel function. The word "kernel" is used in mathematics to denote a weighting function for a weighted sum orintegral.

Certain problems in machine learning have more structure than an arbitrary weighting functionk{\displaystyle k}. The computation is made much simpler if the kernel can be written in the form of a "feature map"φ:XV{\displaystyle \varphi \colon {\mathcal {X}}\to {\mathcal {V}}} which satisfiesk(x,x)=φ(x),φ(x)V.{\displaystyle k(\mathbf {x} ,\mathbf {x'} )=\langle \varphi (\mathbf {x} ),\varphi (\mathbf {x'} )\rangle _{\mathcal {V}}.}The key restriction is that,V{\displaystyle \langle \cdot ,\cdot \rangle _{\mathcal {V}}} must be a proper inner product. On the other hand, an explicit representation forφ{\displaystyle \varphi } is not necessary, as long asV{\displaystyle {\mathcal {V}}} is aninner product space. The alternative follows fromMercer's theorem: an implicitly defined functionφ{\displaystyle \varphi } exists whenever the spaceX{\displaystyle {\mathcal {X}}} can be equipped with a suitablemeasure ensuring the functionk{\displaystyle k} satisfiesMercer's condition.

Mercer's theorem is similar to a generalization of the result from linear algebra thatassociates an inner product to any positive-definite matrix. In fact, Mercer's condition can be reduced to this simpler case. If we choose as our measure thecounting measureμ(T)=|T|{\displaystyle \mu (T)=|T|} for allTX{\displaystyle T\subset X}, which counts the number of points inside the setT{\displaystyle T}, then the integral in Mercer's theorem reduces to a summationi=1nj=1nk(xi,xj)cicj0.{\displaystyle \sum _{i=1}^{n}\sum _{j=1}^{n}k(\mathbf {x} _{i},\mathbf {x} _{j})c_{i}c_{j}\geq 0.}If this summation holds for all finite sequences of points(x1,,xn){\displaystyle (\mathbf {x} _{1},\dotsc ,\mathbf {x} _{n})} inX{\displaystyle {\mathcal {X}}} and all choices ofn{\displaystyle n} real-valued coefficients(c1,,cn){\displaystyle (c_{1},\dots ,c_{n})} (cf.positive definite kernel), then the functionk{\displaystyle k} satisfies Mercer's condition.

Some algorithms that depend on arbitrary relationships in the native spaceX{\displaystyle {\mathcal {X}}} would, in fact, have a linear interpretation in a different setting: the range space ofφ{\displaystyle \varphi }. The linear interpretation gives us insight about the algorithm. Furthermore, there is often no need to computeφ{\displaystyle \varphi } directly during computation, as is the case withsupport-vector machines. Some cite this running time shortcut as the primary benefit. Researchers also use it to justify the meanings and properties of existing algorithms.

Theoretically, aGram matrixKRn×n{\displaystyle \mathbf {K} \in \mathbb {R} ^{n\times n}} with respect to{x1,,xn}{\displaystyle \{\mathbf {x} _{1},\dotsc ,\mathbf {x} _{n}\}} (sometimes also called a "kernel matrix"[4]), whereKij=k(xi,xj){\displaystyle K_{ij}=k(\mathbf {x} _{i},\mathbf {x} _{j})}, must bepositive semi-definite (PSD).[5] Empirically, for machine learning heuristics, choices of a functionk{\displaystyle k} that do not satisfy Mercer's condition may still perform reasonably ifk{\displaystyle k} at least approximates the intuitive idea of similarity.[6] Regardless of whetherk{\displaystyle k} is a Mercer kernel,k{\displaystyle k} may still be referred to as a "kernel".

If the kernel functionk{\displaystyle k} is also acovariance function as used inGaussian processes, then the Gram matrixK{\displaystyle \mathbf {K} } can also be called acovariance matrix.[7]

Applications

[edit]

Application areas of kernel methods are diverse and includegeostatistics,[8]kriging,inverse distance weighting,3D reconstruction,bioinformatics,cheminformatics,information extraction andhandwriting recognition.

Popular kernels

[edit]

See also

[edit]

References

[edit]
  1. ^"Kernel method".Engati. Retrieved2023-04-04.
  2. ^Theodoridis, Sergios (2008).Pattern Recognition. Elsevier B.V. p. 203.ISBN 9780080949123.
  3. ^Aizerman, M. A.; Braverman, Emmanuel M.; Rozonoer, L. I. (1964). "Theoretical foundations of the potential function method in pattern recognition learning".Automation and Remote Control.25:821–837. Cited inGuyon, Isabelle; Boser, B.; Vapnik, Vladimir (1993).Automatic capacity tuning of very large VC-dimension classifiers. Advances in neural information processing systems.CiteSeerX 10.1.1.17.7215.
  4. ^Hofmann, Thomas; Schölkopf, Bernhard; Smola, Alexander J. (2008)."Kernel Methods in Machine Learning".The Annals of Statistics.36 (3).arXiv:math/0701907.doi:10.1214/009053607000000677.S2CID 88516979.
  5. ^Mohri, Mehryar; Rostamizadeh, Afshin; Talwalkar, Ameet (2012).Foundations of Machine Learning. US, Massachusetts: MIT Press.ISBN 9780262018258.
  6. ^Sewell, Martin."Support Vector Machines: Mercer's Condition". Support Vector Machines. Archived fromthe original on 2018-10-15. Retrieved2014-05-30.
  7. ^Rasmussen, Carl Edward; Williams, Christopher K. I. (2006).Gaussian Processes for Machine Learning. MIT Press.ISBN 0-262-18253-X.[page needed]
  8. ^Honarkhah, M.; Caers, J. (2010). "Stochastic Simulation of Patterns Using Distance-Based Pattern Modeling".Mathematical Geosciences.42 (5):487–517.Bibcode:2010MaGeo..42..487H.doi:10.1007/s11004-010-9276-7.S2CID 73657847.

Further reading

[edit]

External links

[edit]
Retrieved from "https://en.wikipedia.org/w/index.php?title=Kernel_method&oldid=1323912764"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp