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.

CompactRegressionTree

Paquete: classreg.learning.regr

Árbol de regresión compacta

Descripción

Versión compacta de un árbol de regresión (de clase).RegressionTree La versión compacta no incluye los datos para entrenar el árbol de regresión. Por lo tanto, no puede realizar algunas tareas con un árbol de regresión compacta, como la validación cruzada. Utilice un árbol de regresión compacta para realizar predicciones (regresiones) de nuevos datos.

Construcción

ctree = compact(tree) construye un árbol de decisión compacto a partir de un árbol de decisión completo.

Argumentos de entrada

expandir todo

Árbol de regresión completo y entrenado, especificado como un objeto construido por.RegressionTreefitrtree

Propiedades

CategoricalPredictors

Índices predictores categóricos, especificados como un vector de enteros positivos. contiene valores de índice correspondientes a las columnas de los datos del predictor que contienen predictores categóricos.CategoricalPredictors Si ninguno de los predictores es categórico, entonces esta propiedad está vacía ().[]

CategoricalSplits

Matriz de celdas an-by-2, donde es el número de divisiones categóricas en.nntree Cada fila en da los valores izquierdo y derecho para una división categórica.CategoricalSplits Para cada nodo de bifurcación con división categórica basada en una variable predictora categórica, se elige el hijo izquierdo si está en y se elige el secundario correcto si está en.jzzCategoricalSplits(j,1)zCategoricalSplits(j,2) Las divisiones están en el mismo orden que los nodos del árbol. Los nodos de estas divisiones se pueden encontrar ejecutando y seleccionando cortes de arriba a abajo.cuttype'categorical'

Children

Matriz an-by-2 que contiene los números de los nodos secundarios para cada nodo en, donde es el número de nodos.ntreen Los nodos hoja tienen un nodo secundario.0

CutCategories

Matriz de celdas a-by-2 de las categorías utilizadas en las ramas, donde es el número de nodos.ntreen Para cada nodo de rama basado en una variable predictora categórica, se elige el hijo izquierdo si está entre las categorías enumeradas en, y se elige el secundario correcto si está entre los enumerados en.ixxCutCategories{i,1}xCutCategories{i,2} Ambas columnas están vacías para nodos de bifurcación basados en predictores continuos y para nodos hoja.CutCategories

contiene los puntos de corte para cortes y contiene el conjunto de categorías.CutPoint'continuous'CutCategories

CutPoint

Un vector de elemento de los valores utilizados como puntos de corte en, donde es el número de nodos.ntreen Para cada nodo de bifurcación basado en una variable predictora continua, se elige el secundario izquierdo si se elige el secundario correcto si. es para nodos de bifurcación basados en predictores categóricos y para nodos hoja.ixCutPoint<v(i)x>=CutPoint(i)CutPointNaN

CutType

Matriz de celdas de un elemento que indica el tipo de corte en cada nodo, donde está el número de nodos.ntreen Para cada nodo, es:iCutType{i}

  • : Si el corte se define en el formulario para una variable y un punto de corte.'continuous'x < vxv

  • : Si el corte se define por si una variable toma un valor en un conjunto de categorías.'categorical'x

  • — Si es un nodo hoja.''i

contiene los puntos de corte para cortes y contiene el conjunto de categorías.CutPoint'continuous'CutCategories

CutPredictor

Matriz de celdas de un elemento de los nombres de las variables utilizadas para la ramificación en cada nodo, donde está el número de nodos.ntreen Estas variables a veces se conocen como .cut variables Para los nodos hoja, contiene un vector de caracteres vacío.CutPredictor

contiene los puntos de corte para cortes y contiene el conjunto de categorías.CutPoint'continuous'CutCategories

ExpandedPredictorNames

Nombres de predictores ampliados, almacenados como una matriz de vectores de caracteres de celda.

Si el modelo utiliza codificación para variables categóricas, incluye los nombres que describen las variables expandidas.ExpandedPredictorNames De lo contrario, es el mismo que.ExpandedPredictorNamesPredictorNames

IsBranchNode

Vector lógico de un elemento que es para cada nodo de bifurcación y para cada nodo hoja de.nibtruefalsetree

NodeError

Un vector de elemento de los errores de los nodos en, donde es el número de nodos. es la probabilidad de clasificación errónea para el nodo.netreene(i)i

NodeMean

Matriz numérica de un elemento con valores de media en cada nodo de, donde es el número de nodos en el árbol.ntreen Cada elemento en es el promedio de los valores verdaderos sobre todas las observaciones en el nodo.NodeMeanY

NodeProbability

Un vector de elemento de las probabilidades de los nodos en, donde es el número de nodos.nptreen La probabilidad de un nodo se calcula como la proporción de observaciones de los datos originales que satisfacen las condiciones del nodo. Esta proporción se ajusta para cualquier probabilidad previa asignada a cada clase.

NodeRisk

Un vector de elemento del riesgo de los nodos en el árbol, donde es el número de nodos.nn El riesgo para cada nodo es el error de nodo ponderado por la probabilidad de nodo.

NodeSize

Un vector de elemento de los tamaños de los nodos en, donde es el número de nodos.nsizestreen El tamaño de un nodo se define como el número de observaciones de los datos utilizados para crear el árbol que satisfacen las condiciones del nodo.

NumNodes

El número de nodos en.ntree

Parent

Un vector de elemento que contiene el número del nodo primario para cada nodo en, donde es el número de nodos.nptreen El elemento primario del nodo raíz es.0

PredictorNames

Matriz de nombres de celdas para las variables predictoras, en el orden en que aparecen.X

PruneAlpha

Vector numérico con un elemento por nivel de poda. Si el nivel de poda oscila entre 0 y, a continuación, tiene + 1 elementos ordenados en orden ascendente. es para el nivel de poda 0 (sin poda), es para el nivel de poda 1, y así sucesivamente.MPruneAlphaMPruneAlpha(1)PruneAlpha(2)

PruneList

Vector numérico de un elemento con los niveles de poda en cada nodo de, donde es el número de nodos.ntreen Los niveles de poda van desde 0 (sin poda) a, donde es la distancia entre la hoja más profunda y el nodo raíz.MM

ResponseName

Nombre de la variable de respuesta, un vector de caracteres.Y

ResponseTransform

Identificador de función para transformar los valores de respuesta sin procesar (error cuadrado medio). El identificador de función debe aceptar una matriz de valores de respuesta y devolver una matriz del mismo tamaño. El medio predeterminado, o ninguna transformación.'none'@(x)x

Añadir o cambiar una función utilizando la notación de puntos:ResponseTransform

ctree.ResponseTransform = @function

SurrogateCutCategories

Una matriz de celdas de elemento de las categorías utilizadas para el suplente se divide en, donde es el número de nodos en.ntreentree Para cada nodo, es una matriz de celdas.kSurrogateCutCategories{k} La longitud de es igual al número de predictores suplentes encontrados en este nodo.SurrogateCutCategories{k} Cada elemento de es un vector de carácter vacío para un predictor suplente continuo, o es una matriz de celdas de dos elementos con categorías para un predictor suplente categórico.SurrogateCutCategories{k} El primer elemento de esta matriz de celdas de dos elementos enumera las categorías asignadas al secundario izquierdo por esta división suplente y el segundo elemento de esta matriz de celdas de dos elementos enumera las categorías asignadas al secundario correcto por esta división suplente. El orden de las variables de división sustitutas en cada nodo se corresponde con el orden de las variables en.SurrogateCutPredictor La variable de división óptima en este nodo no aparece. Para los nodos no rama (hoja), contiene una celda vacía.SurrogateCutCategories

SurrogateCutFlip

Matriz de celdas de un elemento de las asignaciones de corte numérico que se usa para las divisiones de suplentes, donde está el número de nodos.ntreentree Para cada nodo, es un vector numérico.kSurrogateCutFlip{k} La longitud de es igual al número de predictores suplentes encontrados en este nodo.SurrogateCutFlip{k} Cada elemento de es cero para un predictor suplente categórico o una asignación de corte numérico para un predictor suplente continuo.SurrogateCutFlip{k} La asignación de corte numérico puede ser – 1 o + 1. Para cada división sustituta con un corte numérico basado en una variable predictora continua, se elige el hijo izquierdo siCZ Z<C y la asignación de corte para esta división suplente es + 1, o si ZC y la asignación de corte para esta división suplente es – 1. Del mismo modo, se elige al niño adecuado si ZC y la asignación de corte para esta división suplente es + 1, o si Z<C y la asignación de corte para esta división suplente es – 1. El orden de las variables de división sustitutas en cada nodo se corresponde con el orden de las variables en.SurrogateCutPredictor La variable de división óptima en este nodo no aparece. Para los nodos no rama (hoja), contiene una matriz vacía.SurrogateCutFlip

SurrogateCutPoint

Matriz de celdas de un elemento de los valores numéricos utilizados para el suplente se divide en, donde es el número de nodos en.ntreentree Para cada nodo, es un vector numérico.kSurrogateCutPoint{k} La longitud de es igual al número de predictores suplentes encontrados en este nodo.SurrogateCutPoint{k} Cada elemento de es para un predictor suplente categórico, o un corte numérico para un predictor suplente continuo.SurrogateCutPoint{k}NaN Para cada división sustituta con un corte numérico basado en una variable predictora continua, se elige el hijo izquierdo siCZ Z<C y para esta división suplente es + 1, o siSurrogateCutFlip ZC y para esta división suplente es – 1.SurrogateCutFlip Del mismo modo, se elige al niño adecuado si ZC y para esta división suplente es + 1, o siSurrogateCutFlip Z<C y para esta división suplente es – 1.SurrogateCutFlip El orden de las variables de división sustitutas en cada nodo coincide con el orden de las variables devueltas por.SurrogateCutVar La variable de división óptima en este nodo no aparece. Para los nodos no rama (hoja), contiene una celda vacía.SurrogateCutPoint

SurrogateCutType

Matriz de celdas de un elemento que indica los tipos de divisiones sustitutas en cada nodo, donde se encuentra el número de nodos.ntreentree Para cada nodo, es una matriz de celdas con los tipos de las variables de división sustitutas en este nodo.kSurrogateCutType{k} Las variables se ordenan por la medida predictiva de asociación con el predictor óptimo en el orden descendente, y solo se incluyen las variables con la medida predictiva positiva. El orden de las variables de división sustitutas en cada nodo se corresponde con el orden de las variables en.SurrogateCutPredictor La variable de división óptima en este nodo no aparece. Para los nodos no rama (hoja), contiene una celda vacía.SurrogateCutType Un tipo de división suplente puede ser si el corte se define en el formulario < para una variable y un punto de corte o si el corte se define por si toma un valor en un conjunto de categorías.'continuous'ZVZV'categorical'Z

SurrogateCutPredictor

Matriz de celdas de un elemento de los nombres de las variables utilizadas para las divisiones sustitutas en cada nodo, donde está el número de nodos.ntreentree Cada elemento de es una matriz de celdas con los nombres de las variables de división sustitutas en este nodo.SurrogateCutPredictor Las variables se ordenan por la medida predictiva de asociación con el predictor óptimo en el orden descendente, y solo se incluyen las variables con la medida predictiva positiva. La variable de división óptima en este nodo no aparece. Para los nodos no rama (hoja), contiene una celda vacía.SurrogateCutPredictor

SurrogatePredictorAssociation

Una matriz de celdas de elemento de las medidas predictivas de Asociación para suplentes se divide en, donde es el número de nodos en.ntreentree Para cada nodo, es un vector numérico.kSurrogatePredictorAssociation{k} La longitud de es igual al número de predictores suplentes encontrados en este nodo.SurrogatePredictorAssociation{k} Cada elemento da la medida predictiva de asociación entre la división óptima y esta división sustituta.SurrogatePredictorAssociation{k} El orden de las variables de división sustitutas en cada nodo es el orden de las variables en.SurrogateCutPredictor La variable de división óptima en este nodo no aparece. Para los nodos no rama (hoja), contiene una celda vacía.SurrogatePredictorAssociation

Métodos

lossError de regresión
predictPredecir respuestas usando el árbol de regresión
predictorImportanceLas estimaciones de importancia predictora
surrogateAssociationMedida predictiva media de Asociación para divisiones sustitutas en el árbol de decisión
viewVer árbol

Semántica de copia

Valor. Para saber cómo afectan las clases de valor a las operaciones de copia, consulte.Copiar objetos (MATLAB)

Ejemplos

contraer todo

Cargue los datos de ejemplo.

load carsmall

Construya un árbol de regresión para los datos de ejemplo.

tree = fitrtree([Weight, Cylinders],MPG,...     'MinParentSize',20,...     'PredictorNames',{'W','C'});

Haz una versión compacta del árbol.

ctree = compact(tree);

Compare el tamaño del árbol compacto con el del árbol completo.

t = whos('tree'); % t.bytes = size of tree in bytes c = whos('ctree'); % c.bytes = size of ctree in bytes [c.bytes t.bytes]
ans = 1×2

        4060        7307

El árbol compacto es más pequeño que el árbol completo.

Capacidades ampliadas

Introducido en R2011a