2015-04-092015215laboratorio 4 (analisis de conglomerados-clustering con anexo)

Download 2015-04-092015215Laboratorio 4 (Analisis de Conglomerados-Clustering Con Anexo)

If you can't read please download the document

Upload: beto

Post on 17-Sep-2015

6 views

Category:

Documents


1 download

DESCRIPTION

ANALSIS DE CLUSTERING

TRANSCRIPT

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    1

    Laboratorio 4:

    Pre-procesamiento de datos y Anlisis de Clsters (Conglomerados)

    Temas en este laboratorio:

    Importar datos

    Pre-Procesamiento de Datos

    Anlisis de Clsteres Jerrquicos

    Revisin de Dendogramas

    Anlisis de Clsteres No Jerrquicos

    Medidas de rendimiento de Clster

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    2

    Notas para Laboratorio

    Este laboratorio ser desarrollado con la base de datos que fue utilizada en el

    laboratorio nmero 2. Se recomienda que para un mayor entendimiento de la base de datos sta

    sea revisada en los laboratorios anteriores.

    Pre-procesamiento de Datos

    1. Importar Datos

    Para comenzar a trabajar primero debemos importar los datos al programa RapidMiner, para eso

    se debe repetir el mismo proceso de los laboratorios anteriores. Recordar que para importar los

    datos se debe dirigir a

    Figura 1

    Recordar que en el paso 4 se solicita escribir el formato de la fecha que en este caso es

    dd/mm/yyyy , luego aceptar y situar los datos en el panel de procesos. Otro modo de realizarlo es

    buscar entre los repositorios que se posee y si ha sido importada anteriormente situarla en el

    panel de procesos. Luego hacer clic en play y crear un repositorio de proceso.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    3

    2. Operador Multiply: Creacin de mltiples procesos

    Tal y como fue visto en laboratorios pasados RapidMiner hace uso del operador Multiply cuando

    se desea realizar ms de un proceso en paralelo. En este laboratorio se realizarn varios procesos

    en paralelos con la finalidad de conocerlos y compararlos, por lo cual, se utilizar est funcin

    desde el comienzo. La funcin Multiply se encuentra en el men de operadores en Process

    Control, Multiply.

    Figura 2

    3. Visin de datos agregados

    Siguiendo el proceso de anlisis de datos, ahora se observarn los datos agregados haciendo uso

    del operador Aggregate, para esto haga clic en el operador que se encuentra en Data

    Transformation. Luego conctelo con el trabajo realizado hasta el momento.

    En el men del operador (a mano derecha) debe seleccionar los valores de Group By Attributes:

    Occupation y Aggregation Attributes: Mo_Income y Aggregation Function: Average.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    4

    Figura 3

    Luego haga click en play y pase a la vista de resultados, en la vista haga uso de Data View y podr

    observar los datos de cada una de las distintas ocupaciones con sus promedios en Ingreso

    Mensual.

    Figura 4

    4. Map: renombrar campos de una funcin

    Para poder realizar un Anlisis de Clster, es necesario convertir los atributos nominales a

    numricos (con una escala ordinal, de intervalo y/o de ratio) de manera de poder calcular

    indicadores que reflejen similitud y distancia entre observaciones. Por ejemplo, para el atributo

    Occupation se observan 5 valores posibles: "Professional","Skilled" y

    "Unskilled". Sin embargo, dado que stos son atributos nominales no ordinales, es imposible para

    el algoritmo conocer que un cliente con una ocupacin Professional es probablemente ms

    parecido a uno con una ocupacin de Manager que a uno con ocupacin Unskilled. En este

    ejemplo, se podra crear una mtrica que reflejara el nivel de educacin esperado de cada

    categora para representar dicha similitud. As, se podra definir que el nivel Unskilled posee el

    nivel de educacin ms bajo y se le atribuira el valor 0. Para el valor Manager se le podra atribuir

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    5

    el nivel de educacin ms alto, es decir, un valor de 4. En esta nueva mtrica ser claro para el

    algoritmo que el valor 0 est ms cercano del valor 1 que del valor 4.

    Similarmente, la nueva mtrica tambin podra reflejar distancias en una unidad continua. Esto se

    podra lograr relacionando el valor de la categora con otro atributo, por ejemplo el nivel de salario

    esperado de cada categora. En este ejemplo, se puede apreciar del resultado de la tabla

    Aggregate que la ocupacin Manager posee alrededor de $400 mensuales ms de ingreso ($3.035)

    que la categora que lo sigue, Professional ($2.601). Utilizando sta informacin, se podra crear

    una nueva mtrica que reflejara no tan slo el orden sino tambin la distancia entre las categoras,

    en este caso de ocupaciones, dado su nivel de ingreso promedio mensual.

    Debido a que no existe una manera nica de asociar mtricas a valores nominales, el criterio con

    que este pre-procesamiento sea realizado depender de la experiencia y dominio del analista del

    problema de negocios. En este laboratorio transformaremos el atributo Occupation a una escala

    ordinal.

    Para realizar estas operaciones de re-categorizacin o mapeo una opcin en RapidMiner es hacer

    uso del operador Map que se encuentra en Data Transformation, Value Modification, Nominal

    Value Modification, Map. Este operador nos permite cambiar las categoras de las variables y

    transformarlas o reagruparlas en nuevas categoras.

    Figura 5

    Para usar esta funcin se debe escoger el atributo a cambiar en . Luego, dado

    que slo reclasificaremos un atributo seleccionaremos la opcin attribute single y se escoger el

    atributo Occupation. El siguiente paso es entrar en la opcin Edit List en la que se definirn las

    reglas de recategorizacin:

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    6

    Figura 6

    En el men que aparecer se deben escoger todos los valores de la funcin ocupacin y realizar el

    cambio pertinente en escala de 0 a 4, recordar que es importante que empiece en 0 para que se

    pueda establecer un punto de referencia absoluto o valor "base" de las categoras.

    En este laboratorio se ha decidido que se har en base al orden del ingreso promedio por

    categora (Mo_Income), por lo cual la lista queda como la que se puede ver en la siguiente figura:

    (Es importante escoger un modo de recategorizarlos segn un principio justificable)

    Figura 7

    Luego haga clic en Play. Al hacer esto pase a la vista de resultados, y podr observar que el

    atributo Occupation ha cambiado de valores a nmeros en vez de valores nominales.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    7

    Figura 8

    5. Seleccin de Atributos

    Otra tarea del investigador es saber seleccionar que atributos pueden entregar informacin y

    cules no son relevantes para el modelo, esto se puede realizar de muchos modos, como por

    ejemplo sacando dos variables que expliquen lo mismo (que estn altamente correlacionadas o

    que presenten informacin duplicada). Por lo mismo en este trabajo no se utilizarn todas las

    variables, para esto se debe utilizar el operador Select Attributes, que se encuentra en Data

    Transformation, Atributes Set Reduction and Transformation, Selection, Optimization y Select

    Attributes del men de operadores.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    8

    Figura 9

    Los atributos que no se utilizarn son: Account Status, DOB (Fecha de nacimiento), gnero, ID,

    mes, ao y Mo_Balance. El caso de DOB, ID, mes y ao se explica porque estas variables no

    reflejan similitud entre los clientes. El valor ID, por ejemplo, es un nmero arbitrario que es

    asociado a cada cliente sin representar ningn orden en particular. La columna DOB (date of

    birth), sin embargo, podra haber sido utilizada porque refleja la edad de los clientes, pero fue

    descartada para simplificar el problema. Lo mismo ocurri con la columna Gender y Account

    Status. Mo_Balance fue retirado de la base de datos, pues se prefiri mantener las columnas que

    la dieron origen: Mo_Income y Mo_Expenses.

    Q: Por qu cree usted que fueron filtradas las columnas MONTH y YEAR?

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    9

    Figura 10

    Haga clic en Ok y luego en play y se mantendrn slo las variables seleccionadas.

    Figura 11

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    10

    6. Transformacin de variables categricas a numricas

    Para poder trabajar con Clster lo mejor es tener todas las variables en trminos numricos como

    fue explicado anteriormente, por lo mismo se utilizar el operador Nominal to Numerical. Para

    buscar este operador se puede usar el filtro en operadores y anotar Nominal to Numerical.

    Figura 12

    Con esto se presiona play y podemos ver que todos los datos se encuentran en formato numrico

    o entero.

    Figura 13

    Anlisis de Clster

    7. Clster Jerarquizado

    Ahora comenzaremos a realizar los anlisis de clster. Primero se analizar el Clster jerarquizado

    (en RapidMiner Agglomerative Clustering). Este anlisis y los otros de clster se encuentran en el

    men de operadores en Modeling, Clustering and Segmentation. Este se debe conectar con los

    pasos realizados anteriormente, conectar el nodo que aparece con nombre clu y hacer clic en

    Play.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    11

    Figura 14

    Al pasar a la vista de resultado podemos observar lo siguiente.

    Figura 15

    La primera pantalla nos dice la cantidad de clsters que nos otorg el proceso, en la opcin

    Dendogram View, podemos pasar a la vista de Dendogramas. Un dendograma es un mapa que

    nos dice como se fueron convirtiendo las distintas observaciones en la base de datos en los Clster

    dada la distancia calculada entre ellos. Esta vista tambin nos entrega un anlisis inicial de en

    cuantos Clster podramos separar la muestra para que estos sean equilibrados (no es muy til

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    12

    tener Clster de tamaos muy desproporcionados, por ejemplo si tuviramos 1000 casos a

    analizar y un clster contiene 999 casos y el otro slo 1). Por inspeccin y de manera bastante

    subjetiva se podra observar que existen alrededor de 5 grandes grupos en nuestros datos:

    Figura 16

    8. Clustering de K-Medias

    El mtodo de Clustering por K-Medias, se basa en que el investigador tiene una nocin de cuantos

    clster existen o necesita crear. Para esto utilizaremos 5 como fue mencionado anteriormente.

    Para no tener que volver a realizar todos los procesos anteriormente seleccionados, estos se

    pueden copiar y pegar en la ventana de procesos. Para realizar esto mantenga presionada la tecla

    Control de su teclado y haga clic en los operadores Map, Select Attributes y Nominal to

    Numerical que se encuentran en el panel de procesos primero. Luego presione control+c para

    copiar y luego presione control+v para pegar:

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    13

    Figura 17

    Al hacer esto el proceso quedar automticamente conectado con el Multiply anterior.

    Figura 18

    Ahora seleccione el operador K-Means del men de clsters en los operadores y nalo a la nueva

    lnea que se gener.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    14

    Figura 19

    En el operador de Clster que fue agregado al panel de procesos se debe seleccionar un nuevo

    valor para el K (K es la cantidad de Clster que se desea que encuentre), en lugar de 2 se usarn

    los 5 anteriormente nombrados.

    Figura 20

    Al presionar Play el programa mostrar la vista de resultados. La nueva vista generada, Text View,

    muestra la cantidad de casos por clster. La vista Folder View nos muestra una lista de los casos (o

    clientes) que pertenecen a cada grupo en particular.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    15

    Figura 21

    Figura 22

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    16

    Tambin podemos pasar al para ver cules son los centroides o casos

    representativos de cada Clster en cada una de las variables. Este valor representativo puede ser

    entendido como el valor promedio para cada atributo de cada clster.

    Figura 24

    Por ltimo tambin hay una vista grfica en que los centroides para cada atributo se pueden

    comparar.

    9. X-Means Clustering

    En las tcnicas de clustering anteriormente expuestas el usuario debe definir a-priori la cantidad

    de clsters que desea, o analizar grficamente la cantidad apropiada de clsters, lo que puede ser

    demasiado subjetivo. El algoritmo de X-Means, por el contrario, intenta ayudar al usuario

    recomendando un nmero de clsters a realizar basado en las caractersticas de los datos.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    17

    Para utilizarlo primero copiaremos nuevamente todo el pre-procesamiento y lo conectaremos al

    operador Multiply . Esto nos producir la siguiente vista en el Panel de Procesos.

    Figura 25

    El operador de X-Means buscar cuantos clsters realizar entre 2 y 60, ac no es necesario realizar ningn cambio y se puede presionar Play. Las opciones que podemos observar son las mismas del Clster de K medias, pero en este caso el algoritmo sugiere agrupar los casos en slo 4 grupos.

    Figura 26

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    18

    Figura 27

    10. Calidad de los Clster

    El programa RapidMiner posee distintas medidas para poder analizar la calidad de los clsters

    anteriormente utilizados, estas se encuentran en el men de operadores en Evaluation,

    Performance Measurement, Clustering. Para este laboratorio utilizaremos la medida Clster

    Distance Performance, pero esta medida slo puede ser utilizada en los algoritmos de Clster no

    jerrquicos, por lo cual slo ser aplicada a los ltimos dos que realizamos (K-Means y X-Means).

    Para esto debemos situar este operador luego de los modelos de clsters.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    19

    Figura 28

    Figura 29

    Figura 30

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    20

    Con esto podemos ver el valor de las distancia promedio de los casos en cada cluster respecto del

    centroide o caso representativo del clster. De esta manera, mientras menor sea la distancia

    promedio de los casos respecto del caso representativo se puede deducir que el clster es ms

    homogneo, y por lo tanto de mejor calidad. Comparando entre los resultados del anlisis de

    clusters utilizando K-means versus el de X-means es posible observar que esta mtrica es menor

    para el segundo caso. Por lo tanto, es posible deducir que los datos son mejor representados en

    grupos cuando la cantidad de grupos escogida es la sugerida por el algoritmo de X-means, es decir,

    4 grupos. En el Anexo del laboratorio se presenta mayor informacin respecto de cmo se podra

    instalar un complemento adicional que calcula la mtrica de Silueta de clsters, la cual es usada

    tpicamente en la literatura como medida de bondad del anlisis.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    21

    Tarea:

    1. Cree una escala nominal de intervalo para re-categorizar el atributo Occupation

    2. Cmo cambian los resultados del anlisis de clsters utilizando esta escala en vez de la

    original? Refirase al nmero de clsters resultantes y a la estadstica descriptiva de los

    centroides.

    3. Qu decisiones de negocios podran ser implementadas si se analizan las diferencias

    entre los centroides de los clsters resultantes del anlisis de X-means?

    4. Muestre grficamente las diferencias entre clsters utilizando un grfico de 3D scatter

    plot, en que el eje X corresponda al Mo_Income, Eje y Mo_Expenses, eje Z

    Marital_Status y el color del atributo a la etiqueta de clster.

    5. Vuelva a realizar el grfico anterior, cambiando el eje Z a una variable de su eleccin.

    Cules son las diferencias que nota con el grfico anterior? Interprete desde el punto

    de vista del problema de negocios (descripcin de segmentos de clientes de un Banco).

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    22

    Anexo Laboratorio

    Silloutte Clustering Performance Measure

    Temas en este anexo:

    Importar datos

    Clustering K-Means

    Aglomerative Clustering

    (Average) Silhouette

    Cophenetic Correlation Coefficient

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    23

    Notas para anexo de Laboratorio

    En el presente anexo, se explica cmo instalar, utilizar e interpretar el pluggin de Silhouette

    Average y Cophenetic en Rapid Miner, utilizados para medir cuan buena fue la clasificacin de la

    muestra en los distintos clusters encontrados. Dichos operadores no estn presentes en la versin

    actual de Rapid Miner, pero pueden ser descargados directamente desde la web1 o bien utilizar la

    carpeta subida a descargas de docencia web de nombre CPPlugin-0.3.jar_.

    La versin de Cophenetic descargada y escogida para ser instalada es la 0.3.

    Una vez descargada y descomprimida la carpeta, el archivo en el interior CPPlugin-0.3 debe ser

    movido al directorio de Rapid Miner (donde est instalado el programa) en la carpeta pluggins que

    est dentro de la carpeta lib.

    (1)

    (2)

    1 http://korek.name/web/moje-tvorba/rapidminer-clustering_performance_plugin-average_silhouette-cophenetic_coefficient

    http://korek.name/web/moje-tvorba/rapidminer-clustering_performance_plugin-average_silhouette-cophenetic_coefficienthttp://korek.name/web/moje-tvorba/rapidminer-clustering_performance_plugin-average_silhouette-cophenetic_coefficient
  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    24

    (3)

    (4)

    Desde este momento el programa cuenta con dos operadores de medicin de performance

    especficos para medir cuan apropiadas fueron las clasificaciones en Clster o segmentos.

    Proceso Propuesto Abra el programa y cargue la base de datos utilizada en el laboratorio 4 Credit_Lab4_bif y genere

    al menos dos clasificaciones de clster, siendo luego evaluados con (Average) Silhouette y

    Cophenetic Correlation Coefficient. Los operadores de clasificacin de Clster utilizados en el

    Anexo son K-Means y Agglomerative clustering.

    (1) El set de datos con missing labels fue filtrado para que los cluster sean calculados con los

    datos que si se conocen su Label.

    (2) Los Operadores de clasificacin de cluster, como K-Means, no permiten atributos

    binomiales , por lo tanto es necesario transformarlos a numricos (Nominal to Numerical)

    (3) Multiply para permitir procesos distintos con la misma muestra.

  • Business Intelligence y Data Mining

    Profesor: David Daz., PhD.

    Ayudante: Matas Bastidas, Fabio Salinas

    25

    (4) El primer clster es K-Means siendo conectado al performance measurement llamado Average Silhouette.

    (5) El segundo cluster propuesto es agglomerative clustering conectado con Cophenetic Correlation Coefficient. Este performance Measuremente necesita adems como input el operador data to similarity.

    Silhouette promedio Crea un indicador de calidad de anlisis de clster en el rango -1 a 1. Mientras ms cercana a uno

    positivo sea ste indicador, mejor ha sido la clasificacin. La lgica detrs del indicador revisa la

    homogeneidad de los grupos creados, corrigiendo adems por la heterogeneidad inter-clsters y

    el ratio de tamao de los grupos creados. Ms info en:

    http://en.w ikipedia.org/wiki/Silhouette_(clustering)

    Data to Similarity Calcula una medida de similitud entre la data. Este operador es un input necesario para el

    operador cophenetic correlation coefficient.

    Cophenetic Correlation Coefficient (CPCC) Este operador calcula el coeficiente de correlacin cofonetica. La lgica detrs de este operador

    es calcular un coeficiente que refleje la correlacin entre la matriz de distancias original de los

    datos, y la matriz cofontica, la cual muestra las distancias entre los centroides lo de los clsters

    creados. Al igual que una correlacin normal, mientras ms cercado a 1 sea el valor, mayor ser la

    relacin o similitud entre los resultados del anlisis de clsters y los datos originales, lo que

    representa un clstering exitoso. Ms info en:

    http://people.revoledu.com/kardi/tutorial/Clustering/Cophenetic.htm

    http://en.wikipedia.org/wiki/Silhouette_(clustering)http://people.revoledu.com/kardi/tutorial/Clustering/Cophenetic.htm