resubLoss

Класс: ClassificationDiscriminant

Ошибка классификации перезаменой

Синтаксис

L = resubLoss(obj)
L = resubLoss(obj,Name,Value)

Описание

L = resubLoss(obj) возвращает потерю перезамены, означая потерю, вычисленную для данных, что fitcdiscr раньше создавал obj.

L = resubLoss(obj,Name,Value) возвращает статистику потерь с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

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

развернуть все

obj

Классификатор дискриминантного анализа, произведенное использование fitcdiscr.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Функция потерь, заданная как пара, разделенная запятой, состоящая из 'LossFun' и встроенного имени функции потерь или указателя на функцию.

  • В следующей таблице перечислены доступные функции потерь. Задайте тот с помощью соответствующего вектора символов или представьте скаляр в виде строки.

    ЗначениеОписание
    'binodeviance'Биномиальное отклонение
    'classiferror'Ошибка классификации
    'exponential'Экспоненциал
    'hinge'Стержень
    'logit'Логистический
    'mincost'Минимальный ожидал стоимость misclassification (для очков классификации, которые являются апостериорными вероятностями),
    'quadratic'Квадратичный

    'mincost' подходит для очков классификации, которые являются апостериорными вероятностями. Модели дискриминантного анализа возвращают апостериорные вероятности как очки классификации по умолчанию (см. predict).

  • Задайте свою собственную функцию с помощью обозначения указателя на функцию.

    Предположим, что n является количеством наблюдений в X и K быть количеством отличных классов (numel(obj.ClassNames)). Ваша функция должна иметь эту подпись

    lossvalue = lossfun(C,S,W,Cost)
    где:

    • Выходным аргументом lossvalue является скаляр.

    • Вы выбираете имя функции (lossfun).

    • C является n-by-K логическая матрица со строками, указывающими, которые классифицируют соответствующее наблюдение, принадлежит. Порядок следования столбцов соответствует порядку класса в obj.ClassNames.

      Создайте C установкой C(p,q) = 1, если наблюдение p находится в классе q для каждой строки. Установите все другие элементы строки p к 0.

    • S является n-by-K числовая матрица очков классификации. Порядок следования столбцов соответствует порядку класса в obj.ClassNames. S является матрицей очков классификации, подобных выводу predict.

    • W является n-by-1 числовой вектор весов наблюдения. Если вы передаете W, программное обеспечение нормирует их, чтобы суммировать к 1.

    • Cost является K-by-K числовая матрица затрат misclassification. Например, Cost = ones(K) - eye(K) задает стоимость 0 для правильной классификации и 1 для misclassification.

    Задайте свою функцию с помощью 'LossFun',@lossfun.

Для получения дополнительной информации на функциях потерь, смотрите Потерю Классификации.

Типы данных: char | string | function_handle

Выходные аргументы

L

Ошибка классификации, скаляр. Значение ошибки зависит от значений в weights и lossfun. Смотрите Потерю Классификации.

Примеры

Вычислите ошибку классификации, которой повторно заменяют, для ирисовых данных Фишера:

load fisheriris
obj = fitcdiscr(meas,species);
L = resubLoss(obj)

L =
    0.0200

Больше о

развернуть все