Эта статья посвящена машинам опорных векторов. Для тех, кто не знаком с машинами опорных векторов, я попытаюсь объяснить это ниже на примере, с которым я столкнулся.

Предположим, у вас есть связка красных и синих шаров на столе.
Вы хотите разделить их.
Что вы делаете, вы помещаете палку между ними так, чтобы они были разделены.
Теперь кто-то подходит к вашему столу и снова перемешивает их.
Но что, если шариков так много, что вы не можете найти место, чтобы разместить палку?
Вам придется переверните стол и, пока шары находятся в воздухе, вы берете лист бумаги и держите его между шарами, разделяя их таким образом.

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

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

С увеличением баз данных возникает постоянная необходимость обрабатывать увеличение обучающих данных. Одним из возможных решений этой проблемы является использование методов инкрементального обучения, при которых данные обрабатываются по частям (подмножества данных рассматриваются в любой заданный момент времени), а затем результат объединяется для экономии памяти. Вот где опорные векторы становятся полезными, поскольку они могут хорошо резюмировать данные.
В этой статье предлагается структура для инкрементального обучения с помощью SVM и оценивается ее эффективность с использованием набора предложенных критериев качества на некоторых стандартных наборах данных тестов машинного обучения. Целью данной статьи является:
1. Представить процедуру инкрементного обучения с использованием SVM.
2. Предложить критерии оценки качества процедуры инкрементального обучения.
3. Эмпирически продемонстрировать, что Предлагаемая инкрементная процедура SVM хорошо работает вместе с вышеуказанными критериями на некоторых стандартных наборах данных эталонного тестирования.
Учитывая l точек данных {(x1, y1), (x2, y2), …… .., (xl, yl) } решающая функция SVM выглядит следующим образом:

Часто только небольшая часть коэффициентов альфа (i) отлична от нуля. Благодаря этому соответствующие записи xi и метки вывода yi полностью определяют функцию принятия решения. Эти три затем сохраняются для использования в процессе классификации. Все остальное обучение никак не влияет и считается избыточным. Здесь xi являются опорными векторами.
Так как только небольшое количество точек данных оказывается опорными векторами, алгоритм опорных векторов может резюмировать пространство данных в очень сжатой форме. Так работает инкрементное обучение.
Загрузите подмножество данных в модель.
Сохраните только опорные векторы.
Добавьте их к следующему подмножеству.

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

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

Случай 2: Если все ранее просмотренные данные сохранены, насколько хорошо SVM работает с неизвестными данными? По сути, это пакетное обучение с использованием всех полученных на данный момент данных.

Чтобы оценить эти случаи, мы разделяем данные на обучающий набор TR и тестовый набор TE.
Каждый TR дополнительно делится на 10 разделов, каждая из которых состоит из 10% взаимоисключающих данных. Осуществляются два типа инкрементального обучения.

Тип 1:
1. Обучите SVM на TR1.
2. Возьмите опорные векторы SV1, выбранные из TR1, и добавьте их в TR2.
3. Запустите алгоритм на SV1 + TR2. < br /> 4. Теперь опорные векторы из SV1 + TR2 взяты и названы SV2.
5. Добавьте эти SV2 в TR3 и снова запустите алгоритм.
6. Это делается до тех пор, пока не будут использованы все TRi. т.е. последняя итерация будет выполняться на SV (i-1) + TRi.

Тип 2:
1. SVM была обучена с использованием TR1.
2. Эта обученная модель затем используется для классификации примеров в TE, и скорость классификации записывается.
3. Затем TR2 добавляется к TR1 и затем используется для обучения.
4. Эта модель затем используется для классификации TE, и результаты записываются.
5. Затем TR3 добавляется к TR1 + TR2 и так далее, пока все Для обучения использовалась оригинальная обучающая выборка.

Два вышеуказанных шага повторяются 10 раз. Каждый раз взаимоисключающие 10% примеров использовались в качестве тестового набора TE, а остальные использовались для обучающего набора TR (в строках 10-кратной
перекрестной проверки). Проблема решается во всех Эти эксперименты представляют собой задачу классификации двух классов.

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

Методы Type1 и Type2 реализованы в этих наборах данных, а затем нанесены на график. Ось X предназначена для шага приращения, а ось Y показывает точность прогноза модели, полученной в конце соответствующего шага приращения. Также упоминаются ядро ​​и используемые параметры.

Точность инкрементального метода закрытия соответствует точности однократной модели. Таблица 2 показывает, что после 10 итераций алгоритм SVM может запоминать соответствующие части данных, и точность этой модели незначительна или отсутствует вообще.
Новизна этого подхода заключается в том, что даже после последовательных шагов отбрасывая избыточные примеры, собранный набор опорных векторов все еще остается репрезентативным набором.

Основная цель этой статьи - уменьшить объем памяти, необходимый для обучения модели. Следующий шаг - проанализировать, действительно ли все опорные векторы в нашем наборе необходимы, и попытаться минимизировать набор насколько это возможно. Для этого был проведен следующий пример:
1. Алгоритм SVM был запущен для всего набора данных D, и был получен набор опорных векторов SV.
2. SVM была обучена на полученном наборе опорных векторов SV с использованием 10-кратной перекрестной проверки, т.е. для 10-кратной перекрестной проверки обучающий набор TR и тестовый набор
TE были получены из набора опорных векторов SV. Регистрировалась средняя точность прогнозов обученной машины на тестовой выборке.

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

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