Logo Studenta

Clusstering_computacional

¡Este material tiene más páginas!

Vista previa del material en texto

APRENDIZAJE COMPUTACIONAL
Taller Clustering WEKA
Presentado por:
Sebastián Ricardo Cárdenas
Roosevelt Daniel Santos Vanegas
Presentado a:
OSWALDO ENRIQUE VELEZ LANGS
Universidad de Córdoba
Facultad de Ingeniería
Ingeniería de Sistemas
Montería - 2023
En esta parte del documento realizado por Sebastián Ricardo Cárdenas se mostrarán los resultados obtenidos
Siguiendo la metodología CRISP-DM, constamos de 6 fases para llevar a cabo la minería de datos:
Se realiza esto para el caso de “clustering” de “K-means”:
Comprensión del Negocio: 
Para este caso en particular se debe saber que cliente deja una compañía a favor de otra compañía, a esto se le llama “Churn”. De estos clientes, se toma una muestra y se obtienen varios datos de los cuales algunos podrían darnos la información para intentar predecir o clasificar que clientes son más propensos a cometer “Churn” o no.
Comprensión y Recopilación de datos:
Los datos los recolectados en este caso son los siguientes, de los cuales algunos podrían ser considerados relevantes para este proyecto. 
Los siguientes son los datos en su totalidad
1. Estado: variable discreta que indica el estado donde vive el cliente.
2. Duración de la cuenta: variable entera que indica cuánto tiempo ha estado activa la cuenta. 
3. Código de área. 
4. Número de teléfono. 
5. Plan Inter: variable binaria que indica si el cliente tiene un plan internacional.
6. Plan de correo de voz: variable binaria que indica si el cliente tiene un plan de correo de voz. 
7. No of Vmail Mesgs: variable entera que indica el número de mensajes de correo de voz
8. Total Day Min: variable continua que indica la cantidad de minutos que el cliente usó el servicio durante el día. 
9. Total Day Calls: variable entera que indica el número de llamadas durante el día. 
10. Cargo Total Día: variable continua que indica cuánto se cobró por utilizar el servicio durante el día. 
11. Total Evening Min: variable continua que indica el número de minutos que el cliente usó el servicio durante la noche. 
12. Total de llamadas vespertinas: variable entera que indica el número de llamadas durante el horario vespertino.
13. Cargo Total Vespertino: variable continua que indica cuánto se cobró por usar el servicio durante el tiempo de la tarde. 
14. Total Night Min: variable continua que indica el número de minutos que utilizó el cliente el servicio durante la noche. 
15. Total de Llamadas Nocturnas: variable entera que indica el número de llamadas en horario nocturno. 
16. Cargo Total Nocturno: variable continua que indica cuánto se cobró por usar el servicio durante la noche.
17. Total Int Min: variable continua que indica la cantidad de minutos que el cliente usó el servicio para realizar llamadas internacionales.
18. Total Int Calls: variable entera que indica el número de llamadas internacionales.
19. Total Int Charge: variable continua que indica cuánto se cobró llamadas internacionales. 
20. Nº de Llamadas Atención al Cliente: variable entera que indica el número de llamadas a servicio de atención al cliente.
21. Churn: variable de clase binaria.
Los datos que se usaran en este caso serán los siguientes, ya que estos aportaran información relevante a la clasificación:
1. Estado: variable discreta que indica el estado donde vive el cliente. SIRVE
2. Duración de la cuenta: variable entera que indica cuánto tiempo ha estado activa la cuenta. 
3. Código de área.
4. Plan Inter: variable binaria que indica si el cliente tiene un plan internacional. 
5. Plan de correo de voz: variable binaria que indica si el cliente tiene un plan de correo de voz.
6. Total Day Min: variable continua que indica la cantidad de minutos que el cliente usó el servicio durante el día.
7. Total Day Calls: variable entera que indica el número de llamadas durante el día.
8. Cargo Total Día: variable continua que indica cuánto se cobró por utilizar el servicio durante el día.
9. Total de llamadas vespertinas: variable entera que indica el número de llamadas durante el horario vespertino.
10. Cargo Total Vespertino: variable continua que indica cuánto se cobró por usar el servicio durante el tiempo de la tarde.
11. Total Night Min: variable continua que indica el número de minutos que utilizó el cliente el servicio durante la noche.
12. Cargo Total Nocturno: variable continua que indica cuánto se cobró por usar el servicio durante la noche.
13. Total Int Min: variable continua que indica la cantidad de minutos que el cliente usó el servicio para realizar llamadas internacionales.
14. Total Int Calls: variable entera que indica el número de llamadas internacionales.
15. Total Int Charge: variable continua que indica cuánto se cobró llamadas internacionales.
Una hipótesis que se puede hacer en este caso es la siguiente:
“Si el cliente tiene menor cantidad de minutos en llamada y no tiene plan de llamadas es posible que no haga Churn”
Tenemos en cuenta los datos 5 y 6 para demostrar la veracidad de esta hipotesis
Preparación de los datos:
Para preparar los datos, se suprimirán los atributos que sobran de la selección anterior
Se presiona “Remove “para que estos atributos sean eliminados.
Queda de esa forma, con esa cantidad de atributos.
Modelado:
Una vez preparados los datos, se procede a hacerse el proceso de clustering K-means para comenzar la clasificación.
En este apartado podemos usar varias configuraciones, con en los próximos casos para generar algunos modelos con distintos “Clusters” que llamaremos con la letra k.
Para k = 2 y con 500 iteraciones:
Con k = 2 y con 1000 iteraciones: 
Cambiando k = 4 con 1000 iteraciones:
Teniendo a k = 5 con 1000 iteraciones:
En cada modelo que se generó, arroja un valor llamado ”sum of squared errors” el cual llamaremos SSE. 
Se observó el siguiente comportamiento: Entre mayor sea el valor de k, el índice SSE que arrojan los modelos va a tender a bajar. 
Una gráfica que podría explicar este fenómeno sería la siguiente: 
SSE vs k
Evaluación:
Tengamos en cuenta las siguientes ilustraciones:
En las siguientes graficas observamos 3 datos solapándose:
Los clústeres, el atributo que nos indica si tiene un plan móvil o no y finalmente la clase que nos indica si el cliente hace Churn o no.
De color azul están aquellos que NO hacen Churn y en su defecto, los de color rojo quienes sí
Para el primer modelo
Se aprecia que en todos los 2 clústeres hay usuarios con y sin plan de llamadas, pero se aprecia que predomina en su totalidad quienes no hacen Churn
Para el segundo modelo
Parecido al caso anterior, predomina la clase Azul, quienes corresponden a quienes no hacen Churn
Para el tercer modelo
En este caso, la cantidad de cluster aumento y se clasificó en, su mayoría, de mejor forma aquellos quienes sí hacen churn en grupos alejados de quienes no.
Se observa, además, que en el clúster 3, están quienes sí hacen churn, indistintamente de sí tienen plan o no de llamadas
Para el cuarto modelo
En este caso con 6 clústeres, se mezclaron aquellos quienes poseen y no plan de llamadas y hacen churn o no. Pero de igual forma predominan quienes no lo hacen
Ahora para el caso de los minutos gastados en llamada:
Tengamos en cuenta las siguientes ilustraciones:
En las siguientes graficas observamos 3 datos solapándose:
Los clústeres, el atributo que nos indica los minutos que usa el cliente y finalmente la clase que nos indica si el cliente hace Churn o no.
De color azul están aquellos que NO hacen Churn y en su defecto, los de color rojo quienes sí
Para el primer modelo
Para el segundo modelo
En los 2 primero casos apreciamos que los clústeres poseen una especie de distribución normal o gaussiana, donde la mayoría del cliente usan las llamadas alrededor de 175 minutos 
Para el tercer modelo
Para este modelo se aprecia como la clasificación discriminó a quienes sí hacen churn indistintamente su cantidad de llamadas.
Para el cuarto modelo
Este último modelo, nos deja ver como aquellos quienes usan más de 175 – 180 minutos de llamada tienden a hacer churn
Concluyendo de estosmodelos tenemos los siguiente:
El modelo 1 al igual que el modelo 2 al tener el mismo número de clústeres y solo variar las iteraciones tenemos resultados realmente parecidos, tanto en su índice de error SSE como en su clasificación.
El modelo 3 construyó cuatro clústeres que, en su mayoría, el cluster numero 3 discriminó a aquellos quienes sí hacían churn, dejándonos ese grupo apartado.
El modelo 4 con seis clústeres nos esparcía los datos que contenían la clase entre todas las agrupaciones que este generó
En cuanto a la hipótesis, analizando los modelos nos dejan ver que en el caso de que tengan o no plan de llamada pueden hacer churn, pero en su mayoría quienes no poseen un plan de llamadas son quienes tienden a NO hacer churn.
Por el otro lado, difiriendo de la hipótesis, quienes no hacen churn según los modelos están rondando en un uso entre 165-180 minutos de uso de llamada quienes tienden a hacer menos churn, mientras que la hipótesis planteaba quienes usaban menos minutos. 
Finalmente podemos decir que la hipótesis planteada es refutada y que podría ser reformulada como “Los clientes que tienen una cantidad de minutos promedio en llamada y no tiene plan de llamadas es posible que no haga Churn”.
En esta parte del documento realizado por Roosevelt Daniel Santos Vanegas se mostrarán los resultados obtenidos.
Siguiendo la metodología CRISP-DM, constamos de 6 fases para llevar a cabo la minería de datos:
Se realiza esto para el caso de “clustering” de “EM”:
· Comprensión del negocio.
El Churn es un término que se usa en la industria de Telecomunicaciones para decir que un
cliente deja (abandona) una compañía en favor de otra compañía. El objeto de esta parte es
desarrollar modelos que agrupen clientes cercanos a abandonar.
Se pide:
1. Realizar un análisis exploratorio de los datos: Aquí se busca encontrar asociaciones interesantes entre los atributos y formular algunas hipótesis iniciales, como p. ej. Posibles asociaciones entre los atributos y la clase, las herramientas graficas son de mucha ayuda en esta parte.
2. Construir distintos procesos de agrupamiento en KNIME/WEKA (K-medias y EM) Con cada esquema de agrupamiento usted debe describir los parámetros usados para ejecutarlo y que puede concluir del modelo mismo (sin referencia externa) y del modelo en relación a modelo(s) anterior(es) (por ejemplo, K-medias con diversos parámetros vs EM con diversos parámetros), así mismo puede comparar sus resultados versus resultados externos (la clasificación previa de los clientes, por ejemplo) usted debe también seleccionar una medida de desempeño, evaluarla y justificarla.
· Comprensión de los datos.
El data set, de una empresa de telecomunicaciones, contiene 20 atributos, más la indicación de si el cliente cometió, o no, Churn, y son cerca de 3333.
1. State: discrete variable that indicates the state where the customer lives.
2. Account Length: integer variable that indicates how long the account has been active.
3. Area Code.
4. Phone Number.
5. Inter Plan: binary variable indicating whether the customer has an international plan.
6. VoiceMail Plan: binary variable indicating whether the customer has a voice mail plan.
7. No of Vmail Mesgs: integer variable that indicates the number of voice mail messages.
8. Total Day Min: continuous variable that indicates number of minutes the customer used the service during day time.
9. Total Day Calls: integer variable that indicates the number of calls during day time.
10. Total Day Charge: continuous variable that indicates how much was charged for using the service during day time.
11. Total Evening Min: continuous variable that indicates number of minutes the customer
12. used the service during evening time
13. Total Evening Calls: integer variable that indicates the number of calls during evening time.
14. Total Evening Charge: continuous variable that indicates how much was charged for using the service during evening time.
15. Total Night Min: continuous variable that indicates number of minutes the customer used the service during night time.
16. Total Night Calls: integer variable that indicates the number of calls during night time.
17. Total Night Charge: continuous variable that indicates how much was charged for using the service during night time.
18. Total Int Min: continuous variable that indicates number of minutes the customer used the service to make international calls.
19. Total Int Calls: integer variable that indicates the number of international calls.
20. Total Int Charge: continuous variable that indicates how much was charged for international calls.
21. No of Calls Customer Service: integer variable that indicates the number of calls to customer support service.
22. Churn: binary class variable.
· Preparación de los datos.
En orden de escoger los datos pertinentes que se requieren para el ejercicio se escogieron los siguientes
1. Estado: variable discreta que indica el estado donde vive el cliente. SIRVE
2. Duración de la cuenta: variable entera que indica cuánto tiempo ha estado activa la cuenta. 
3. Código de área.
4. Plan Inter: variable binaria que indica si el cliente tiene un plan internacional. 
5. Plan de correo de voz: variable binaria que indica si el cliente tiene un plan de correo de voz.
6. Total Day Min: variable continua que indica la cantidad de minutos que el cliente usó el servicio durante el día.
7. Total Day Calls: variable entera que indica el número de llamadas durante el día. | SI 
8. Cargo Total Día: variable continua que indica cuánto se cobró por utilizar el servicio durante el día.
9. Total de llamadas vespertinas: variable entera que indica el número de llamadas durante el horario vespertino.
10. Cargo Total Vespertino: variable continua que indica cuánto se cobró por usar el servicio durante el tiempo de la tarde.
11. Total Night Min: variable continua que indica el número de minutos que utilizó el cliente el servicio durante la noche.
12. Cargo Total Nocturno: variable continua que indica cuánto se cobró por usar el servicio durante la noche.
13. Total Int Min: variable continua que indica la cantidad de minutos que el cliente usó el servicio para realizar llamadas internacionales.
14. Total Int Calls: variable entera que indica el número de llamadas internacionales.
15. Total Int Charge: variable continua que indica cuánto se cobró llamadas internacionales.
Para las hipótesis se escogerán 2 tipos de datos que serán Total nocturn charge y Total int Min para demostrar o denegar como afectan la disminución o aumento de estos atributos en sus diferentes agrupaciones con respecto al churn en los siguientes cluster modelados.
Se construirán distintos procesos de agrupamiento en KNIME/WEKA (EM) que se mostrarán a continuación.
Por primer modelo utilizamos el agrupamiento por EM y los parámetros a continuación.
Por siguiente tenemos los siguientes resultados del clustering
Para el siguiente clustering cambiaremos algunos parámetros como se vera en las siguientes pestañas.
Con estos parámetros obtenemos estos resultados a continuación
 
Por 3er clustering variamos nuevamente los parámetros como a continuación:
Según los parámetros establecidos obtenemos unos resultados como los que se mostraran a continuación.
· Evaluación.
Tomamos en cuenta los resultados realizamos la interpretación de los datos mediante los gráficos de los clustering según los atributos de interés para nuestra hipótesis la cual tiene como principal foto el Total Night Charge y el Total int Min, obtenemos las siguientes imágenes según el modelo utilizado.
En los resultados obtenidos en la prueba numero 1 observamos de manera grafica como se están realizando los clusterring en los diferentes entornos de las variables, mostrando como resultado las siguientes imágenes representativas de los datos.
Aquí se muestra como en el determinado clust 6 se concentrar una gran parte de Churn con una total night charge de alrededor de 8 a 12
En cuanto al Total Int Min vemos como sucede una situación parecida donde se ubicanlos True de churn en el clust 6 donde están resultados desde 6 Total int Min hasta 14
En los resultados obtenidos en la prueba numero 2 observamos de manera grafica como se están realizando los clusterring en los diferentes entornos de las variables, mostrando como resultado las siguientes imágenes representativas de los datos.
Observamos como en el clust numero 7 están una gran cantidad de churn con respecto al atributo a estudiar
En los resultados obtenidos en la prueba numero 3 observamos de manera grafica como se están realizando los clusterring en los diferentes entornos de las variables, mostrando como resultado las siguientes imágenes representativas de los datos.
De igual forma sucede con el atributo Total Int Min donde se agrupan muchos churn en el clust 7 donde este atributo toma unos valores anteriormente presentados desde 5.9 a 14.8 alrededor claro está.
Para concluir témenos que dependiendo de la cantidad de los cluster sucede una variación en menor o mayor medida de los datos.
Con respecto a la cantidad de los datos obtenidos podemos deducir como el mantener una alta tasa de min total aumenta la posibilidad de un churn por consiguiente según los demás gráficos en el modelo 3 la cantidad de churn en base a el cargo total nocturno fluctúa entre un cantidad media, cuando es poca no hay casi churn en el clust de mas churn y cuando aumenta mucho tampoco aumenta demasiado la cantidad de churn, en el rango donde más se encuentran es entre 6 y 13 total nocturn charge dando una alta tasa de churn.
Según nuestra hipótesis probamos que, si afectan de manera directa, sin embargo, excluimos las demás opciones como la proporcionalidad de la relación entre estos atributos y sus datos arrojados.

Continuar navegando