Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

resubPredict

Clase: RegressionTree

Predecir la respuesta de reenvío del árbol

Sintaxis

Yfit = resubPredict(tree)
[Yfit,node] = resubPredict(tree)
[Yfit,node] = resubPredict(tree,Name,Value)

Descripción

Yfit = resubPredict(tree) Devuelve las respuestas que predice para los datos. son las predicciones de los datos que se solían crear.treetree.XYfittreefitrtreetree

[Yfit,node] = resubPredict(tree) Devuelve los números de nodo de los datos que se han vuelto a enviar.tree

[Yfit,node] = resubPredict(tree,Name,Value) predice con opciones adicionales especificadas por uno o más argumentos de par.Name,Value

Argumentos de entrada

expandir todo

tree

Un árbol de regresión construido usando.fitrtree

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Nivel de poda, especificado como el par separado por comas que consta de y un vector de enteros no negativos en orden ascendente o.'Subtrees''all'

Si especifica un vector, todos los elementos deben ser al menos y como máximo. indica el árbol completo, no podado e indica el árbol completamente podado (es decir, sólo el nodo raíz).0max(tree.PruneList)0max(tree.PruneList)

Si especifica,'all' resubPredict opera en todos los subárboles (es decir, toda la secuencia de poda). Esta especificación equivale a usar.0:max(tree.PruneList)

resubPredict ciruelas a cada nivel indicado en y, a continuación, estima los argumentos de salida correspondientes.treeSubtrees El tamaño de determina el tamaño de algunos argumentos de salida.Subtrees

Para invocar, las propiedades y de deben estar no vacías.SubtreesPruneListPruneAlphatree En otras palabras, crece estableciendo, o podando usandotree'Prune','on'tree prune.

Ejemplo: 'Subtrees','all'

Tipos de datos: single | double | char | string

Argumentos de salida

Yfit

La respuesta predice los datos de entrenamiento.tree

Si el argumento nombre-valor es un escalar o falta, es el mismo tipo de datos que los datos de respuesta de entrenamiento.SubtreesEtiquetatree.Y

Si contiene entradas >, tiene columnas, cada una de las cuales representa las predicciones del subárbol correspondiente.Subtreesm1Etiquetam

node

Los números de nodo donde se envía cada fila de datos.treetree

Si el argumento nombre-valor es un escalar o falta, es un vector de columna numérico con filas, el mismo número de filas que.Subtreesnodentree.X

Si contiene las entradas >, es una-por-matriz.Subtreesm1nodenm Cada columna representa las predicciones de nodo del subárbol correspondiente.

Ejemplos

expandir todo

Cargue el conjunto de datos.carsmall Considere, y como predictores de la respuesta.DisplacementHorsepowerWeightMPG

load carsmall X = [Displacement Horsepower Weight];

Cultivar un árbol de regresión utilizando todas las observaciones.

Mdl = fitrtree(X,MPG);

Calcule el reenvío MSE.

Yfit = resubPredict(Mdl); mean((Yfit - Mdl.Y).^2)
ans = 4.8952 

Puede obtener el mismo resultado usando.resubLoss

resubLoss(Mdl)
ans = 4.8952 

Cargue el conjunto de datos.carsmall Considere como un predictor de la respuesta.WeightMPG

load carsmall idxNaN = isnan(MPG + Weight); X = Weight(~idxNaN); Y = MPG(~idxNaN); n = numel(X);

Cultivar un árbol de regresión utilizando todas las observaciones.

Mdl = fitrtree(X,Y);

Calcule los valores ajustados de reenvío para los subárboles en varios niveles de poda.

m = max(Mdl.PruneList); pruneLevels = 1:4:m; % Pruning levels to consider z = numel(pruneLevels); Yfit = resubPredict(Mdl,'SubTrees',pruneLevels);

es una matriz de valores ajustados en el que las filas corresponden a observaciones y las columnas corresponden a un subárbol.Yfitnz

Trazar varias columnas de y en contra.YfitYX

figure; sortDat = sortrows([X Y Yfit],1); % Sort all data with respect to X plot(repmat(sortDat(:,1),1,size(Yfit,2) + 1),sortDat(:,2:end))...     % Vectorize for efficiency lev = cellstr(num2str((pruneLevels)','Level %d MPG')); legend(['Observed MPG'; lev]) title 'In-Sample Fitted Responses' xlabel 'Weight (lbs)'; ylabel 'MPG'; h = findobj(gcf); set(h(4:end),'LineWidth',3) % Widen all lines

Los valores de los niveles de poda más bajos tienden a seguir los datos más estrechamente que los niveles más altos.Yfit Los niveles de poda más altos tienden a ser planos para grandes intervalos.X

Consulte también

| |