Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Segunda Entrega Reqwuerida

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 12

Proyecto Semestral

Curso: “Inteligencia de Negocios”

Profesores: John Atkinson, Sebastián Moreno, Gonzalo Ruz


Fecha Publicación: 31 de Agosto de 2018
Análisis de clusters.
Objetivo:

El objetivo de este entregable es entender los conceptos básicos de las técnicas de


clustering para un problema sencillo utilizando el lenguaje R.

Descripción:

El departamento de Recursos Humanos de YELP requiere determinar si existe algún tipo


de agrupación particular en los datos obtenidos. Para lo cual le pide un informe con los
siguientes puntos:

1. Seleccione, justificadamente, las variables pertinentes y determine el mejor número


de clusters que se puede obtener utilizando el método K-means. Debe utilizar la
medida de “Total within-clusters sum of squares” y entregar el gráfico asociado,
justificando las decisiones tomadas (considere un número de iteraciones máxima de
100). Además, analice los clusters generados y determine si existe algún cluster
relevante.

Dada la poca cantidad de variables cuantitativas que presenta la base es que hemos
decidido trabajar solo con las binarias, es decir las que cumplirán con lo mencionado (a las
que asignaremos el valor 1) y las que no cumplen (a quienes les daremos el valor 0).
Algunas que pueden agruparse, por ejemplo el tipo de alcohol, en donde podríamos juntar
los distintos tipos en el número 1, y las respuestas sin alcohol con el valor 0. Solo
consideraremos las variables cualitativas que podamos transformar a binarias, ya que
algunas que se presentan tienen infinidad de posibles respuestas, por lo que no tendría
sentido categorizar, esto para variables como id, nombre de la calle, nombre del
restaurante, estado, entre otras más. Finalmente estas serán las variables a transformar
en binarias:

Acá False será 0, True 1, para la variable abierto


En este agruparemos beer and wine con full bar y faltantes en 1, none lo dejaremos en
0,para la variable alcohol

Acá agruparemos loud y very loud y faltantes en 1, mientras que average y quiet en 0,
para la variable ruido

La variable atuendo dejaremos 1 para casual y faltantes, mientras que dressy y formal
colocaremos 0

Tendra un 1 si tiene delivery, mientras que 0 si no tiuene

Tendrá un 1 la variable fumador si corresponde a yes, outdoor y faltantes, mientras que 0


si no

Si tiene espacio al aire libre es decir true, será 1, si es false será 0


Para la variable caters será 1 si es true, mientras que 0 si es false

Si es bueno para grupos será 1 (true) de lo contrario 0 (false)

Si es bueno para niños será 1 (true) de lo contrario 0 (false)

Como en esta parte del trabajo utilizaremos solo las binarias, no tenemos la necesidad de
transformarlas, ni estandarizarlas, dado que están en la misma escala, al ver el número de
cluster óptimos para nuestras variables vemos lo siguiente:
Se aprecia que hasta el 4° codo hay cambios bruscos, mientras que luego de este se
estabiliza, por lo que realizaremos 4 clusters.

Al realizarlo obtenemos lo siguiente:

CLUSPLOT( caso3.1 )
30
20
Component 2

10
0

-30 -20 -10 0

Component 1
These two components explain 75.81 % of the point variability.

Podemos ver los 4 grupos, aunque hay dos claramente definidos (los que están
encerrados en azul y rosado).

2. Seleccione, justificadamente, las variables las pertinentes y determine un buen set de


parámetros para aplicar el método DBSCAN (pruebe con diversos valores de eps y
minpts). Además, analice los clusters generados y determine si existe algún cluster
relevante.

Seguiremos trabajando con las variables cuantitativas definidas anteriormente,

Para eps=0.4 and MinPts=4, tenemos:


Para eps=0.8 and MinPts=8, tenemos:
Para eps=0.1 and MinPts=10, tenemos:

Vemos que en todos la distribución de los datos es más menos la misma que la definida
para los 4 cluster, y vemos dos cluster relevantes, los inferiores que están perfectamente
divididos entre ellos.

3. Seleccione, justificadamente, las variables las pertinentes, elija alguna medida de


similaridad/distancia y aplique el algoritmo de clustering jerárquico aglomerativo
utilizando las 3 medidas de distancia existentes (single, complete y average linkage).
Analice los 3 dendrogramas, seleccione uno de ellos y determine el número de cluster
correspondientes. Además, analice los clusters generados y determine si existe algún
cluster relevante.

Seguimos con las mismas cuntitativas, R no permite arar los vectores con la base asociada
YELPdata, esto debido a la gran cantidad de valores que tiene como para armar los grupos.

4. Seleccione, justificadamente, las variables las pertinentes y determine el mejor


número de clusters que se puede obtener utilizando el método C-means. Debe utilizar
la medida de “Total within-clusters sum of squares” y entregar el gráfico asociado,
justificando las decisiones tomadas (considere un número de iteraciones máxima de
100). Además, analice los clusters generados y determine si existe algún cluster
relevante.
Al utilizar c-means podemos ver los siguientes grupos:

Podemos ver una clara diferenciación entre los 4 grupos, mediante c-means.

5. Dado todos los clusters generados en las preguntas previas, ¿qué método
recomendaría para el análisis de estos datos? ¿Qué información relevante detectó de
los clusters generados?

Recomendaría k-means, dado que se puede ver de una mejor manera y más amigable, los
grupos formados, también gracias al gráfico de codos generados se aprecia cuantos
cluster son los ideales, aunque viendo en detalle el gráfico podemos identificar 2 grandes
grupos en vez de los 4 que se mencionan en el gráfico de codos.

Esta parte del proyecto consiste de dos entregas:

1) Informe: Un reporte respondiendo a cada una de las preguntas requeridas.


2) Código: 4 scripts (1 por cada problema), debidamente comentados, que apliquen
los modelos mencionados osbre los datos correpsondientes.

La fecha de entrega será el Domingo 14 de octubre a las 11:55 PM a través de Webcursos.

Evaluación del informe.

La nota final de cada alumno se determinará por:

Nota Informe = MIN(Ind, Ind*0,8 + Grp*0,2)

Ind corresponde a la nota individual. Dado que cada integrante estará a cargo de un
modelo en particular, esta nota corresponde a la selección de variables, aplicación del
modelo, conclusiones personales, y el código respectivo de su modelo.

Grp corresponde a la nota de la parte grupal (punto 5).


Predicción de variables.
Objetivo:

El objetivo de este entregable es entender los conceptos básicos de las técnicas de


predicción para un problema sencillo utilizando el lenguaje R.

Descripción:

El departamento de Recursos Humanos de YELP requiere determinar si es posible predecir


si un lugar NO es bueno para ir en grupo (variable goodForGroups). Para ello, se debe
entregar un informe con la siguiente organización:

1. Introducción: Descripción general del problema y síntesis general de resultados


obtenidos.
2. Descripción y Preparación de los Datos:
a. Descripción: Describir los datos adquiridos, incluyendo el formato de los
datos, descripción de las variables, distribución de datos por variable, y
algún otro aspecto relevante detectado en los datos.
b. Exploración: Análisis preliminar de datos con técnicas de visualización y
medidas de relación entre variables. Esto podría incluir distribución de
variables relevantes, relaciones entre variables, agregación de variables,
propiedades de sub-poblaciones y análisis estadísticos simples. En este
análisis inicial, se debe entregar las primeras observaciones de los datos.
c. Análisis de Calidad: Describir todo tipo de problema detectado con los
datos (ej. datos incompletos, datos erróneos, frecuencia de los errores,
etc).
d. Selección: Decidir en base a los puntos anteriores, las variables y datos que
se utilizarán en este proyecto, junto con su justificación.
e. Limpieza: Reportar las soluciones tomadas para mejorar los problemas de
calidad de datos detectados previamente (ej. eliminación de datos,
predicción de valores faltantes).
f. Construcción de variables: Generar nuevas variables que permitan mejor
efectividad de la solución al problema, en caso de ser necesario.
3. Modelamiento del Problema:
a. Seleccionar la técnica de modelado: cada integrante del grupo seleccionará
y se hará responsable de aplicar una de las siguientes técnicas de
clasificación: regresión logística, árboles de decisión, SVM, Naive Bayes,
K-NN, K-means, DBSCAN, Clustering Jerárquico, Fuzzy C-means. No se
permiten alumnos dentro del mismo grupo con la misma técnica. En caso
de aplicar un algoritmo de clusterización, se deberá aplicar un proceso de
clasificación posterior.
El informe final deberá explicar los modelos utilizados por cada integrante,
junto a sus ventajas y desventajas.
b. Diseñar el test del modelo: Antes de entrenar el modelo, se debe crear un
mecanismo para verificar que los modelos entrenados no se sobre-
entrenen (over-fitting). Para esto, debe implementar algunas de las
técnicas vistas en clases para evaluación de modelos.
c. Creación de modelos: Cada integrante del grupo, deberá describir y
justificar el proceso de entrenamiento de su propio modelo. Además, se
deberá entregar y explicar los parámetros aprendidos de cada modelo.
4. Evaluación de Resultados:
a. Evaluación de modelos: Se deberá evaluar cada modelo entrenado en base
al test diseñado en 3.b, interpretar los resultados obtenidos y justificar los
resultados obtenidos. Finalmente, cada integrante deberá comparar sus
resultados con los de sus compañeros de grupo, de modo de seleccionar el
modelo que mejor represente al grupo. Este modelo seleccionado será el
que se aplicará a los datos de evaluación (archivo
“yelpEvaluation.csv”).

Esta parte del proyecto consiste de tres entregas:

1) Informe: Un informe con los requerimientos detallados previamente.


2) Código: 5 scripts (1 por cada problema y el de comparación de resultados),
debidamente comentados, que apliquen los modelos mencionados sobre los
datos correspondientes.
3) Evaluación en un set de datos: Evaluación del modelo final para el conjunto de
datos que se proporcionó (archivo “yelpEvaluation.csv”). Este archivo
contendra únicamente 1844 valores, un valor por linea. Cada valor podrá ser 0 ó 1,
donde 1 representa un valor TRUE (predicción good for groups), y 0 representa un
valor FALSO (predicción NOT good for groups).

La fecha de entrega será el Domingo 25 de noviembre a las 11:55 PM a través de


Webcursos.
Evaluación de los proyectos.

La nota final Los grupos se componen de cuatro estudiantes. La nota del proyecto es una
combinación de nota grupal y nota individual, determinada por:

Nota Proyecto = MIN(Ind; Int * 0.1 + E1*0,1 + Ind*0,5 + Com*0,3)

Int corresponde a la introducción del proyecto.

E1 corresponde a la corrección del primer informe proyecto, correspondiente al punto 2


actual.

Ind corresponde a la nota individual. Dado que cada integrante estará a cargo de un
modelo en particular, esta nota corresponde al punto 3, y el código respectivo de su
modelo.

Com corresponde a la evaluación de resultados (punto 4) y nota de competencia. Para


esto, se competirá entre todos los grupos del curso y se asignará un puntaje en base a los
resultados obtenidos por cada grupo. El mejor grupo obtendrá el total del puntaje, y se irá
bajando según los resultados de cada grupo. La medida de evaluación de cada grupo
estará basada en el F1-score.

La nota final del proyecto esta dada por:

inf1 * 0.2 + inf2 * 0.3 + inf3*0.5,

Donde infi corresponde al i-ésimo informe entregado.

También podría gustarte