resubMargin

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

Синтаксис

Описание

пример

m = resubMargin(SVMModel) возвращает поля классификации перезамены (m) для классификатора машины опорных векторов (SVM) SVMModel использование обучающих данных сохранено в SVMModel.X и соответствующие метки класса сохранены в SVMModel.Y.

m возвращен как числовой вектор с той же длиной как Y. Программное обеспечение оценивает каждую запись m использование обученного классификатора SVM SVMModel, соответствующая строка X, и истинная метка Y класса.

Примеры

свернуть все

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

load ionosphere

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

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

SVMModel ClassificationSVM классификатор.

Оцените поля классификации в выборке.

m = resubMargin(SVMModel);
m(10:20)
ans = 11×1

    5.5622
    4.2918
    1.9993
    4.5520
   -1.4897
    3.2816
    4.0260
    4.5419
   16.4449
    2.0006
      ⋮

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

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

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

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

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

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

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

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

Оцените поля в выборке для каждого классификатора.

fullMargins = resubMargin(FullSVMModel);
partMargins = resubMargin(PartSVMModel);
n = size(X,1);
p = sum(fullMargins < partMargins)/n
p = 0.2222

Приблизительно 22% полей из полной модели меньше тех из модели с меньшим количеством предикторов. Это предполагает, что модель, обученная со всеми предикторами, лучше.

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

свернуть все

Полный, обученный классификатор 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