В машинном обучении машины ядра представляют собой класс алгоритмов для анализа шаблонов , наиболее известным членом которого является машина опорных векторов (SVM). Эти методы включают использование линейных классификаторов для решения нелинейных задач. [1] Общая задача анализа шаблонов заключается в поиске и изучении общих типов отношений (например, кластеров , ранжирований , главных компонент , корреляций , классификаций ) в наборах данных. Для многих алгоритмов, решающих эти задачи, данные в необработанном представлении должны быть явно преобразованы в представления векторов признаков с помощью указанной пользователем карты признаков : напротив, методы ядра требуют только указанного пользователем ядра , т. е. функции подобия по всем парам точек данных, вычисленной с использованием внутренних произведений . Карта признаков в машинах ядра является бесконечномерной, но требует только конечномерной матрицы из пользовательского ввода в соответствии с теоремой о представителе . Машины ядра медленно вычисляют для наборов данных, превышающих пару тысяч примеров, без параллельной обработки.
Методы ядра обязаны своим названием использованию функций ядра , которые позволяют им работать в многомерном неявном пространстве признаков без вычисления координат данных в этом пространстве, а просто вычисляя внутренние произведения между изображениями всех пар данных в пространстве признаков. Эта операция часто вычислительно дешевле, чем явное вычисление координат. Этот подход называется « трюк ядра ». [2] Функции ядра были введены для данных последовательностей, графиков , текста, изображений, а также векторов.
Алгоритмы, способные работать с ядрами, включают ядерный персептрон , машины опорных векторов (SVM), гауссовские процессы , анализ главных компонент (PCA), канонический корреляционный анализ , гребневую регрессию , спектральную кластеризацию , линейные адаптивные фильтры и многие другие.
Большинство алгоритмов ядра основаны на выпуклой оптимизации или собственных задачах и статистически обоснованы. Обычно их статистические свойства анализируются с использованием статистической теории обучения (например, с использованием сложности Радемахера ).
Методы ядра можно рассматривать как обучающиеся на основе экземпляров : вместо того, чтобы изучать некоторый фиксированный набор параметров, соответствующих особенностям их входов, они вместо этого «запоминают» -й обучающий пример и изучают для него соответствующий вес . Прогнозирование для непомеченных входов, т. е. тех, которые не входят в обучающий набор, обрабатывается путем применения функции подобия , называемой ядром , между непомеченным входом и каждым из обучающих входов . Например, бинарный классификатор с ядром обычно вычисляет взвешенную сумму сходств, где
Ядерные классификаторы были описаны еще в 1960-х годах с изобретением ядерного персептрона . [3] Они приобрели большую известность с ростом популярности машины опорных векторов (SVM) в 1990-х годах, когда было обнаружено, что SVM может конкурировать с нейронными сетями в таких задачах, как распознавание рукописного ввода .
Трюк с ядром позволяет избежать явного отображения, необходимого для того, чтобы линейные алгоритмы обучения научились нелинейной функции или границе решения . Для всех и во входном пространстве определенные функции могут быть выражены как внутренний продукт в другом пространстве . Функцию часто называют ядром или функцией ядра . Слово «ядро» используется в математике для обозначения весовой функции для взвешенной суммы или интеграла .
Некоторые проблемы машинного обучения имеют больше структуры, чем произвольная весовая функция . Вычисление становится намного проще, если ядро можно записать в виде «карты признаков» , которая удовлетворяет Ключевое ограничение заключается в том, что должно быть правильным внутренним произведением. С другой стороны, явное представление для не является необходимым, пока является внутренним произведением пространства . Альтернатива следует из теоремы Мерсера : неявно определенная функция существует всякий раз, когда пространство может быть снабжено подходящей мерой , гарантирующей, что функция удовлетворяет условию Мерсера .
Теорема Мерсера похожа на обобщение результата линейной алгебры, которая связывает скалярное произведение с любой положительно определенной матрицей . Фактически, условие Мерсера можно свести к этому более простому случаю. Если мы выберем в качестве меры меру подсчета для всех , которая подсчитывает количество точек внутри множества , то интеграл в теореме Мерсера сводится к суммированию Если это суммирование выполняется для всех конечных последовательностей точек в и всех выборов действительных коэффициентов (ср. положительно определенное ядро ), то функция удовлетворяет условию Мерсера.
Некоторые алгоритмы, зависящие от произвольных отношений в собственном пространстве , на самом деле имели бы линейную интерпретацию в другой обстановке: пространстве диапазонов . Линейная интерпретация дает нам представление об алгоритме. Более того, часто нет необходимости выполнять вычисления непосредственно во время вычисления, как в случае с машинами опорных векторов . Некоторые называют это сокращение времени выполнения основным преимуществом. Исследователи также используют его для обоснования значений и свойств существующих алгоритмов.
Теоретически, матрица Грама относительно (иногда также называемая «матрицей ядра» [4] ), где , должна быть положительно полуопределенной (PSD) . [5] Эмпирически, для эвристики машинного обучения, выбор функции , которая не удовлетворяет условию Мерсера, все еще может работать разумно, если по крайней мере приближается к интуитивной идее подобия. [6] Независимо от того, является ли ядром Мерсера, все еще может называться «ядром».
Если функция ядра также является функцией ковариации , используемой в гауссовых процессах , то матрицу Грама также можно назвать матрицей ковариации . [7]
Области применения ядерных методов разнообразны и включают геостатистику , [8] кригинг , обратные взвешивающие расстояния , 3D-реконструкцию , биоинформатику , хемоинформатику , извлечение информации и распознавание рукописного текста .