La técnica conocida como bagging consiste en muestrear los datos de entrenamiento de una manera muy concreta llamada bootstrapping y utilizar luego cada muestra así tomada para ajustar sendos modelos (de clasificación o regresión) con los que construir un enesemble.
Así, la estructura del método es muy sencilla: primero, generamos N muestras bootstrap a partir de los datos originales. A continuación utilizamos cada muestra para construir un modelo del ensemble que luego usaremos para realizar una predicción sobre otra muestra diferente.
En este artículo vamos a crear un modelo apilado (stack): igual que en el anterior, crearemos algunos modelos de primer nivel; pero luego seleccionaremos uno de segundo nivel, que tomará las predicciones de los de primer nivel como entradas para realizar su propia predicción.
Como primer paso, cargamos y preparamos los datos:
library(C50) library(modeldata) data(mlc_churn) churn <- mlc_churn # Variables target y predictoras (features) # Variables target y predictoras (features) target <- "churn" predictoras <- names(churn)[names(churn) !
Como nos propusimos en el artículo anterior, vamos a preparar un primer ensemble entrenando un random forest, un svm tipo radial y un xgbm tipo tree como modelos de primer nivel.
Para construirlos vamos a aprovechar las facilidades del paquete caret. Por ejemplo, nos permitirá validar los modelos construidos mediante cross validation, es decir, usando solo el train set sin necesidad de disponer de un data set específico para validación.
“Applied Predictive Modeling” no es un libro para completos principiantes, pero si tenéis ya una cierta idea de lo que es machine learning y manejáis mínimamente R, puede convertirse en una magnífica vía de aprendizaje práctico.
Los autores Sus autores son Max Kuhn y Kjell Johnson. Ambos vienen de la investigación en la industria farmacéutica, en donde han aplicado durante muchos años las técnicas de modelado predictivo que describen en el libro.
En este artículo vamos a repetir el mismo ejercicio que en el anterior pero esta vez construiremos un modelo C5.0.
Como recordaréis, nuestro problema de clasificación consiste en la predicción de posibles bajas (churn) de clientes de una operadora móvil.
Los pasos que seguiremos son, como siempre:
Obtención de los datos
Exploración y preparación de los datos
Construcción del modelo
Evaluación de su rendimiento
Continuamos con la implementación en R de dos tipos de árboles de decisión, probablemente los algoritmos más empleados en Machine Learning. En este artículo construiremos un modelo rpart. En el artículo anterior planteamos un problema de clasificación, consistente en la predicción de posibles bajas (churn) de clientes de una operadora móvil. Cargamos allí los datos e hicimos una sencilla exploración de los mismos. En este vamos a preparar los datos para construir a continuación nuestro modelo de predicción.
En esta entrada y la siguiente veremos la implementación en R de dos árboles de decisión: rpart y C5.0. Nos servirán para profundizar en el mecanismo de particionamiento recursivo empleado.
Chief Data Scientist Imagina que eres el Chief Data Scientist de una compañía operadora de telefonía móvil. Tu jefe te llama a su despacho y te explica que la tasa de rotación de vuestros clientes es alarmante: últimamente, el porcentaje de clientes que se pasa a otras compañías de la competencia ha crecido de manera alarmante.
Los Árboles de Decisión o Clasificación constituyen un buen ejemplo de clasificadores Machine Learning. Son relativamente sencillos de entender y sobre ellos se basan otros algoritmos más complicados.
¿A qué problemas se aplican? El escenario es el siguiente: tenemos una serie de observaciones o ejemplos. Cada uno de ellos está compuesto por un vector de valores concretos de diferentes variables:
Variables predictoras, atributos o features: pueden ser continuas o categóricas.