resubEdge

Найдите ребро классификации для классификатора машины вектора поддержки (SVM) перезаменой

Синтаксис

e = resubEdge(SVMModel)

Описание

пример

e = resubEdge(SVMModel) возвращает Ребро Классификации перезамены (e) для классификатора машины вектора поддержки (SVM) SVMModel с помощью данных тренировки, хранимых в SVMModel.X и соответствующих метках класса, сохраненных в SVMModel.Y.

Ребро классификации является скалярным значением, которое представляет взвешенное среднее полей классификации.

Примеры

свернуть все

Загрузите набор данных ionosphere.

load ionosphere

Обучите классификатор SVM. Стандартизируйте данные и укажите, что 'g' является положительным классом.

SVMModel = fitcsvm(X,Y,'Standardize',true,'ClassNames',{'b','g'});

SVMModel является обученным классификатором ClassificationSVM.

Оцените ребро перезамены. Это - среднее значение учебных демонстрационных полей.

e = resubEdge(SVMModel)
e = 5.0998

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

Загрузите набор данных ionosphere. Задайте два набора данных:

  • fullX содержит все предикторы (кроме удаленного столбца 0s).

  • partX содержит последние 20 предикторов.

load ionosphere
fullX = X;
partX = X(:,end-20:end);

Обучите классификаторы SVM каждому набору предиктора.

FullSVMModel = fitcsvm(fullX,Y);
PartSVMModel = fitcsvm(partX,Y);

Оцените учебное демонстрационное ребро для каждого классификатора.

fullEdge = resubEdge(FullSVMModel)
fullEdge = 3.3653
partEdge = resubEdge(PartSVMModel)
partEdge = 2.0471

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

Входные параметры

свернуть все

Полный, обученный классификатор SVM, заданный как модель ClassificationSVM, обученная с fitcsvm.

Больше о

свернуть все

Ребро классификации

edge является взвешенным средним classification margins.

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

Один способ выбрать среди нескольких классификаторов, например, выполнить выбор функции, состоит в том, чтобы выбрать классификатор, который приводит к самому высокому ребру.

Поле классификации

classification margin для бинарной классификации, для каждого наблюдения, различия между счетом классификации к истинному классу и счетом классификации к ложному классу.

Программное обеспечение задает поле классификации для бинарной классификации как

m=2yf(x).

x является наблюдением. Если истинная метка x является положительным классом, то y равняется 1, и –1 в противном случае. f (x) является счетом классификации положительных классов к наблюдению x. Поле классификации обычно задается как m = y f (x).

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

Счет классификации

classification score SVM для классификации наблюдения x является расстоянием со знаком от x до контура решения в пределах от - ∞ к + ∞. Положительный счет к классу указывает, что x предсказан, чтобы быть в том классе. Отрицательный счет указывает в противном случае.

Положительный счет классификации классов f(x) обученная функция классификации SVM. f(x) также числовой, предсказанный ответ для x или счет к предсказанию x в положительный класс.

f(x)=j=1nαjyjG(xj,x)+b,

где (α1,...,αn,b) предполагаемые параметры SVM, G(xj,x) скалярное произведение на пробеле предиктора между x и векторами поддержки, и сумма включает наблюдения набора обучающих данных. Отрицательный счет классификации классов к x или счет к предсказанию x в отрицательный класс, является –f (x).

Если G (xj, x) = xjx (линейное ядро), то функция счета уменьшает до

f(x)=(x/s)β+b.

s является шкалой ядра, и β является вектором подходящих линейных коэффициентов.

Для получения дополнительной информации смотрите Машины Вектора Поддержки Понимания.

Алгоритмы

Для бинарной классификации программное обеспечение задает поле для наблюдения j, mj, как

mj=2yjf(xj),

где yj ∊ {-1,1}, и f (xj) является предсказанным счетом наблюдения j для положительного класса. Однако mj = yj f (xj) обычно используется, чтобы задать поле.

Ссылки

[1] Christianini, N. и Дж. К. Шейв-Тейлор. Введение, чтобы поддержать векторные машины и другое основанное на ядре изучение методов. Кембридж, Великобритания: Издательство Кембриджского университета, 2000.

Введенный в R2014a