(Вы можете сначала посмотреть на «таблицу» ниже)
Начнем с «классических» опорных векторных машин. Они учатся различать две категории. Вы собираете несколько примеров категории A, некоторые категории B, и передаете их оба в обучающий алгоритм SVM, который находит линию / плоскость / гиперплоскость, которая лучше всего отделяет A от B. Это работает - и часто работает довольно хорошо - когда Вы хотите различать четко определенные и взаимоисключающие классы: мужчины против женщин, буквы алфавита и так далее.
Однако, предположим, что вы хотите идентифицировать «А» вместо этого. Вы можете рассматривать это как проблему классификации: как отличить буквы "не" от "не". Довольно легко собрать тренировочный набор, состоящий из изображений собак, но что должно входить в ваш тренировочный набор не-собак? Поскольку существует огромное количество вещей, которые не являются собаками, вам может быть трудно создать всеобъемлющий и в то же время репрезентативный обучающий набор всех не собачьих вещей. Вместо этого вы можете рассмотреть возможность использования классификатора одного класса. Традиционный классификатор с двумя классами находит (гипер) плоскость, которая отделяет A от B. Вместо этого SVM с одним классом находит линию / плоскость / гиперплоскость, которая отделяет все точки в классе ("A") от начала координат. ;
«Система» ансамбля SVM на самом деле представляет собой совокупность множества двухсекционных «субъединиц» SVM. Каждое подразделение обучается с использованием одногоположительный пример для одного класса и огромный набор отрицательных примеров для другого. Таким образом, вместо того, чтобы отличать собак от примеров, отличных от собак (стандартный SVM с двумя классами), или собак от происхождения (SVM с одним классом), каждая субъединица различает конкретную собаку (например, «Rex») и множество собак, не являющихся собаками. Примеры. Отдельные подразделения SVM обучаются для каждого примера положительного класса, поэтому у вас будет один SVM для Рекса, другой для Фидо, еще один для собаки вашего соседа, которая лает в 6 утра и так далее. Выходы этих SVM субъединиц калибруются и объединяются, чтобы определить, появляется ли собака, а не только один из конкретных образцов, в данных испытаний. Я думаю, вы могли бы также думать об отдельных подразделениях как что-то вроде SVM одного класса, где пространство координат смещено так, что единственный положительный пример лежит в начале координат.
Таким образом, основные различия:
Учебные данные
- Два класса SVM: положительные и отрицательные примеры
- Один класс SVM: только положительные примеры
- Ансамбль СВМ "Система": положительные и отрицательные примеры. Каждое подразделение обучается на одном положительном примере и множестве отрицательных примеров.
Количество машин
- Два класса СВМ: один
- Один класс SVM: один
- Ансамбль SVM "система": много (один субъединичный станок на положительный пример)
Примеры на класс (на машину)
- Два класса SVM: много / много
- Один класс SVM: много / один (исправлено в начале координат)
- Ансамбль СВМ "Система": много / много
- Ансамбль СВМ "Подразделение": один / много
Постобработка
- Два класса SVM: не обязательно
- Один класс SVM: не обязательно
- Ансамбль SVM: необходим для объединения выходных данных каждого SVM в прогноз на уровне класса.
Постскриптум: Вы спросили, что они подразумевают под «[другие подходы] требуют отображения образцов в общее пространство признаков, по которому можно вычислить ядро подобия». Я думаю, они имеют в виду, что традиционный SVM с двумя классами работает при условии, что все члены класса как-то похожи, и поэтому вы хотите найти ядро, которое помещает отличных датчан и такс рядом друг с другом, но далеко от всего остального. В отличие от этого, система SVM ансамбля обходит это, называя что-то собакой, если она достаточно велика, похожа на датчанина, или похожа на таксу, или похожа на пуделя, не беспокоясь об отношениях между этими образцами.
Короче говоря, модель ESVM представляет собой ансамбль SVM, обученных различать каждый элемент обучающего набора от всех остальных, в то время как OSVM представляет собой ансамбль SVM, обученных различать каждое подмножество обучающих элементов, принадлежащих одному классу. Таким образом, если в тренировочном наборе 300 образцов кошек и 300 собак, ESVM сделает 600 SVM, каждый на одного питомца, а OSVM сделает два SVM (первый для всех кошек, второй для всех собак).
Таким образом, ESVM не нужно находить пространство, в котором кластеры всего класса, а скорее пространство, в котором этот единственный элемент является выбросом, что, вероятно, проще и приводит к высокой точности. Напомним, что ансамбль предоставил отзыв.
источник