Пакет: classreg.learning.partition
Модель классификации с перекрестной проверкой
ClassificationPartitionedModel представляет собой набор классификационных моделей, обученных перекрестно проверенным складкам. Оценка качества классификации путем перекрестной проверки с использованием одного или нескольких методов «kfold»: kfoldPredict, kfoldLoss, kfoldMargin, kfoldEdge, и kfoldfun.
Каждый метод «kfold» использует модели, обученные на кратных наблюдениях, чтобы предсказать ответ для внеплановых наблюдений. Например, предположим, что выполняется перекрестная проверка с использованием пяти сгибов. В этом случае программное обеспечение случайным образом распределяет каждое наблюдение на пять групп примерно одинакового размера. Тренировочная складка содержит четыре группы (т.е. приблизительно 4/5 данных), а тестовая складка содержит другую группу (т.е. приблизительно 1/5 данных). В этом случае перекрестная проверка выполняется следующим образом:
Программное обеспечение обучает первую модель (хранится в CVMdl.Trained{1}) с использованием наблюдений в последних четырех группах и резервирует наблюдения в первой группе для проверки.
Программное обеспечение обучает вторую модель (хранится в CVMdl.Trained{2}), используя наблюдения в первой группе и последних трех группах, и резервирует наблюдения во второй группе для проверки.
Аналогичным образом программное обеспечение работает для третьей-пятой моделей.
При проверке по вызову kfoldPredict, он вычисляет прогнозы для наблюдений в группе 1, используя первую модель, группу 2 для второй модели и так далее. Короче говоря, программное обеспечение оценивает отклик для каждого наблюдения, используя модель, обученную без этого наблюдения.
создает перекрестно проверенную классификационную модель из классификационной модели (CVMdl = crossval(Mdl)Mdl).
В качестве альтернативы:
CVDiscrMdl = fitcdiscr(X,Y,Name,Value)
CVKNNMdl = fitcknn(X,Y,Name,Value)
CVNetMdl = fitcnet(X,Y,Name,Value)
CVNBMdl = fitcnb(X,Y,Name,Value)
CVSVMMdl = fitcsvm(X,Y,Name,Value)
CVTreeMdl = fitctree(X,Y,Name,Value)
создать модель с перекрестной проверкой при Name является либо 'CrossVal', 'KFold', 'Holdout', 'Leaveout', или 'CVPartition'. Дополнительные сведения о синтаксисе см. в разделе fitcdiscr, fitcknn, fitcnet, fitcnb, fitcsvm, и fitctree.
|
классификационная модель, указанная как одна из следующих:
|
|
Ребра ячеек для числовых предикторов, заданные как массив ячеек из p числовых векторов, где p - число предикторов. Каждый вектор включает в себя края ячейки для числового предсказателя. Элемент в массиве ячеек для категориального предиктора пуст, поскольку программное обеспечение не содержит категориальных предикторов. Программа содержит числовые предикторы только при указании Можно воспроизвести привязанные данные предиктора X = mdl.X; % Predictor data
Xbinned = zeros(size(X));
edges = mdl.BinEdges;
% Find indices of binned predictors.
idxNumeric = find(~cellfun(@isempty,edges));
if iscolumn(idxNumeric)
idxNumeric = idxNumeric';
end
for j = idxNumeric
x = X(:,j);
% Convert x to array if x is a table.
if istable(x)
x = table2array(x);
end
% Group x into bins by using the Xbinned содержит индексы ячеек в диапазоне от 1 до числа ячеек для числовых предикторов. Xbinned значения равны 0 для категориальных предикторов. Если X содержит NaNs, затем соответствующее Xbinned значения NaNs.
| ||||||||||||||||||||
|
Индексы категориального предиктора, указанные как вектор положительных целых чисел. Предполагая, что данные предиктора содержат наблюдения в строках, Если | ||||||||||||||||||||
| Уникальные метки классов, используемые при обучении модели, указанные как категориальный или символьный массив, логический или числовой вектор или массив ячеек символьных векторов. | ||||||||||||||||||||
|
Квадратная матрица, где Если CVModel.Cost = CostMatrix; | ||||||||||||||||||||
|
Имя перекрестно проверенной модели, которая является символьным вектором. | ||||||||||||||||||||
|
Количество складок, используемых в модели с перекрестной проверкой, которое является положительным целым числом. | ||||||||||||||||||||
|
Параметры хранения объекта | ||||||||||||||||||||
|
Количество наблюдений в данных обучения, хранящихся в | ||||||||||||||||||||
|
Раздел класса | ||||||||||||||||||||
| Имена переменных предиктора, заданные как массив ячеек векторов символов. Порядок элементов | ||||||||||||||||||||
|
Числовой вектор предшествующих вероятностей для каждого класса. Порядок элементов Если CVModel.Prior = priorVector; | ||||||||||||||||||||
| Имя ответной переменной, указанное как символьный вектор. | ||||||||||||||||||||
|
Преобразование баллов, указанное как символьный вектор или дескриптор функции. Изменение функции преобразования баллов на
| ||||||||||||||||||||
|
Обученные учащиеся, который представляет собой клеточный массив компактных моделей классификации. | ||||||||||||||||||||
|
Чешуйчатое | ||||||||||||||||||||
|
Матрица или таблица предикторных значений. | ||||||||||||||||||||
|
Категориальный или символьный массив, логический или числовой вектор или массив ячеек символьных векторов, задающих метки классов для каждого наблюдения. Каждая запись |
kfoldEdge | Край классификации для перекрестно проверенной модели классификации |
kfoldLoss | Потеря классификации для перекрестно проверенной модели классификации |
kfoldMargin | Поля классификации для перекрестно проверенной модели классификации |
kfoldPredict | Классификация наблюдений в перекрестно проверенной модели классификации |
kfoldfun | Функция перекрестной проверки для классификации |
Значение. Сведения о том, как классы значений влияют на операции копирования, см. в разделе Копирование объектов.
Чтобы оценить апостериорные вероятности обученных, перекрестно проверенных классификаторов SVM, используйте fitSVMPosterior.