ребро

Ребро k - самый близкий соседний классификатор

Синтаксис

E = edge(mdl,tbl,ResponseVarName)
E = edge(mdl,tbl,Y)
E = edge(mdl,X,Y)
E = edge(___,'Weights',weights)

Описание

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

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

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

пример

E = edge(mdl,X,Y) возвращает ребро классификации для mdl с данными X и классификация Y.

E = edge(___,'Weights',weights) вычисляет ребро с дополнительными весами наблюдения weights, с помощью любого из входных параметров в предыдущих синтаксисах.

Примеры

свернуть все

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

Загрузите ирисовый набор данных Фишера.

load fisheriris
X = meas;
Y = species;

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

mdl = fitcknn(X,Y,'NumNeighbors',5);

Исследуйте ребро классификатора для минимума, среднего значения и максимальных наблюдений, классифицированных как 'setosa', 'versicolor' и 'virginica', соответственно.

NewX = [min(X);mean(X);max(X)];
Y = {'setosa';'versicolor';'virginica'};
E = edge(mdl,NewX,Y)
E = 1

Все пять самых близких соседей каждой точки NewX классифицируют как соответствующую запись Y.

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

свернуть все

k-nearest граничат с моделью классификатора, заданной как объект ClassificationKNN.

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

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

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

Типы данных: 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

Веса наблюдения, заданные как числовой вектор или имя переменной в tbl.

Если вы задаете weights как числовой вектор, то размер weights должен быть равен количеству строк в X или tbl.

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

Если вы задаете weights, то функция edge взвешивает наблюдение в каждой строке X или tbl с соответствующим весом в weights.

Пример: 'Weights','w'

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

Больше о

свернуть все

Поле

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

Поля классификации формируют вектор-столбец с одинаковым числом строк как X или tbl.

Счет

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

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

Представленный в R2012a