Ребро классификации для Гауссовой модели классификации ядер
возвращает ребро классификации для бинарной Гауссовой модели e = edge(Mdl,X,Y)Mdl классификации ядер использование данных о предикторе в X и соответствующий класс помечает в Y.
Загрузите ionosphere набор данных. Этот набор данных имеет 34 предиктора, и 351 бинарный ответ для радара возвращается, любой плохо ('b') или хороший ('g').
load ionosphereРазделите набор данных в наборы обучающих данных и наборы тестов. Задайте 15%-ю выборку затяжки для набора тестов.
rng('default') % For reproducibility Partition = cvpartition(Y,'Holdout',0.15); trainingInds = training(Partition); % Indices for the training set testInds = test(Partition); % Indices for the test set
Обучите бинарную модель классификации ядер использование набора обучающих данных.
Mdl = fitckernel(X(trainingInds,:),Y(trainingInds));
Оцените ребро набора обучающих данных и ребро набора тестов.
eTrain = edge(Mdl,X(trainingInds,:),Y(trainingInds))
eTrain = 2.1703
eTest = edge(Mdl,X(testInds,:),Y(testInds))
eTest = 1.5643
Выполните выбор признаков путем сравнения ребер набора тестов от многоуровневых моделей. Базирующийся только на этом критерии, классификатор с самым высоким ребром является лучшим классификатором.
Загрузите ionosphere набор данных. Этот набор данных имеет 34 предиктора, и 351 бинарный ответ для радара возвращается, любой плохо ('b') или хороший ('g').
load ionosphereРазделите набор данных в наборы обучающих данных и наборы тестов. Задайте 15%-ю выборку затяжки для набора тестов.
rng('default') % For reproducibility Partition = cvpartition(Y,'Holdout',0.15); trainingInds = training(Partition); % Indices for the training set XTrain = X(trainingInds,:); YTrain = Y(trainingInds); testInds = test(Partition); % Indices for the test set XTest = X(testInds,:); YTest = Y(testInds);
Случайным образом выберите половину переменных предикторов.
p = size(X,2); % Number of predictors
idxPart = randsample(p,ceil(0.5*p));Обучите две бинарных модели классификации ядер: тот, который использует все предикторы и тот, который использует половину предикторов.
Mdl = fitckernel(XTrain,YTrain); PMdl = fitckernel(XTrain(:,idxPart),YTrain);
Mdl и PMdl ClassificationKernel модели.
Оцените ребро набора тестов для каждого классификатора.
fullEdge = edge(Mdl,XTest,YTest)
fullEdge = 1.6335
partEdge = edge(PMdl,XTest(:,idxPart),YTest)
partEdge = 2.0205
На основе ребер набора тестов классификатор, который использует половину предикторов, является лучшей моделью.
Mdl — Бинарная модель классификации ядерClassificationKernel объект моделиБинарная модель классификации ядер, заданная как ClassificationKernel объект модели. Можно создать ClassificationKernel объект модели с помощью fitckernel.
Y — Метки классаМетки класса, заданные как категориальное, символ, или массив строк, логический или числовой вектор или массив ячеек из символьных векторов.
Тип данных Y должен совпасть с типом данных Mdl.ClassNames. (Программное обеспечение обрабатывает строковые массивы как массивы ячеек из символьных векторов.)
Отличные классы в Y должно быть подмножество Mdl.ClassNames.
Если Y символьный массив, затем каждый элемент должен соответствовать одной строке массива.
Длина Y и количество наблюдений в X должно быть равным.
Типы данных: categorical | char | string | logical | single | double | cell
weights — Веса наблюденияВеса наблюдения, заданные как положительный числовой вектор длины n, где n количество наблюдений в X. Если вы предоставляете веса, edge вычисляет взвешенное ребро классификации.
Значением по умолчанию являются единицы (.n,1)
edge нормирует weights суммировать до значения априорной вероятности в соответствующем классе.
Типы данных: double | single
e — Ребро классификацииРебро классификации, возвращенное в виде числа.
classification edge является взвешенным средним classification margins.
Один способ выбрать среди нескольких классификаторов, например, выполнить выбор признаков, состоит в том, чтобы выбрать классификатор, который дает к самому большому ребру.
classification margin для бинарной классификации, для каждого наблюдения, различия между счетом классификации к истинному классу и счетом классификации к ложному классу.
Программное обеспечение задает поле классификации для бинарной классификации как
x является наблюдением. Если истинная метка x является положительным классом, то y равняется 1, и –1 в противном случае. f (x) является счетом классификации положительных классов к наблюдению x. Поле классификации обычно задается как m = y f (x).
Если поля находятся по той же шкале, то они служат мерой по уверенности классификации. Среди нескольких классификаторов те, которые дают к большим полям, лучше.
Для моделей классификации ядер, необработанного classification score для классификации наблюдения x, вектор-строка, в положительный класс задан
преобразование наблюдения для расширения функции.
β является предполагаемым вектор-столбцом коэффициентов.
b является предполагаемым скалярным смещением.
Необработанный счет классификации к классификации x в отрицательный класс является −f (x). Программное обеспечение классифицирует наблюдения в класс, который дает к положительному счету.
Если модель классификации ядер состоит из учеников логистической регрессии, то программное обеспечение применяет 'logit' выиграйте преобразование к необработанным баллам классификации (см. ScoreTransform).
Эта функция полностью поддерживает "высокие" массивы. Для получения дополнительной информации смотрите Длинные массивы (MATLAB).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.