Пакет: classreg.learning.partition
Перекрестная проверенная классификационная модель
ClassificationPartitionedModel
- набор классификационных моделей, обученных на перекрестных проверенных складках. Оцените качество классификации путем перекрестной валидации с помощью одного или нескольких методов «kfold»: kfoldPredict
, kfoldLoss
, kfoldMargin
, kfoldEdge
, и kfoldfun
.
Каждый метод «kfold» использует модели, обученные внутрикратным наблюдениям, чтобы предсказать ответ для несовпадающих наблюдений. Например, предположим, что вы пересекаете проверку с помощью пяти складок. В этом случае программное обеспечение случайным образом присваивает каждое наблюдение пяти группам примерно одинакового размера. training fold содержит четыре группы (т.е. примерно 4/5 данных), а test fold - другую группу (т.е. примерно 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 содержит NaN s, затем соответствующее Xbinned значения NaN с.
| ||||||||||||||||||||
|
Категориальные индексы предиктора, заданные как вектор положительных целых чисел. Принимая, что данные предиктора содержат наблюдения в строках, Если | ||||||||||||||||||||
| Уникальные метки классов, используемые в обучении модели, заданные как категориальный или символьный массив, логический или числовой вектор или массив ячеек векторов символов. | ||||||||||||||||||||
|
Квадратная матрица, где Если CVModel.Cost = CostMatrix; | ||||||||||||||||||||
|
Имя перекрестно проверенной модели, которая является вектором символов. | ||||||||||||||||||||
|
Количество складок, используемых в перекрестно проверенной модели, которая является положительным целым числом. | ||||||||||||||||||||
|
Параметры хранения объектов | ||||||||||||||||||||
|
Количество наблюдений в обучающих данных, хранимых в | ||||||||||||||||||||
|
Разбиение классов на | ||||||||||||||||||||
| Имена переменных предиктора, заданные как массив ячеек из векторов символов. Порядок элементов | ||||||||||||||||||||
|
Числовой вектор априорных вероятностей для каждого класса. Порядок элементов Если CVModel.Prior = priorVector; | ||||||||||||||||||||
| Имя переменной отклика, заданное как вектор символов. | ||||||||||||||||||||
|
Преобразование счета, заданное как вектор символов или указатель на функцию. Чтобы изменить функцию преобразования счета на
| ||||||||||||||||||||
|
Обученные учащиеся, который является массивом ячеек компактных классификационных моделей. | ||||||||||||||||||||
|
Масштабированный | ||||||||||||||||||||
|
Матрица или таблица значений предиктора. | ||||||||||||||||||||
|
Категориальный или символьный массив, логический или числовой вектор или массив ячеек векторов символов, задающих метки классов для каждого наблюдения. Каждая запись |
kfoldEdge | Классификационные ребра для перекрестно проверенной классификационной модели |
kfoldLoss | Классификационные потери для перекрестно проверенной классификационной модели |
kfoldMargin | Классификационные поля для перекрестно проверенной классификационной модели |
kfoldPredict | Классифицируйте наблюдения в перекрестно проверенной классификационной модели |
kfoldfun | Функция перекрестной проверки для классификации |
Значение. Чтобы узнать, как классы значений влияют на операции копирования, см. раздел «Копирование объектов».
Чтобы оценить апостериорные вероятности обученных, перекрестно проверенных классификаторов SVM, используйте fitSVMPosterior
.