A technique to reduce the complexity of machine learning algorithms, especially Support Vector Machines, that use basic functions (kernels) to map input data into a different dimensional space, thereby allowing simpler classification techniques such as linear classifiers to be applied to non-linear problems by mapping non-linear data into a higher-dimensional space.