Продвинутая часть машины опорных векторов. Я сделал самый простой вывод раньше. Друзья, кто хочет увидеть, нажмите здесьВ «Машины линейных разделимых опорных векторов».
В прошлой статье я вывел основное содержание машин опорных векторов. В том числе, почему предложена машина опорных векторов, как ее предложить, почему она называется этим именем и т. д., а также включает в себя полный математический вывод машины опорных векторов. Но мы столкнемся с проблемой, что все наши выводы основаны на линейно отделимых условиях, поэтому реальность часто не так оптимистична. Поэтому нам необходимо расширить теорию машины опорных векторов, чтобы ее можно было использовать в практических приложениях.
Существующие SVM предлагают два метода решения линейно неразделимой задачи. Во-первых, это введение мягкого интервала, а во-вторых, увеличение размера, чтобы сделать его разделяемым. Может быть, название не простое для понимания, это не имеет значения, давайте обсудим это медленно.
мягкий интервал
Два типа интервалов в предыдущей статье, геометрические интервалы и функциональные интервалы, являются жесткими интервалами. Смысл в том, чтобы убедиться, что все точки выборки разделены правильно. Потом иногда бывает так:
При выводе машины опорных векторов мы обнаружили, что основной рабочий механизм машины опорных векторов заключается в том, чтобы найти точку в категории, ближайшую к линии разделения, и настроить линию разделения, чтобы максимизировать этот интервал. В примере, показанном на рисунке, невозможно найти разделительную линию так, чтобы все точки выборки были разделены правильно. И есть только несколько моментов, которые вызывают это исключение. Затем вводим мягкий интервал. Основное значение мягкого интервала отличается от значения жесткого интервала.Разрешить некоторым точкам выборки не удовлетворять исходному ограничению, интуитивно, т. е. "терпеть” для тех точек, которые не удовлетворяют исходному ограничению.
Конечно, при максимизации интервала должно быть как можно меньше выборок, не удовлетворяющих ограничениям. Мы по-прежнему надеемся получить разделительную линию с хорошей устойчивостью к разбиению за счет небольшого числа точек, не удовлетворяющих ограничениям. Надежность отражается в количестве правильно классифицированных выборок, а эффективность обобщения достаточно высока.
Затем мы проектируем эту линейную машину опорных векторов, используя мягкий запас с математической точки зрения.
На первом этапе мы вводим резервную переменную. То есть "важный показатель" для смягчения жесткого интервала. Линейная неразделимость означает, что некоторые точки не удовлетворяют ограничениям, тогда ограничения с добавленными резервными переменными становятся:
Это условие требует выполнения всех точек.
и для каждой резервной переменной, мы должны заплатить определенную цену. Целевая функция принимает вид:
вявляется штрафным параметром.Чем больше, тем больше штрафуется переменная резерва. Мы включаем два значения в минимизацию целевой функции, одно состоит в том, чтобы сделатьКак можно меньше, а интервал как можно больше, другой должен иметь как можно меньше ошибочно классифицированных точек.заключается в том, чтобы отрегулировать отношения между ними.
Тогда наша задача с линейным SVM с мягкими отступами выглядит так:
Это задача выпуклого квадратичного программирования. понятныйсуществует, доказуемотолько, иЕсть интервал решения. Это также поясняется на рисунке. Наклон постоянный, разделительная линия переводится вверх и вниз с 2-кратным интервалом, и естьинтервал.
Основная проблема выводится из двойственной задачи
Согласно исходной задаче, мы можем записать ее функцию Лагранжа следующим образом:
Сначала найдите пару функцийочень мало, дифференцируем его следующим образом:
придется:
Подставьте эти выражения в исходную функцию Лагранжа, чтобы найти пару функций Лагранжачрезвычайно мал. придется:
спроси об этомМаксимум , мы получаем нашу двойственную задачу:
использоватьУстранить, оставив только переменную. потому что мы, наконец, хотим решитьтолько сСвязанный. и запишите ограничения как. Затем преобразуйте целевую функцию от максимума к минимуму, этот процесс предназначен только для решения привычки. Тогда в итоге мы получим двойственную задачу исходной задачи в виде:
Решив эту двойственную задачу, получим, то имеем следующую теорему:является решением двойственной задачи, есликомпоненти имеют, то решение исходной задачиЕго можно получить следующим образом:
доказывать:
Исходная задача представляет собой выпуклое квадратичное программирование, и решение удовлетворяет условию ККТ, то есть:
Из этих трех уравнений легко решить начальное.
Алгоритм машины линейных опорных векторов
Вход: обучающий набор данных,в,
Выход: Гиперплоскость разделения и функция решения классификации.
- Выберите параметры штрафа, построить и решить задачу выпуклого квадратичного программирования.
найти оптимальное решение
2. Расчет
выберитекомпонентподходящие условия, рассчитать:
- Найдите разделяющую гиперплоскость:
Отдельная функция принятия решений:
Следует отметить, что для любогоУдовлетворяя условиям, можно найти,Не уникален в теории, но на практике вам нужно выбрать только одинЭто можно решить по алгоритму.