Пакет: 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)
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
, 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 s.
| ||||||||||||||||||||
|
Категориальные индексы предиктора, заданные как вектор положительных целых чисел. Если | ||||||||||||||||||||
| Уникальные метки класса использовали в обучении модель, заданную как категориальное или символьный массив, логический или числовой вектор или массив ячеек из символьных векторов. | ||||||||||||||||||||
|
Квадратная матрица, где Если CVModel.Cost = CostMatrix; | ||||||||||||||||||||
|
Имя перекрестной подтвержденной модели, которая является вектором символов. | ||||||||||||||||||||
|
Количество сгибов использовало в перекрестной подтвержденной модели, которая является положительным целым числом. | ||||||||||||||||||||
|
Объект, содержащий параметры | ||||||||||||||||||||
|
Раздел класса | ||||||||||||||||||||
| Имена переменной прогноза, заданные как массив ячеек из символьных векторов. Порядок элементов | ||||||||||||||||||||
|
Числовой вектор априорных вероятностей для каждого класса. Порядок элементов Если CVModel.Prior = priorVector; | ||||||||||||||||||||
| Имя переменной отклика, заданное как вектор символов. | ||||||||||||||||||||
| Выиграйте преобразование, заданное как вектор символов или указатель на функцию. Изменить функцию преобразования счета на
| ||||||||||||||||||||
|
Обученные ученики, который является массивом ячеек компактных моделей классификации. | ||||||||||||||||||||
|
Масштабированный | ||||||||||||||||||||
|
Матрица или таблица значений предиктора. Каждый столбец | ||||||||||||||||||||
|
Категориальный или символьный массив, логический или числовой вектор или массив ячеек из символьных векторов, задающий класс, маркирует для каждого наблюдения. |
kfoldEdge | Ребро классификации для наблюдений, не используемых для обучения |
kfoldLoss | Потеря классификации для наблюдений, не используемых для обучения |
kfoldMargin | Поля классификации для наблюдений, не используемых для обучения |
kfoldPredict | Предскажите ответ для наблюдений, не используемых для обучения |
kfoldfun | Крест подтверждает функцию |
Значение. Чтобы изучить, как классы значения влияют на операции копии, смотрите Копирование Объектов (MATLAB).
Чтобы оценить апостериорные вероятности обученных, перекрестных подтвержденных классификаторов SVM, используйте fitSVMPosterior
.