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.

predictorImportance

Las estimaciones de importancia predictora

Sintaxis

imp = predictorImportance(tree)

Descripción

imp = predictorImportance(tree) calcula las estimaciones de importancia predictora para sumando los cambios en el error medio cuadrado debido a divisiones en cada predictor y dividiendo la suma por el número de nodos de bifurcación.tree

Argumentos de entrada

tree

Un árbol de regresión creado por, o por elfitrtree compact Método.

Argumentos de salida

imp

Un vector de fila con el mismo número de elementos que el número de predictores (columnas) en.tree.X Las entradas son las estimaciones de importancia predictora, con la representación de la menor importancia posible.0

Ejemplos

expandir todo

Estimar la importancia del predictor para todas las variables predictoras en los datos.

Cargue el conjunto de datos.carsmall

load carsmall

Crezca un árbol de regresión para usar,,,, y como predictores.MPGAccelerationCylindersDisplacementHorsepowerModel_YearWeight

X = [Acceleration Cylinders Displacement Horsepower Model_Year Weight]; tree = fitrtree(X,MPG);

Estimar la importancia del predictor para todas las variables predictoras.

imp = predictorImportance(tree)
imp = 1×6

    0.0647    0.1068    0.1155    0.1411    0.3348    2.6565

, el último predictor, tiene el mayor impacto en el kilometraje.Weight El predictor con el mínimo impacto en la realización de predicciones es la primera variable, que es.Acceleration

Calcule la importancia del predictor para todas las variables en los datos y donde el árbol de regresión contiene divisiones sustitutas.

Cargue el conjunto de datos.carsmall

load carsmall

Crezca un árbol de regresión para usar,,,, y como predictores.MPGAccelerationCylindersDisplacementHorsepowerModel_YearWeight Especifique para identificar divisiones sustitutas.

X = [Acceleration Cylinders Displacement Horsepower Model_Year Weight]; tree = fitrtree(X,MPG,'Surrogate','on');

Estimar la importancia del predictor para todas las variables predictoras.

imp = predictorImportance(tree)
imp = 1×6

    1.0449    2.4560    2.5570    2.5788    2.0832    2.8938

Comparando con los resultados en, todavía tiene el mayor impacto en el kilometraje, pero es el cuarto predictor más importante.impEstimar la importancia del predictorWeightCylinders

Cargue el conjunto de datos.carsmall Considere un modelo que predice la economía de combustible media de un automóvil debido a su aceleración, número de cilindros, cilindrada del motor, potencia, fabricante, año del modelo y peso. Considere, y como variables categóricas.CylindersMfgModel_Year

load carsmall Cylinders = categorical(Cylinders); Mfg = categorical(cellstr(Mfg)); Model_Year = categorical(Model_Year); X = table(Acceleration,Cylinders,Displacement,Horsepower,Mfg,...     Model_Year,Weight,MPG);

Mostrar el número de categorías representadas en las variables categóricas.

numCylinders = numel(categories(Cylinders))
numCylinders = 3 
numMfg = numel(categories(Mfg))
numMfg = 28 
numModelYear = numel(categories(Model_Year))
numModelYear = 3 

Debido a que hay 3 categorías sólo en y, el estándar CART, algoritmo de división de predictor prefiere dividir un predictor continuo sobre estas dos variables.CylindersModel_Year

Entrenar un árbol de regresión utilizando todo el conjunto de datos. Para cultivar árboles no sesgados, especifique el uso de la prueba de curvatura para dividir los predictores. Dado que faltan valores en los datos, especifique el uso de divisiones sustitutas.

Mdl = fitrtree(X,'MPG','PredictorSelection','curvature','Surrogate','on');

Calcule los valores de importancia del predictor sumando los cambios en el riesgo debido a las divisiones en cada predictor y dividiendo la suma por el número de nodos de bifurcación. Compare las estimaciones utilizando un gráfico de barras.

imp = predictorImportance(Mdl);  figure; bar(imp); title('Predictor Importance Estimates'); ylabel('Estimates'); xlabel('Predictors'); h = gca; h.XTickLabel = Mdl.PredictorNames; h.XTickLabelRotation = 45; h.TickLabelInterpreter = 'none';

En este caso, es el predictor más importante, seguido de.DisplacementHorsepower

Más acerca de

expandir todo