Алгоритмы SVM используют набор математических функций, которые определены как ядро. Функция ядра состоит в том, чтобы принимать данные в качестве входных данных и преобразовывать их в требуемую форму. Различные алгоритмы SVM используют разные типы функций ядра. Эти функции могут быть разных типов. Например, линейная, нелинейная, полиномиальная, радиальная базисная функция (RBF) и сигмовидная.
Наиболее часто используемым типом функции ядра является RBF. Потому что она имеет локализованный и конечный отклик по всей оси X. Функции ядра возвращают внутренний продукт между двумя точками в подходящем пространстве признаков. Таким образом, определяя понятие сходства с небольшими вычислительными затратами даже в многомерных пространствах.
Методы ядра обязаны своим названием использованию функций ядра, которые позволяют им работать в многомерном пространстве неявных признаков, даже не вычисляя координаты данных в этом пространстве, а просто вычисляя внутренние произведения между изображениями объектов.Эта операция часто в вычислительном отношении дешевле, чем явное вычисление координат.
Этот подход называется «трюком с ядром». Функции ядра были введены для данных последовательности, графиков, текста, изображений, а также векторов. Алгоритмы, способные работать с ядрами, включают перцептрон ядра, машины опорных векторов (SVM), гауссовские процессы, анализ основных компонентов (PCA), канонический корреляционный анализ, гребневую регрессию, спектральную кластеризацию, линейные адаптивные фильтры и многие другие. Большинство алгоритмов ядра основаны на выпуклой оптимизации или собственных задачах и статистически хорошо обоснованы.
Ядро — это способ вычисления «обобщенного скалярного произведения» двух векторов x и y в некотором (возможно,многомерном) пространстве признаков. Предположим,у нас есть отображение φ:R^n→R^m, которое переводит наши векторы из R^n в некоторое пространство признаков R^m. Тогда «скалярное произведение x и y» в этом пространстве равно φ(x)Tφ(y).
Ядро — это функция k, соответствующая этому «скалярному произведению», т. е. k(x,y)=φ(x)Tφ(y). Ядра позволяют вычислять скалярные произведения в некотором пространстве признаков, даже не зная, что это за пространство и что такое φ.
Например, рассмотрим простое полиномиальное ядро
k(x,y)=(1+xTy)^2,где x,y∈R^2.
Похоже, это не соответствует какой-либо функции отображения φ, это просто функция, которая возвращает действительное число. Предполагая, что x=(x1,x2) и y=(y1,y2), расширим это выражение:
k(x,y)=(1+xTy)^2=(1+x1*y1+x2*y2)^2
Другой пример ядро
Гаусса k(x,y) = exp(−γ∥x−y∥^2).