Universidad del Valle - Escuela de Estadistica              
                       Programa Academico de:                             
   Esp. en Estadistica Aplicada, Maestria en Analitica e Int Negocios     
   Asignatura : Tecnicas de Mineria de Datos y Aprendizaje Automatico     
                         Laboratorio 4                                    
               Estudiantes: Diana Carolina Echavarria                     
                            Oscar Fernando Penafiel                    
              0. Configuracion inicial-Librerias requeridas      
              

Punto 1

Perform a full descriptive analysis about the relationship between all variables on the data frame.

Al revisar la base de datos se ajustaron los formatos, convirtiendo las variables a numéricas, excepto la variable sexo la cuál es categórica con dos niveles que corresponden a masculino y femenino

## 'data.frame':    442 obs. of  11 variables:
##  $ AGE: num  48 68 55 34 58 68 57 63 69 62 ...
##  $ SEX: Factor w/ 2 levels "1","2": 2 1 2 1 1 2 2 2 2 1 ...
##  $ BMI: num  29.2 27.5 32.1 21.2 28.1 25.7 31.6 25.5 24.5 32 ...
##  $ BP : num  110 107 113 84 111 ...
##  $ S1 : num  218 241 207 254 198 233 225 226 243 172 ...
##  $ S2 : num  151.6 149.6 92.4 113.4 80.6 ...
##  $ S3 : num  39 64 25 52 31 35 40 46 40 38 ...
##  $ S4 : num  6 4 8.28 5 6 7 6 5 6 4 ...
##  $ S5 : num  4.92 4.92 61.05 60.94 60.68 ...
##  $ S6 : num  98 90 111 92 93 105 113 87 100 100 ...
##  $ Y  : num  222 143 242 109 273 248 310 197 241 132 ...

Al revisar los datos, la población que se está analizando se encuentra entre los 19 y 79 años. Es balanceada, tiene la misma cantidad de hombres como de mujeres, y de acuerdo con el índice de masa corporal se encuentran personas que tienen un indice bajo de masa corporal hasta otras que pueden llegar a un nivel de obesidad tipo III. Finalmente, el rango de presión en la sangre se encuentra entre 62 y 133.

##       AGE        SEX          BMI              BP               S1       
##  Min.   :19.00   1:235   Min.   :18.00   Min.   : 62.00   Min.   : 97.0  
##  1st Qu.:38.25   2:207   1st Qu.:23.20   1st Qu.: 84.00   1st Qu.:164.2  
##  Median :50.00           Median :25.70   Median : 93.00   Median :186.0  
##  Mean   :48.52           Mean   :26.38   Mean   : 94.65   Mean   :189.1  
##  3rd Qu.:59.00           3rd Qu.:29.27   3rd Qu.:105.00   3rd Qu.:209.8  
##  Max.   :79.00           Max.   :42.20   Max.   :133.00   Max.   :301.0  
##        S2               S3              S4             S5        
##  Min.   : 41.60   Min.   :22.00   Min.   :2.00   Min.   : 3.912  
##  1st Qu.: 96.05   1st Qu.:40.25   1st Qu.:3.00   1st Qu.:40.817  
##  Median :113.00   Median :48.00   Median :4.00   Median :44.659  
##  Mean   :115.44   Mean   :49.79   Mean   :4.07   Mean   :41.337  
##  3rd Qu.:134.50   3rd Qu.:57.75   3rd Qu.:5.00   3rd Qu.:49.345  
##  Max.   :242.40   Max.   :99.00   Max.   :9.09   Max.   :61.048  
##        S6               Y        
##  Min.   : 58.00   Min.   : 25.0  
##  1st Qu.: 83.25   1st Qu.: 87.0  
##  Median : 91.00   Median :140.5  
##  Mean   : 91.26   Mean   :152.1  
##  3rd Qu.: 98.00   3rd Qu.:211.5  
##  Max.   :124.00   Max.   :346.0

Visualización de datos faltantes:

Como se muestra en el gráfico, ninguna variable presenta datos faltantes.

Visualizacion general de la Variable Respuesta

Al analizar la distribución de la variable respuesta, se observa que esta presenta una ligera asimetria positiva, en este caso no se evidencian datos atípicos.Hay pocos casos que superan los 300 o estan por debajo de 50. y la mediana es de 140 aproximadamente.

Relacion bivariada con la variable respuesta

El análisis de la relación vibariada con la variable respuesta, muestra que el género no influye en el comportamiento referente a Y. En las gráficas, las únicas variables que muestran una tenue relación con la variable a predecir Y son: BMI que tiene una relación positiva y la muestra S3 que tiene una relación inversa con Y. Las demás variables no muestran una clara relación.

## [[1]]
## NULL
## 
## [[2]]
## NULL
## 
## [[3]]
## NULL
## 
## [[4]]
## NULL
## 
## [[5]]
## NULL
## 
## [[6]]
## NULL
## 
## [[7]]
## NULL
## 
## [[8]]
## NULL
## 
## [[9]]
## NULL
## 
## [[10]]
## NULL

Relacion bivariada con todas las variables cuantitativas

Al revisar el análisis de los datos frente a todas las variables cuantitativas, se evidencia que para el caso de la variable S5 se identificaron valores atípicos los cuales corresponden a valores menores que 32,58 por lo que se procede a eliminarlos del análisis.

Matriz de correlacion - todas las variables cuantitativas

La revisión de las correlaciones, una vez eliminados los datos atípicos, muestran que las variables mas correlacionadas con la variable a predecir son: De forma positiva, BMI (60%). S5 (57%) y BP (46%) y de forma negativa S3 (41%).

Entre las variables s2 y s1 se observa una alta correlación positiva del 90% y entre las variables s3 y s4 se observa una correlación negativa del 75%, lo que puede ocacionar problemas de multicolinealidad en el modelo de regresión.

Visualizacion Multivariada apoyada en Componentes principales.

Al revisar los componentes 1 y 2 que recogen el 59.1% de la varianza, se vuelve a confirma que las variables de S1 y S2 estan correlacionadas y que la observación 142 tiene altos valores de estas variables, por otro lado, las variables BMI, BP y Y estan correlacionadas entre sí, entre estos individuos algunos que destacan son el 181 y el 50. Por último, así como se vio en las correlaciones, S3 es la univa variable que tiene una relación negativa con todas las variables, excepto S1 en la que la relación es casi 0.

Punto 2

Use the exploratory analysis performed in (i) to make a first selection of variables potentially related to disease´s progression (y)

El análisis descriptivo, permite inferir que unas variables destacan por encima de las demas al momento de explicar la progresión de la diabetes. La principal variable relacionada es BMI en la que se idifica que entre mayor indice de BMI mayor es la progresión de la diabetes. Un caso similar se encuentra relacionado con la variable S5 que muestra una correlación positiva en el progreso de la diabetes del 57% y por ultimo se encuentra BP ya que a mayores valores de presión sanguinea, el progreso de la diabetes es aumenta. Adicionalmente, como factores que reducen la progresión de la diabetes se tiene a la variable S3 con una correlación del -41%.

Punto 3

Train and compare, through cross-validation, the models seen in class for the regression problem.

Modelo de regresión lineal múltiple - selección de variables

Este modelo presenta un R-cuadrado ajustado del 52,15% en el que se puede evidenciar que el modelo encuentra 6 variables significativas, de las cuales las más relevantes son: BMI y BP con significancia del 99,9 % y Sex==2con significancia del 99% Adicionalmente, encuentra relevantes las s4 y S5 con un nivel inferior al 99%.

De estas variables encontramos que BMI, BP, S5 y S4 influyen incrementando el progreso de la diabetes, por el contrario, pertenecer al sexo 2 genera menos progreso de la diabetes respecto al sexo 1.

## 
## Call:
## lm(formula = formula, data = Base.tr)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -155.862  -35.370    0.248   37.594  133.963 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -286.22511   87.22568  -3.281 0.001154 ** 
## AGE            0.03891    0.25450   0.153 0.878593    
## SEX2         -22.04803    7.16793  -3.076 0.002291 ** 
## BMI            6.02339    0.82231   7.325  2.2e-12 ***
## BP             1.06182    0.27028   3.929 0.000106 ***
## S1            -0.60653    0.87397  -0.694 0.488220    
## S2             0.09600    0.83461   0.115 0.908505    
## S3            -0.08884    1.08878  -0.082 0.935020    
## S4            11.98525    7.12805   1.681 0.093718 .  
## S5             5.03137    2.11484   2.379 0.017979 *  
## S6             0.13269    0.33255   0.399 0.690164    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 53.86 on 301 degrees of freedom
## Multiple R-squared:  0.5369, Adjusted R-squared:  0.5215 
## F-statistic:  34.9 on 10 and 301 DF,  p-value: < 2.2e-16

Para estudiar las variables que pueden generar multicolinealidad al modelo, se revisa la inflación de la varianza que tienen las variables. En el siguiente gráfico se puede observar que las variables que presentan mas inflación son S1 y S2, lo cual puede indicar cierto nivel de multicolinealidad que puede estar relacionado con la correlación vista anteriormente.

Para descartar las variables que pueden estar generando multicolinealidad, se utilizará el modelo backward que eliminará las variables que no aportan información adicional al modelo.

Modelo de regresión lineal múltiple - método Backward

Este modelo presenta un R-cuadrado ajustado del 52,73% que no es significativamente superior al modelo saturado.

Este modelo encuentra que las variables que ayudan a explicar la varianza de Y son SEX==2, BMI, BP, S1,S4 y S5, todas con nivel de confianza por encima del 99%.

A pesar de que el R-cuadrado no mejora significativamente con este modelo, si se obtiene una reducción en su complejidad siendo este la mejor opción por el principio de parsimonia.

## 
## Call:
## lm(formula = Y ~ SEX + BMI + BP + S1 + S4 + S5, data = Base.tr)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -156.184  -34.675    0.042   37.196  134.421 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -285.5375    32.5621  -8.769  < 2e-16 ***
## SEX2         -21.3881     7.0168  -3.048 0.002504 ** 
## BMI            6.0964     0.8022   7.600 3.68e-13 ***
## BP             1.0910     0.2606   4.187 3.70e-05 ***
## S1            -0.5476     0.1143  -4.791 2.59e-06 ***
## S4            13.8307     3.6148   3.826 0.000158 ***
## S5             4.9534     0.8511   5.820 1.49e-08 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 53.54 on 305 degrees of freedom
## Multiple R-squared:  0.5365, Adjusted R-squared:  0.5273 
## F-statistic: 58.83 on 6 and 305 DF,  p-value: < 2.2e-16

Al graficar los valores observados vs los predichos con este modelo, se encuentra que para los valores pequeños, el modelo sobre-estima sus predicciones, por el contrario, cuando los valores tienden a ser grandes, el modelo los sub-estima, pero mantiene cierta tendencia de los datos en el que los valores del centro se ajustan se pueden predecir con una menor tasa de error.

PLS 1

De acuerdo con el siguiente gráfico, el número de componentes a seleccionar que logran el menor RMSEP es 2. Estos componentes me explican el 52,87% de la varianza de Y

## Data:    X dimension: 312 10 
##  Y dimension: 312 1
## Fit method: kernelpls
## Number of components considered: 8
## 
## VALIDATION: RMSEP
## Cross-validated using 10 random segments.
##        (Intercept)  1 comps  2 comps  3 comps  4 comps  5 comps  6 comps
## CV              78    60.05    54.93    54.87    55.09    55.14    55.27
## adjCV           78    60.02    54.85    54.78    54.98    55.02    55.14
##        7 comps  8 comps
## CV       55.25    55.23
## adjCV    55.13    55.10
## 
## TRAINING: % variance explained
##    1 comps  2 comps  3 comps  4 comps  5 comps  6 comps  7 comps  8 comps
## X    38.47    52.05    64.29    71.98    80.85    85.53    89.55    94.68
## Y    41.98    52.87    53.50    53.57    53.60    53.64    53.65    53.66

En el siguiente gráfico se muestra la relevancia de las variables: entre las mas importantes se encuentra BMI, BP y S5, la variable que menos aporta al modelo es SEXO

En siguiente gráfico muestra los coeficientes de las variables, en el se puede observar que la variable con un mayor aporte al progreso de la diabetes es BMI y S5 y la variable que reduce el progreso de la diabetes es S3.

En este gráfico se puede observar cómo están relacionadas las variables, como se puede evidenciar en los análisis anteriores, las variables S1 y s2 se encuentran muy correlacionadas, al igual que BP y BMI y por otro lado, el comportamiento de S3 tiene un es contrario a las demás variables.

Al graficar los valores observados vs los predichos con este modelo, se observa que respecto al modelo anterior no se muestra un mayor ajuste. En este modelo también se encuentra que para los valores pequeños, el modelo sobre-estima sus predicciones, por el contrario, cuando los valores tienden a ser grandes, el modelo los sub-estima, pero mantiene cierta tendencia de los datos en el que los valores del centro se ajustan se pueden predecir con una menor tasa de error.

Arbol de decisión

El arbol se construyó a partir de 312 registros en que se obtiene un root node error de 6044.4.este es el porcentaje de los registros ordenados correctamente en el primer nodo de división.

## 
## Regression tree:
## rpart::rpart(formula = formula, data = Base.tr, control = rpart.control(cp = 1e-04))
## 
## Variables actually used in tree construction:
## [1] AGE BMI BP  S1  S2  S3  S4  S5 
## 
## Root node error: 1885837/312 = 6044.4
## 
## n= 312 
## 
##            CP nsplit rel error  xerror     xstd
## 1  0.32075271      0   1.00000 1.00150 0.062232
## 2  0.10546993      1   0.67925 0.77517 0.059671
## 3  0.04404328      2   0.57378 0.68776 0.051843
## 4  0.02472223      3   0.52973 0.66083 0.051286
## 5  0.02416087      4   0.50501 0.66501 0.051352
## 6  0.01590361      5   0.48085 0.65457 0.049860
## 7  0.01459606      6   0.46495 0.64207 0.048591
## 8  0.01161353      7   0.45035 0.65412 0.049591
## 9  0.01156436     10   0.41551 0.64633 0.048756
## 10 0.01111851     11   0.40395 0.64135 0.048668
## 11 0.01013351     12   0.39283 0.65653 0.048560
## 12 0.00948384     13   0.38269 0.64855 0.049171
## 13 0.00787993     14   0.37321 0.66894 0.052652
## 14 0.00656262     17   0.34957 0.67913 0.053272
## 15 0.00577272     18   0.34301 0.68281 0.055780
## 16 0.00411533     19   0.33724 0.67788 0.056140
## 17 0.00351393     20   0.33312 0.68175 0.055968
## 18 0.00351295     21   0.32961 0.68517 0.056194
## 19 0.00316891     22   0.32609 0.68864 0.056527
## 20 0.00098705     23   0.32292 0.68888 0.056928
## 21 0.00010000     24   0.32194 0.68864 0.056815

El siguiente gráfico muestra el árbol sin realizar el proceso de poda, la profundidad de este es de 7. En este árbol se puede observar que la primera variable que utiliza para realizar las predicciones es S5, seguido de BMI. A partir de este punto, otras variables empiezan a utilizarse como es el caso de BP.Finalmente, el modelo evalua 8 variables de las 10 posibles; se eliminaron las variable Sexo y S6.

Al realizar la poda del árbol se obtiene uno menos complejo con una profundidad de 6, sin embargo, el modelo toma las mismas variables para realizar sus predicciones.

Al graficar los valores observados vs los predichos con este modelo, se observa que los valores predichos se comportan de forma escalonada, podemos notar que una posible desventaja es que para rangos muy amplios en los valores observados, el modelo predice un único valor para todo este rango, a pesar de ello, recoge levemente la tendencia de los valores observados.

KNN

El modelo de KNN se construyó con un valor de K que se encuentra en 13 el cual genera que el Rsquared sea el más alto.

##   model parameter      label forReg forClass probModel
## 1   knn         k #Neighbors   TRUE     TRUE      TRUE

Al graficar los valores observados vs los predichos con este modelo, se observa que el modelo no recoge la tendencia de los datos y es en los valores extremos en donde mas se aleja de los datos reales.

SVM

Al correr el modelo con los mejores hiperparámetros, se observa que el numero de soportes utilizados fue de 259. Al graficar los valores observados vs los predichos con este modelo, se observa que recoge la tendencia de los datos, en los valores mas pequeños logra ajustarse con mejor precisión a los valores observados. Sin embargo, en los valores centrales este modelo subestima la predicción de la variable Y.

## 
## Call:
## best.tune(method = svm, train.x = Base.tr[, -c(2, 11)], train.y = Base.tr[, 
##     11], ranges = list(epsilon = seq(0.1, 0.5, 0.05), cost = 2^(0:5)))
## 
## 
## Parameters:
##    SVM-Type:  eps-regression 
##  SVM-Kernel:  radial 
##        cost:  1 
##       gamma:  0.1111111 
##     epsilon:  0.15 
## 
## 
## Number of Support Vectors:  259

Random Forest

A partir del siguiente gráfico se determina que el mejor hiperparámetro de mtry es de 2 que es donde se alcanza el mejor Rsquared.

##   model parameter                         label forReg forClass probModel
## 1    rf      mtry #Randomly Selected Predictors   TRUE     TRUE      TRUE

Las variables mas importantes que encuentra el modelo para realizar las predicciones son: BMI, S5, BP, por el contrario la edad y el sexo no muestran mayor relevancia en los resultados.

Al graficar los valores observados vs los predichos con este modelo, se encuentra que al igual que el modelo de regresión lineal múltiple y LPS1 para los valores pequeños, el modelo sobre-estima sus predicciones, por el contrario, cuando los valores tienden a ser grandes, el modelo los sub-estima, pero mantiene cierta tendencia de los datos en el que los valores del centro se ajustan y se pueden predecir con una menor tasa de error.

Punto 4

Discuss the advantages and disadvantages of each trained model

Al comparar la bondad de ajuste que tiene el modelo, se puede observar que el de mejor desempeño visto desde Rsquared es el modelo de árbol de Máquina de Soporte Vectorial (66.5%) seguido de el arbol de decisión (66.3%), por el contrario, los de más bajo desempeño son KNN (43,2%) y Random Forest (45.9%).

Si se quisiera elegir un modelo que permita identificar las razones por las cuales se genera una progresión de la diabetes entonces se debería elegir un modelo que permita tener algún tipo de interpretación, en este caso se podría obtar por el arbol de decisión o el regresión lineal múltiple los cuales en el caso del primero permite identificar las variables más importantes para predecir y en el caso del segundo se puede observar el impacto positivo o negativo del progreso de la enfermedad a través de sus coeficientes.

Por el contrario, si se elige un modelo en el que el principal foco sea estimar con precisión el valor del progreso de la diabetes se puede optar por un modelo menos interpretativo como lo es el caso de la Máquina de soporte vectorial el cuál presenta mejores indicadores de Rquared y de un índice de concordancia ICC.

En conclusión, al ser el árbol de decisión un modelo que tiene una parte interpretativa y que se desempeña con buenos resultados en su bondad de ajuste, sería un modelo mas equilibrado en terminos de predicción e interpretación de resultados.

##      Rsquared   ICC
## MRL     0.536 0.698
## PLS     0.529 0.692
## tree    0.663 0.797
## knn     0.432 0.549
## svm     0.665 0.793
## RF      0.459 0.609

Graficos de los Prónosticos con los datos de prueba

Conclusiones de evaluación de modelos con los datos de Prueba

##      Rsquared   ICC
## lm      0.506 0.696
## PLS     0.505 0.505
## tree    0.249 0.568
## knn     0.349 0.493
## svm     0.449 0.640
## RF      0.478 0.637

Al comparar la bondad de ajuste que tiene el modelo con los datos de prueba, se encuentra que el modelo de mejor desempeño visto desde el rsquared es el modelo de regresión lineal múltiple (50.60%) , seguido por PLS1 (50.50%).Por el contrario, los de más bajo desempeño son Arbol de decisión (24,90%) y knn (34.90%).

Contrario a lo que vimos con los datos de train, se infiere que el modelo de árbol de decisión presenta un sobreajuste ya que su rendimiento disminuye notablemente cuando se ejecuta con los datos de test. Los modelos de SVM y Random Forest tienen un desempeño promedio de al rededor del 45% por lo tanto ya no cobra relevancia para predecir nuevas observaciones frente a otros modelos.

Si se quisiera elegir un modelo que permita identificar las razones por las cuales se genera una progresión de la diabetes entonces se debería elegir un modelo que permita tener algún tipo de interpretación, en este caso se deberia escoger el modelo de regresión lineal múltiple que permite medir el impacto positivo o negativo del progreso de la enfermedad a través de sus coeficientes. Por el contrario, si no es de importancia la interpretabilidad del modelo, se recomendaría utilizar el PSL el cual tiene el mismo desempeño.

En conclusión, el desempeño de los modelos se vio seriamente desmejorado cuando se realizan predicciones con nueva información, lo que nos deja pronósticos con una precisión menor al 50%. Los dos mejores modelos son Regresión Lineal Múltiple y PSL1. La decisión de cuál se implemente dependerá de si se requiere o no su interpretabilidad.