margin

Запас k-ближайшего соседа классификатора

Описание

m = margin(mdl,tbl,ResponseVarName) возвращает классификационные поля для mdl с данными tbl и классификационные tbl.ResponseVarName. Если tbl содержит переменную отклика, используемую для обучения mdl, тогда вам не нужно указывать ResponseVarName.

m возвращается как числовой вектор длины size(tbl,1). Каждая запись в m представляет поле для соответствующей строки tbl и соответствующей метки истинного класса в tbl.ResponseVarName, вычисляется с помощью mdl.

m = margin(mdl,tbl,Y) возвращает классификационные поля для mdl с данными tbl и классификационные Y.

пример

m = margin(mdl,X,Y) возвращает классификационные поля для mdl с данными X и классификационные Y. m возвращается как числовой вектор длины size(X,1).

Примеры

свернуть все

Создайте k-ближайших соседей классификатор для данных радужной оболочки глаза Фишера, где k = 5.

Загрузите набор данных радужной оболочки глаза Фишера.

load fisheriris

Создайте классификатор для пяти ближайших соседей.

mdl = fitcknn(meas,species,'NumNeighbors',5);

Исследуйте поле классификатора для среднего наблюдения, классифицированного как 'versicolor'.

X = mean(meas);
Y = {'versicolor'};
m = margin(mdl,X,Y)
m = 1

Все пять ближайших соседей классифицируются как 'versicolor'.

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

свернуть все

k-ближайших соседей классификатор модели, заданный как ClassificationKNN объект.

Выборочные данные, используемых для обучения модели, заданная как таблица. Каждая строка tbl соответствует одному наблюдению, и каждый столбец соответствует одной переменной предиктора. Опционально tbl может содержать один дополнительный столбец для переменной отклика. Многополюсные переменные и массивы ячеек, отличные от массивов ячеек векторов символов, не разрешены.

Если tbl содержит переменную отклика, используемую для обучения mdl, тогда вам не нужно указывать ResponseVarName или Y.

Если вы обучаете mdl использование выборочных данных, содержащихся в table, затем входные данные для margin также должно быть в таблице.

Типы данных: table

Имя переменной отклика, заданное как имя переменной в tbl. Если tbl содержит переменную отклика, используемую для обучения mdl, тогда вам не нужно указывать ResponseVarName.

Вы должны задать ResponseVarName как вектор символов или строковый скаляр. Для примера, если переменная отклика сохранена как tbl.response, затем укажите его следующим 'response'. В противном случае программное обеспечение обрабатывает все столбцы tbl, включая tbl.response, как предикторы.

Переменная отклика должна быть категориальными символьными или строковыми массивами, логическим или числовым вектором или массивом ячеек из векторов символов. Если переменная отклика является символьным массивом, то каждый элемент должен соответствовать одной строке массива.

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

Данные предиктора, заданные как числовая матрица. Каждая строка X представляет одно наблюдение, и каждый столбец представляет одну переменную.

Типы данных: single | double

Метки класса, заданные как категориальные символьные или строковые массивы, логический или числовой вектор или массив ячеек из векторов символов. Каждая строка Y представляет классификацию соответствующей строки X.

Типы данных: categorical | char | string | logical | single | double | cell

Подробнее о

свернуть все

Край

Классификационная margin для каждого наблюдения является различием между классификационной score для истинного класса и максимальной классификационной оценкой для ложных классов.

Счет

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

Расширенные возможности

Введенный в R2012a