Aprendizaje automático de efectos mixtos para variables categóricas de alta cardinalidad – Parte II biblioteca GPBoost

Aprendizaje automático de efectos mixtos para variables categóricas - Parte II GPBoost

Una demostración de GPBoost en Python & R utilizando datos del mundo real

Ilustración de datos categóricos de alta cardinalidad: diagramas de caja y datos brutos (puntos rojos) de la variable de respuesta para diferentes niveles de una variable categórica - Imagen del autor

Las variables categóricas de alta cardinalidad son variables para las cuales el número de niveles diferentes es grande en relación con el tamaño de la muestra de un conjunto de datos. En la Parte I de esta serie, realizamos una comparación empírica de diferentes métodos de aprendizaje automático y encontramos que los efectos aleatorios son una herramienta efectiva para manejar variables categóricas de alta cardinalidad con el algoritmo GPBoost [Sigrist, 2022, 2023] que tiene la mayor precisión de predicción. En este artículo, demostramos cómo se puede aplicar el algoritmo GPBoost, que combina el impulso de árbol con efectos aleatorios, utilizando los paquetes de Python y R de la biblioteca GPBoost. Se utiliza la versión 1.2.1 de GPBoost en esta demostración.

Tabla de contenidos

∘ 1 Introducción∘ 2 Datos: descripción, carga y división de muestra∘ 3 Entrenamiento de un modelo GPBoost∘ 4 Elección de parámetros de ajuste∘ 5 Predicción∘ 6 Interpretación∘ 7 Opciones de modelado adicionales · · 7.1 Interacción entre variables categóricas y otras variables predictoras · · 7.2 Modelos de efectos mixtos lineales (generalizados)∘ 8 Conclusión y referencias

1 Introducción

Aplicar un modelo GPBoost implica los siguientes pasos principales:

  1. Definir un GPModel en el cual se especifica lo siguiente: — Un modelo de efectos aleatorios: efectos aleatorios agrupados a través de group_data y/o procesos gaussianos a través de gp_coords — La verosimilitud (= distribución de la variable de respuesta condicional a los efectos fijos y aleatorios)
  2. Crear un Dataset que contenga la variable de respuesta (etiqueta) y variables predictoras de efectos fijos (datos)
  3. Elegir parámetros de ajuste, por ejemplo, utilizando la función gpb.grid.search.tune.parameters
  4. Entrenar el modelo
  5. Hacer predicciones y/o interpretar el modelo entrenado

A continuación, pasamos por estos puntos paso a paso.