Классифицируйте наблюдения в перекрестно проверенной модели классификации ядра
возвращает метки классов, предсказанные перекрестно-проверенной, двоичной моделью ядра (label = kfoldPredict(CVMdl)ClassificationPartitionedKernel) CVMdl. Для каждой складки, kfoldPredict предсказывает метки классов для наблюдений сворачивания с валидацией, используя модель, обученную наблюдениям сворачивания.
[ также возвращает классификационные оценки для обоих классов.label,score] = kfoldPredict(CVMdl)
Классифицируйте наблюдения с помощью перекрестно проверенного двоичного классификатора ядра и отображайте матрицу неточностей для полученной классификации.
Загрузите ionosphere набор данных. Этот набор данных имеет 34 предиктора и 351 двоичный ответ для радиолокационных возвратов, которые помечены как плохие ('b') или хорошо ('g').
load ionosphereПерекрестная валидация модели классификации двоичных ядер с помощью данных.
rng(1); % For reproducibility CVMdl = fitckernel(X,Y,'Crossval','on')
CVMdl =
ClassificationPartitionedKernel
CrossValidatedModel: 'Kernel'
ResponseName: 'Y'
NumObservations: 351
KFold: 10
Partition: [1x1 cvpartition]
ClassNames: {'b' 'g'}
ScoreTransform: 'none'
Properties, Methods
CVMdl является ClassificationPartitionedKernel модель. По умолчанию программное обеспечение реализует 10-кратную перекрестную валидацию. Чтобы задать другое количество складок, используйте 'KFold' аргумент пары "имя-значение" вместо 'Crossval'.
Классифицируйте наблюдения, которые fitckernel не использует при обучении складок.
label = kfoldPredict(CVMdl);
Создайте матрицу неточностей, чтобы сравнить истинные классы наблюдений с их предсказанными метками.
C = confusionchart(Y,label);

The CVMdl неправильные классификации моделей 32 хорошо ('g') радар возвращается как плохой ('b') и ошибочно классифицирует 7 плохих возвраты радара как хорошие.
Оцените вероятности апостериорного класса с помощью перекрестно проверенного двоичного классификатора ядра и определите качество модели путем построения графика приемника кривой рабочей характеристики (ROC). Перекрестно проверенные модели классификации ядра возвращают апостериорные вероятности только для учащихся с логистической регрессией.
Загрузите ionosphere набор данных. Этот набор данных имеет 34 предиктора и 351 двоичный ответ для радиолокационных возвратов, которые помечены как плохие ('b') или хорошо ('g').
load ionosphereПерекрестная валидация модели классификации двоичных ядер с помощью данных. Задайте порядок классов и подбирайте учащихся логистической регрессии.
rng(1); % For reproducibility CVMdl = fitckernel(X,Y,'Crossval','on', ... 'ClassNames',{'b','g'},'Learner','logistic')
CVMdl =
ClassificationPartitionedKernel
CrossValidatedModel: 'Kernel'
ResponseName: 'Y'
NumObservations: 351
KFold: 10
Partition: [1x1 cvpartition]
ClassNames: {'b' 'g'}
ScoreTransform: 'none'
Properties, Methods
CVMdl является ClassificationPartitionedKernel модель. По умолчанию программное обеспечение реализует 10-кратную перекрестную валидацию. Чтобы задать другое количество складок, используйте 'KFold' аргумент пары "имя-значение" вместо 'Crossval'.
Предсказать апостериорные вероятности классов для наблюдений, которые fitckernel не использует при обучении складок.
[~,posterior] = kfoldPredict(CVMdl);
Область выхода posterior - матрица с двумя столбцами и n строки, где n количество наблюдений. Столбец i содержит апостериорные вероятности CVMdl.ClassNames(i) учитывая конкретное наблюдение.
Получите ложные и истинные положительные скорости и оцените площадь под кривой (AUC). Укажите, что второй класс является положительным классом.
[fpr,tpr,~,auc] = perfcurve(Y,posterior(:,2),CVMdl.ClassNames(2)); auc
auc = 0.9441
AUC близок к 1, что указывает на то, что модель хорошо предсказывает метки.
Постройте график кривой ROC.
plot(fpr,tpr) xlabel('False positive rate') ylabel('True positive rate') title('ROC Curve')

CVMdl - Перекрестно проверенная, двоичная модель классификации ядраClassificationPartitionedKernel объект моделиПерекрестно проверенная, двоичная модель классификации ядра, заданная как ClassificationPartitionedKernel объект модели. Можно создать ClassificationPartitionedKernel моделировать при помощи fitckernel и определение любого из аргументов пары "имя-значение" перекрестной проверки.
Чтобы получить оценки, kfoldPredict применяет те же данные, что и для перекрестной проверки модели классификации ядра (X и Y).
label - Предсказанные метки классовПредсказанные метки классов, возвращенные как категориальный или символьный массив, логическая или числовая матрица или массив ячеек из векторов символов.
label имеет n строки, где n количество наблюдений в X, и имеет тот совпадающий тип данных, что и наблюдаемые метки классов (Y) используется для обучения CVMdl. (Программа обрабатывает массивы строк как массивы ячеек векторов символов.)
kfoldPredict классифицирует наблюдения в класс, давая наивысший счет.
score - Классификационные оценкиКлассификационные оценки, возвращенные как n-на-2 числовой массив, где n - количество наблюдений в X. score(i,j) - счет для классификации наблюдений i в j классов. Порядок классов хранится в CVMdl.ClassNames.
Если CVMdl.Trained{1}.Learner является 'logistic', тогда классификационные оценки являются апостериорными вероятностями.
Для моделей классификации ядра необработанный classification score для классификации x наблюдений, вектора-строки, в положительный класс задан как
является преобразованием наблюдения для расширения функции.
β - предполагаемый вектор-столбец коэффициентов.
b - предполагаемое скалярное смещение.
Необработанная классификационная оценка для классификации x в отрицательный класс - − f (x). Программа классифицирует наблюдения в класс, который дает положительный счет.
Если модель классификации ядра состоит из обучающихся логистической регрессии, то программное обеспечение применяет 'logit' преобразование счета в необработанные классификационные оценки (см. ScoreTransform).
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.