En este blog se exploran las posibilidades de analizar datos y crear modelos basados en la Teoría de la Información usando Powerhouse

viernes, 28 de marzo de 2008

Modelos de predicción usando modelos de segmentos

En el artículo anterior comenté que los modelos de clusters o segmentos pueden usarse para varios propósitos. Hoy mostraré cómo es posible usar un modelo de segmentos para predecir.

Powerhouse permite generar modelos de clusters con distintas cantidades de segmentos. Cuando se usa el modelo para explicar los datos, se prefieren pocos segmentos, pero si el modelo se usa para predecir, es preferible que la cantidad de segmentos o clusters sea grande.

Un modelo de clusters es normalmente un modelo no supervisado. Dicho de otro modo, no existe una variable output que sirve como guía en la creación del modelo. La utilidad de un modelo no supervisado está relacionada con la manera en que se distribuyen los valores de las variables en cada uno de los clusters.

Si los valores de la variable output (variable a predecir) se distribuyen con diferentes rangos en cada cluster, es posible usar el promedio de los valores de cada cluster como valor predicho. Por ejemplo, supongamos que un modelo contiene 10 clusters. Supongamos también que la variable a predecir es del tipo SI/NO. Si asignamos 1 para SI y 0 para NO, podemos calcular el promedio por cada cluster y cada valor representará la probabilidad de que la variable tome valor SI. La siguiente tabla muestra lo que podrían ser estos valores

Con esta tabla podemos armar el modelo de predicción de la siguiente manera: cuando tenemos un caso nuevo, representado por las mismas variables con las que se armó el modelo de cluster, sólo hay que calcular el cluster al que corresponde. Luego, la predicción, que en este ejemplo será la probabilidad de ser "SI", será la probabilidad asignada al cluster en la tabla de arriba.

Como ejemplo práctico usé datos acerca de los clientes de un banco para armar un modelo de riesgo crediticio. Luego construí un modelo de cluster, que en Powerhouse se llama OPTICL. Modifiqué la cantidad de clusters llevándolo al máximo. Esto resultó en un modelo con 64 clusters. Luego calculé la probabilidad de encontrar valores SI de la variable output usando los datos de entrenamiento.

Es importante aclarar que Powerhouse no usa la variable output para construir un modelo de cluster (si lo hiciera ya no sería un modelo no supervisado).

Finalmente apliqué el modelo en los datos de prueba (esto genera un número de cluster para cada caso) y reemplacé los números de cluster de cada caso por la probabilidad calculada anteriormente.

¿El resultado? Un modelo con un KS de 51% (es un excelente valor). Para comparar, realicé un modelo de predicción utilizando el Scorecard de Powerhouse sobre los mismos datos y encontré que el rendimiento fue levemente superior con un KS de 55% sobre los datos de prueba.

Conclusiones:

Los modelos de predicción no tienen que ser necesariamente supervisados. En este artículo vimos cómo es posible realizar un modelo no supervisado con una muy buena respuesta.

8 comentarios:

Anónimo dijo...
Este comentario ha sido eliminado por un administrador del blog.
Unknown dijo...

CUAL ES EL INDICADOR KS?
SÓLO CONOZCO EL GINI
GRACIAS!

Unknown dijo...

Cual es el indicador KS?

Anónimo dijo...

Muy buen articulo, estoy casi 100% de acuerdo contigo :)

Anónimo dijo...

Interesante post, estoy de acuerdo contigo aunque no al 100%:)

Marcelo R. Ferreyra dijo...

Gracias por los comentarios y por favor disculpen el retraso en la publicación de los mismos y mi respuesta.

El indicador KS es muy usado en el Argentina. Creo que fue popularizado hace unos años por Equifax Argentina(antes Veraz). Pueden encontrar más información en http://es.wikipedia.org/wiki/Prueba_de_Kolmog%C3%B3rov-Smirnov

¿Por qué creen que no es una buena idea utilizar un modelo de clustering como prediccón?

Zona Anime dijo...

HOLA MARCELO, TENGO TRES PREGUNTAS, PODRIAS DEFINIRLA DESDE TU PUNTO VISTA POR FAVOR

1.-¿QUE ES UN MODELO? O ¿A QUE SE LLAMA MODELO EN CIENCIA DE DATOS?
2.-QUE SON LOS DATOS DE ENTRENAMIENTOS? O A QUE SE LLAMA DATOS ENTRENAMIENTOS EN CIENCIA DE DATOS?
2.-QUE SON LOS DATOS DE PRUEBA? O A QUE SE LLAMA DATOS DE PRUEBA EN CIENCIA DE DATOS?

Y GRACIAS POR EL BLOG, ESTA MUY INTERESANTE

Marcelo R. Ferreyra dijo...

Hola, un modelo es una forma de representar un conjunto de observaciones (que pueden ser miles o millones) de manera simplificada. Por ejemplo, si tengo miles de datos (filas y columnas) sobre clientes de una empresa, un modelo podría capturar la información de todos estos datos, en una ecuación.

Los modelos se realizan con una parte de todos los datos disponibles para desarrollarlo (datos de entrenamiento). Luego se prueba el modelo con la otra parte (datos de prueba). Un buen modelo debería dar resultados similares en ambas partes (entrenamiento y prueba).

Saludos,
Marcelo