Otros temas

En esta unidad, se analizan los siguientes temas:

  • interpretando bosques aleatorios
  • entrenar bosques aleatorios
  • pros y contras de los bosques aleatorios

Interpreta bosques aleatorios

Los bosques aleatorios son más complejos de interpretar que los árboles de decisión. Bosques aleatorios contener árboles de decisión entrenados con ruido aleatorio. Por eso, es más difícil juzgar la estructura del árbol de decisiones. Sin embargo, podemos interpretar de bosque de dos maneras.

Un enfoque para interpretar un bosque aleatorio es simplemente entrenar e interpretar un bosque árbol de decisión con el algoritmo CART. Debido a que tanto el bosque aleatorio como el CART son entrenadas con el mismo algoritmo central, “comparten la misma visión global” de los de tu conjunto de datos. Esta opción funciona bien para conjuntos de datos simples y para comprender el interpretación general del modelo.

Las importancias de las variables son otra buena interpretabilidad enfoque. Por ejemplo, la siguiente tabla clasifica la importancia de la variable diferentes atributos para un modelo de bosque aleatorio entrenado Conjunto de datos del censo (también conocido como Adulto).

Tabla 8. Importancia variable de 14 atributos diferentes

Función Puntuación de la suma Disminución media de la exactitud Disminución media del AUC Profundidad mínima media Cantidad de nodos Disminución media del PR-AUC Num como raíz
relationship

4203592.6

0.0045

0.0172

4,970

57040

0.0093

1095

capital_gain

3363045.1

0.0199

0.0194

2,852

56468

0.0655

457

marital_status

3128996.3

0.0018

0,0230

6,633

52391

0.0107

750

edad

2520658.8

0.0065

0.0074

4,969

356784

0.0033

200

education

2015905.4

0.0018

−0.0080

5,266

115751

−0.0129

205

occupation

1939409.3

0.0063

−0.0040

5,017

221935

−0.0060

62

education_num

1673648.4

0.0023

−0.0066

6.009

58303

−0.0080

197

fnlwgt

1564189.0

−0.0002

−0.0038

9.969

431987

−0.0049

0

hours_per_week

1333976.3

0,0030

0.0007

6,393

206526

−0.0031

20

capital_loss

866,863.8

0.0060

0,0020

8,076

58531

0.0118

1

workclass

644208.4

0.0025

−0.0019

9.898

132196

−0.0023

0

native_country

538841.2

0.0001

−0.0016

9.434

67211

−0.0058

0

sexo

226049.3

0.0002

0.0002

10,911

37754

−0.0011

13

race

168,180.9

−0.0006

−0.0004

11.571

42262

−0.0031

0

Como puedes ver, las diferentes definiciones de importancias variables tienen diferentes escalas. y pueden generar diferencias en la clasificación de los atributos.

Importancias variables que provienen de la estructura del modelo (por ejemplo, la suma puntuación, profundidad mínima media, núm. de nodos y num como raíz en la tabla anterior) son se calcula de manera similar para los árboles de decisión (consulta la sección "Carrito | Importancia de la variable") y bosques aleatorios.

importancia de las variables de permutación (por ejemplo, disminución media en {accuracy, auc, pr-auc} en la tabla anterior) son medidas agnósticas del modelo que pueden calcularse cualquier modelo de aprendizaje automático con un conjunto de datos de validación. Con un bosque aleatorio, Sin embargo, en lugar de usar un conjunto de datos de validación, puedes calcular la permutación importancia variable con una evaluación extraordinaria.

SHAP (explicaciones aditivas de Shapley) es un método agnóstico al modelo para explicar las predicciones individuales o la interpretación inteligente del modelo. (Consulta Aprendizaje automático interpretable por Molnar para una introducción a la interpretación agnóstica del modelo). SHAP es que normalmente es costoso de procesar, pero puede se aceleraron significativamente para la decisión por lo que es una buena manera de interpretar estos bosques.

Ejemplo de uso

En la lección anterior, entrenamos un árbol de decisión CART con un conjunto de datos pequeño llamando a tfdf.keras.CartModel. Para entrenar un modelo de bosque aleatorio, simplemente reemplaza tfdf.keras.CartModel por tfdf.keras.RandomForestModel:

model = tfdf.keras.RandomForestModel()
model.fit(tf_train_dataset)

Pros y contras

Esta sección contiene un resumen breve de las ventajas y desventajas de los bosques aleatorios.

Ventajas:

  • Al igual que los árboles de decisión, los bosques aleatorios admiten de forma nativa atributos categóricos y, a menudo, no necesitan procesamiento previo de los atributos.
  • Debido a que los árboles de decisión son independientes, los bosques aleatorios pueden entrenarse en paralelo. En consecuencia, puedes entrenar bosques aleatorios con rapidez.
  • Los bosques aleatorios tienen parámetros predeterminados que suelen dar excelentes resultados. Ajustes esos parámetros a menudo tienen poco efecto en el modelo.

Desventajas:

  • Debido a que los árboles de decisión no se podan, pueden ser grandes. Modelos con más es común que haya más de 1 millón de nodos. El tamaño (y, por lo tanto, la velocidad de inferencia) de la bosque aleatorio a veces puede ser un problema.
  • Los bosques aleatorios no pueden aprender y reutilizar representaciones internas. Cada el árbol de decisión (y cada rama de cada árbol de decisión) debe volver a aprender el conjunto de datos. En algunos conjuntos de datos, notablemente los conjuntos de datos no tabulares (p.ej., imágenes, texto), esto lleva a bosques aleatorios a peores resultados que otros métodos.