Ядра — это метод использования линейного классификатора для решения нелинейной задачи, это делается путем преобразования линейно неразделимых данных в линейно разделимые.

Возьмем пример: мы хотим классифицировать следующие классы, которые линейно неразделимы, поэтому, чтобы сделать оба класса линейно разделимыми, мы должны использовать трюк с ядром. Мы сопоставим двумерное нелинейное наблюдение с трехмерным, используя некоторые приемы ядра.

В машинном обучении существуют различные типы подходов на основе ядра, такие как регуляризованная радиальная базисная функция (Reg RBFNN), машина опорных векторов (SVM), дискриминантный анализ ядра-фишера (KFD), регуляризованный Adaboost (Reg AB) и т. д. от все эти алгоритмы, широко используемый подход — SVM.

Давайте подробно обсудим SVM и попробуем классифицировать логику XOR, которая не может быть линейно разделена с помощью метода персептрона.

По сути, машина опорных векторов предназначена для двоичной классификации с использованием двоичной обучающей машины с некоторыми элегантными свойствами.

Идея может быть обобщена как

Для обучающей выборки основная цель состоит в том, чтобы построить гиперплоскость в качестве границы решения таким образом, чтобы расстояние между границей решения и опорным вектором было максимальным, т. е. максимальная граница разделения между положительным и отрицательным примерами

Существует 2 типа SVM

1. Линейный SVM

2. Нелинейный SVM

Линейный SVM имеет дело с бинарной классификацией, учитывающей обучение с учителем, с обучающей выборкой (xi, yi), где xi – входной шаблон, а yi — целевой вывод. Предположим, что есть 2 класса; yi= +1 и yi= -1, которые линейно отделимы, тогда уравнение границы решения, которое разделяет 2 класса, становится

(Wx+) + b =1 — — — — — — для положительного класса

(Wx-) + b =-1 — — — — — — для отрицательного класса

W — вес, b — смещение.

Вычитая уравнение 2 из 1, мы получаем,

W(x+- x-)= 2= M — — — —› M = оптимальное значение границы разделения между двумя классами, поэтому уравнение принимает вид

В приведенном выше уравнении указано, что предел разделения между бинарными классами эквивалентен минимизации евклидовой нормы ||W|| весового вектора W

При работе с линейным SVM необходимо проверить два условия.

1. Wx + b = 1 для положительных классов и wWx + b = -1 для отрицательных классов

2. ||В|| (евклидова норма) должна быть минимальной

Существует метод, называемый метод Лагранжа (L), который можно заключить как

Для опорного вектора L необходимо максимизировать, изменив множитель Лагранжа (αi)

Узоры, находящиеся далеко от границы. Для них αi будет слишком мало

Паттерны, находящиеся вблизи границы решения, для них αi будут слишком большими

Этот метод также известен как разделитель с максимальным отступом или разделитель с жестким отступом

Когда есть условие переобучения, мы не можем использовать разделитель жестких полей. Для этого мы должны использовать разделитель мягких полей.

Мягкий разделитель полей используется, когда смешиваются данные с разными метками, затем, используя мягкий разделитель полей, мы должны нарисовать наилучшую линию-разделитель с учетом выборок внутри поля поля.

Граница разделения между классами называется мягкой, если точка данных (xi, yi) нарушает следующее условие:

di(Wx+ + b) >= +1

для неотделимых точек данных мы используем набор неотрицательных скалярных переменных, ξi в определении разделяющих гиперплоскостей (граница решения), как показано,

di(Wx+ + b) >= 1 — ξi

ξi называется слабыми переменными. Они измеряют отклонение точек данных от идеального состояния разделимости шаблонов.

В нелинейных SVM используется прием ядра, в котором происходит отображение шаблонов из более низких измерений в более высокие измерения, и для этого используется прием ядра.

Основная мораль ядерных методов заключается в том, чтобы иметь дело с линейно неразделимыми данными и создавать нелинейные комбинации исходных признаков для проецирования их на пространство более высокой размерности с помощью функции отображения ϕ(), где они становятся линейно разделимыми.

Наиболее часто используемым ядром для SVM является ядро ​​RBF или ядро ​​Гаусса.

В нелинейном SVM, C (заданные пользователем положительные параметры), ξi необходимо варьировать. Большее значение ξi соответствует большему шуму.

Давайте поработаем над линейной классификацией логики XOR, используя трюк ядра SVM, который нельзя линейно разделить с помощью метода персептрона.

Теперь возьмем 400 образцов, из которых 200 относятся к классу 1 и 200 относятся к классу -1, посмотрим код и вывод

Используя ядро ​​​​SVM RBF, мы получили следующий результат, где можно было провести нелинейную границу решения, которая разделяет данные:

Чтобы сравнить различные типы подходов на основе ядра, мы изучили одну исследовательскую работу под названием «Метод на основе ядра для классификации гиперспектральных изображений», и мы отметили следующие моменты.

SVM-Poly и SVM-RBF показали наилучшие общие характеристики.

Когда к тестовому набору добавляются дополнительные шумы (гауссовский, равномерный и импульсный), отношение сигнал/шум варьируется в пределах от 16 до 40 дБ, при введении умеренного шума (SNR >25 дБ) получаются следующие результаты: SVM-RBF показал более высокую общую точность, чем KFD, однако в сложной ситуации (SNR ‹ 25 дБ) моделируется KFD демонстрирует лучшую точность, чем SVM-RBF, но уступает SVM-Poly.

Сравнивая результаты различных наборов обучающих наборов данных, результаты записываются следующим образом:

Анализируются пять различных ситуаций: 0,25%, 5%, 10%, 25% и 100% исходных обучающих выборок, которые случайным образом выбираются из обучающей выборки для обучения модели и оценки их точности на общей тестовой выборке. Эта ситуация соответствует обучающей выборке, состоящей из 12, 229, 459, 1147, 4588 выборок соответственно. При рассмотрении 12 образцов в качестве обучающего набора SVM (оба ядра) показали лучшую производительность, чем другие модели, хотя общая точность очень низкая (50%), поскольку скорость обучающей выборки увеличивается, SVM и Reg-AB всегда имел более высокую точность от 3% до 8% по сравнению с KFD и Reg-RBFNN, однако KFD показывает плохую производительность в большей части ситуации и требует больших вычислительных затрат по мере увеличения выборки.

Когда рассматривается конкретная характеристика гиперспектральных данных, в основном предпочтение отдается разреженному решению, поскольку в процессе обучения алгоритм выбирает наиболее релевантные выборки для классификации и присваивает им вес в решении. Решение, даваемое SVM, по своей сути является разреженным, но для получения лучших результатов от SVM требуется не менее 40% обучающих выборок (вспомогательных векторов). В случае Reg-RBFNN и Reg-AB разреженность обеспечивается путем выбора наиболее подходящего количества весов, заданного количеством скрытых нейронов и гипотез соответственно. SVM и Reg-AB работают в многомерных пространствах признаков, и оба приводят к разреженным решениям в разных пространствах. КФД учитывает все обучающие выборки.

Из этой статьи можно сделать следующие выводы:

SVM (оба ядра) дали отличные результаты с точки зрения вычислительной стоимости. Точность, устойчивость к общему уровню шума и гарантирует разреженность. Недостатком SVM является то, что вероятностный вывод не может быть легко сгенерирован.

Reg-AB дал вполне сопоставимые результаты с SVM, повысив надежность Reg-RBFNN и эффективно работая с небольшим количеством помеченных образцов.

KFD дал хорошую точность только при нормальных условиях, также следует отметить, что этот метод неэффективен в вычислительном отношении.

Reg-RBFNN предлагал исключительный компромисс между точностью и вычислительными затратами, но точность во всех тестах была ниже, чем у других нелинейных моделей.

Из результатов мы можем сделать вывод, что SVM лучше по сравнению со всеми другими методами ядра из-за высокой общей точности, обеспечивающей разреженность при гораздо меньших вычислительных затратах.

Использованная литература:

[1] машинное обучение scikit. Машины опорных векторов (SVM) https://www.bogotobogo.com/python/scikit-learn/scikit_machine_learning_Support_Vector_Machines_SVM_2.php

[2] Ядерные методы классификации гиперспектральных изображений https://ieeexplore.ieee.org/document/1433032

чтобы узнать больше об алгоритмах машинного обучения, прочитайте мою предыдущую статью