resubPredict

Класс: ClassificationTree

Предскажите метки перезамены дерева классификации

Синтаксис

label = resubPredict(tree)
[label,posterior] = resubPredict(tree)
[label,posterior,node] = resubPredict(tree)
[label,posterior,node,cnum] = resubPredict(tree)
[label,...] = resubPredict(tree,Name,Value)

Описание

label = resubPredict(tree) возвращается, маркирует tree предсказывает для данных tree.XМетка предсказания tree на данных это fitctree используемый, чтобы создать tree.

[label,posterior] = resubPredict(tree) возвращает следующие вероятности класса для предсказаний.

[label,posterior,node] = resubPredict(tree) возвращает количества узла tree для повторно подставленных данных.

[label,posterior,node,cnum] = resubPredict(tree) возвращает предсказанные классификационные индексы для предсказаний.

[label,...] = resubPredict(tree,Name,Value) возвращает предсказания перезамены с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы.

Входные параметры

развернуть все

tree

Дерево классификации, созданное fitctree.

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Сокращение уровня в виде разделенной запятой пары, состоящей из 'Subtrees' и вектор из неотрицательных целых чисел в порядке возрастания или 'all'.

Если вы задаете вектор, то всеми элементами должен быть, по крайней мере, 0 и в большей части max(tree.PruneList). 0 указывает на полное, несокращенное дерево и max(tree.PruneList) указывает на полностью сокращенное дерево (i.e., только корневой узел).

Если вы задаете 'all'то resubPredict работает со всеми поддеревьями (т.е. целая последовательность сокращения). Эта спецификация эквивалентна использованию 0:max(tree.PruneList).

resubPredict чернослив tree к каждому уровню, обозначенному в Subtrees, и затем оценивает соответствующие выходные аргументы. Размер Subtrees определяет размер некоторых выходных аргументов.

Вызвать Subtrees, свойства PruneList и PruneAlpha из tree mustBeNonempty. Другими словами, вырастите tree установкой 'Prune','on', или путем сокращения tree использование prune.

Пример: 'Subtrees','all'

Типы данных: single | double | char | string

Выходные аргументы

label

Ответ tree предсказывает для обучающих данных. label совпадающий тип данных как учебные данные об ответе tree.Y.

Если Subtrees аргумент значения имени содержит m>1 записи, label имеет m столбцы, каждый из которых представляет предсказания соответствующего поддерева. В противном случае, label вектор.

posterior

Матрица или массив апостериорных вероятностей для классов tree предсказывает.

Если Subtrees аргумент значения имени является скаляром или отсутствует, posterior n- k матрица, где n количество строк в обучающих данных tree.X, и k количество классов.

Если Subtrees содержит m>1 записи, posterior n- k- m массив, где матрица для каждого m дает апостериорные вероятности для соответствующего поддерева.

node

Количества узла tree где каждая строка данных решает.

Если Subtrees аргумент значения имени является скаляром или отсутствует, node числовой вектор-столбец с n строки, одинаковое число строк как tree.X.

Если Subtrees содержит m>1 записи, node n- m матрица. Каждый столбец представляет предсказания узла соответствующего поддерева.

cnum

Классификационные индексы, что tree предсказывает для повторно подставленных данных.

Если Subtrees аргумент значения имени является скаляром или отсутствует, cnum числовой вектор-столбец с n строки, одинаковое число строк как tree.X.

Если Subtrees содержит m>1 записи, cnum n- m матрица. Каждый столбец представляет предсказания класса соответствующего поддерева.

Примеры

развернуть все

Найдите общее количество misclassifications ирисовых данных Фишера для дерева классификации.

load fisheriris
tree = fitctree(meas,species);
Ypredict = resubPredict(tree);    % The predictions
Ysame = strcmp(Ypredict,species); % True when ==
sum(~Ysame) % How many are different?
ans = 3

Загрузите ирисовый набор данных Фишера. Разделите данные в обучение (50%)

load fisheriris

Вырастите дерево классификации использование всех лепестковых измерений.

Mdl = fitctree(meas(:,3:4),species);
n = size(meas,1); % Sample size
K = numel(Mdl.ClassNames); % Number of classes

Просмотрите дерево классификации.

view(Mdl,'Mode','graph');

Figure Classification tree viewer contains an axes object and other objects of type uimenu, uicontrol. The axes object contains 18 objects of type line, text.

Дерево классификации имеет четыре уровня сокращения. Уровень 0 является полным, несокращенным деревом (как отображено). Уровень 4 является только корневым узлом (i.e., никакие разделения).

Оцените апостериорные вероятности для каждого класса с помощью поддеревьев, сокращенных к уровням 1 и 3.

[~,Posterior] = resubPredict(Mdl,'SubTrees',[1 3]);

Posterior n- K- 2 массива апостериорных вероятностей. Строки Posterior соответствуйте наблюдениям, столбцы соответствуют классам с порядком Mdl.ClassNames, и страницы соответствуют сокращению уровня.

Отобразите апостериорные вероятности класса для ирисовой диафрагмы 125 использований каждого поддерева.

Posterior(125,:,:)
ans = 
ans(:,:,1) =

         0    0.0217    0.9783


ans(:,:,2) =

         0    0.5000    0.5000

Пень решения (страница 2 Posterior) испытывает затруднения при предсказании, является ли ирисовая диафрагма 125 versicolor или virginica.

Больше о

развернуть все

Расширенные возможности

Смотрите также

| | | |