Proyecto DATA MINING AND BIG DATA -Universidad Galileo

Author

Francisco Gonzalez

Carnet: 24002914

Descripción del Dataset

El dataset contiene variables relacionadas con las características morfológicas de células tumorales y su diagnóstico asociado. Las variables son utilizadas para diferenciar entre dos tipos de diagnósticos: B (Benigno) y M (Maligno). Aquí está la descripción de cada variable:

1. Variables Básicas

  • id:

    • Identificador único para cada observación (paciente).

    • No tiene un papel directo en el análisis y puede ser excluido.

  • diagnosis:

    • Variable objetivo (target) que clasifica las muestras como:

      • B: Benigno.

      • M: Maligno.

    • El objetivo del análisis es predecir esta variable a partir de las características proporcionadas.

2. Características Derivadas

Las características se calculan a partir de imágenes digitalizadas de masas mamarias. Para cada una, se generan tres tipos de mediciones:

  • Mean: Promedio del atributo.

  • SE: Error estándar.

  • Worst: Valor más extremo (peor) medido.

Principales Variables
  1. radius_*:

    • Radio medio, error estándar y peor radio de las células.

    • Representa el tamaño del tumor.

  2. texture_*:

    • Variación en la intensidad de la textura en la imagen.

    • Indica irregularidades en la superficie celular.

  3. perimeter_*:

    • Perímetro medio, error estándar y peor perímetro de las células.

    • Relacionado con la forma del tumor.

  4. area_*:

    • Área media, error estándar y peor área de las células.

    • Refleja el tamaño del tumor.

  5. smoothness_*:

    • Uniformidad del contorno celular.

    • Representa qué tan suaves son las bordes de las células.

  6. compactness_*:

    • Grado de compacidad celular.

    • Relacionado con la densidad celular.

  7. concavity_*:

    • Grado de concavidad en el contorno celular.

    • Se refiere a depresiones en los bordes de las células.

  8. concave.points_*:

    • Número de puntos cóncavos en el contorno celular.

    • Relacionado con la forma de las células.

  9. symmetry_*:

    • Simetría de las células.

    • Representa cuán equilibradas son las formas celulares.

  10. fractal_dimension_*:

    • Dimensión fractal del contorno celular.

    • Describe la complejidad del contorno.

Objetivo del Análisis

El objetivo principal es desarrollar y evaluar modelos de clasificación para predecir si un tumor es Benigno (B) o Maligno (M) basándose en las características proporcionadas.

Metas específicas:

  1. Identificación de Características Relevantes:

    • Determinar qué variables tienen mayor impacto en el diagnóstico.
  2. Construcción de Modelos Predictivos:

    • Entrenar modelos como Logistic Regression, SVM, Random Forest y KNN para predecir el diagnóstico.
  3. Evaluación del Rendimiento:

    • Comparar los modelos en métricas como exactitud, sensibilidad, especificidad y precisión.
  4. Optimización de la Clasificación:

    • Seleccionar el modelo más confiable para ayudar en el diagnóstico clínico de tumores.

Contexto y Aplicación

Este análisis es útil en aplicaciones clínicas, específicamente en el diagnóstico temprano del cáncer de mama. Un modelo predictivo preciso puede:

  • Ayudar a médicos a clasificar tumores con mayor confianza.

  • Reducir la necesidad de pruebas invasivas adicionales.

  • Mejorar la atención y los resultados para los pacientes.

Análisis Exploratorio de Datos

El análisis exploratorio de datos (EDA, por sus siglas en inglés) es una etapa fundamental en cualquier proyecto de ciencia de datos, ya que permite comprender la estructura, características y relaciones de las variables dentro del dataset. En este caso, se analizan las características morfológicas de células tumorales para determinar patrones que permitan diferenciar entre tumores benignos (B) y malignos (M). Este proceso no solo ayuda a validar la calidad de los datos, sino también a identificar las variables más relevantes para el diagnóstico.

Objetivo del EDA

El objetivo del análisis exploratorio es obtener una visión general de los datos mediante:

  1. Describir las Variables:

    • Analizar las estadísticas descriptivas de las variables numéricas (media, mediana, desviación estándar, etc.) y su distribución.

    • Evaluar las frecuencias de las variables categóricas, como la variable objetivo diagnosis.

  2. Identificar Patrones y Relación entre Variables:

    • Investigar posibles correlaciones entre las variables independientes y la variable objetivo.

    • Detectar grupos o distribuciones que diferencien claramente los tumores malignos de los benignos.

  3. Visualización de Datos:

    • Usar gráficos como histogramas, gráficos de dispersión, boxplots y mapas de calor para representar visualmente la distribución y relaciones de las variables.

    • Examinar cómo las características como el tamaño del tumor (radius_mean) o la textura (texture_mean) varían entre los dos tipos de diagnóstico.

  4. Detección de Problemas en los Datos:

    • Identificar valores atípicos, datos faltantes o inconsistencias que puedan afectar los resultados de los modelos predictivos.

Primeras filas del Dataset

Primeras filas del dataset
id diagnosis radius_mean texture_mean perimeter_mean area_mean smoothness_mean compactness_mean concavity_mean concave.points_mean symmetry_mean fractal_dimension_mean radius_se texture_se perimeter_se area_se smoothness_se compactness_se concavity_se concave.points_se symmetry_se fractal_dimension_se radius_worst texture_worst perimeter_worst area_worst smoothness_worst compactness_worst concavity_worst concave.points_worst symmetry_worst fractal_dimension_worst X
842302 M 17.99 10.38 122.80 1001.0 0.11840 0.27760 0.3001 0.14710 0.2419 0.07871 1.0950 0.9053 8.589 153.40 0.006399 0.04904 0.05373 0.01587 0.03003 0.006193 25.38 17.33 184.60 2019.0 0.1622 0.6656 0.7119 0.2654 0.4601 0.11890 NA
842517 M 20.57 17.77 132.90 1326.0 0.08474 0.07864 0.0869 0.07017 0.1812 0.05667 0.5435 0.7339 3.398 74.08 0.005225 0.01308 0.01860 0.01340 0.01389 0.003532 24.99 23.41 158.80 1956.0 0.1238 0.1866 0.2416 0.1860 0.2750 0.08902 NA
84300903 M 19.69 21.25 130.00 1203.0 0.10960 0.15990 0.1974 0.12790 0.2069 0.05999 0.7456 0.7869 4.585 94.03 0.006150 0.04006 0.03832 0.02058 0.02250 0.004571 23.57 25.53 152.50 1709.0 0.1444 0.4245 0.4504 0.2430 0.3613 0.08758 NA
84348301 M 11.42 20.38 77.58 386.1 0.14250 0.28390 0.2414 0.10520 0.2597 0.09744 0.4956 1.1560 3.445 27.23 0.009110 0.07458 0.05661 0.01867 0.05963 0.009208 14.91 26.50 98.87 567.7 0.2098 0.8663 0.6869 0.2575 0.6638 0.17300 NA
84358402 M 20.29 14.34 135.10 1297.0 0.10030 0.13280 0.1980 0.10430 0.1809 0.05883 0.7572 0.7813 5.438 94.44 0.011490 0.02461 0.05688 0.01885 0.01756 0.005115 22.54 16.67 152.20 1575.0 0.1374 0.2050 0.4000 0.1625 0.2364 0.07678 NA
843786 M 12.45 15.70 82.57 477.1 0.12780 0.17000 0.1578 0.08089 0.2087 0.07613 0.3345 0.8902 2.217 27.19 0.007510 0.03345 0.03672 0.01137 0.02165 0.005082 15.47 23.75 103.40 741.6 0.1791 0.5249 0.5355 0.1741 0.3985 0.12440 NA

Resumen General

Estadísticas descriptivas de variables numéricas
Variable Min Max Mean Median SD
id 8670.00 911320502.00 30371831.43 906024.00 125020585.61
radius_mean 6.98 28.11 14.13 13.37 3.52
texture_mean 9.71 39.28 19.29 18.84 4.30
perimeter_mean 43.79 188.50 91.97 86.24 24.30
area_mean 143.50 2501.00 654.89 551.10 351.91
smoothness_mean 0.05 0.16 0.10 0.10 0.01
compactness_mean 0.02 0.35 0.10 0.09 0.05
concavity_mean 0.00 0.43 0.09 0.06 0.08
concave.points_mean 0.00 0.20 0.05 0.03 0.04
symmetry_mean 0.11 0.30 0.18 0.18 0.03
fractal_dimension_mean 0.05 0.10 0.06 0.06 0.01
radius_se 0.11 2.87 0.41 0.32 0.28
texture_se 0.36 4.88 1.22 1.11 0.55
perimeter_se 0.76 21.98 2.87 2.29 2.02
area_se 6.80 542.20 40.34 24.53 45.49
smoothness_se 0.00 0.03 0.01 0.01 0.00
compactness_se 0.00 0.14 0.03 0.02 0.02
concavity_se 0.00 0.40 0.03 0.03 0.03
concave.points_se 0.00 0.05 0.01 0.01 0.01
symmetry_se 0.01 0.08 0.02 0.02 0.01
fractal_dimension_se 0.00 0.03 0.00 0.00 0.00
radius_worst 7.93 36.04 16.27 14.97 4.83
texture_worst 12.02 49.54 25.68 25.41 6.15
perimeter_worst 50.41 251.20 107.26 97.66 33.60
area_worst 185.20 4254.00 880.58 686.50 569.36
smoothness_worst 0.07 0.22 0.13 0.13 0.02
compactness_worst 0.03 1.06 0.25 0.21 0.16
concavity_worst 0.00 1.25 0.27 0.23 0.21
concave.points_worst 0.00 0.29 0.11 0.10 0.07
symmetry_worst 0.16 0.66 0.29 0.28 0.06
fractal_dimension_worst 0.06 0.21 0.08 0.08 0.02

Histogramas

Variables Categoricas

Resumen de Frecuencias para Variables Categóricas
Variable Valor Frecuencia
diagnosis B 357
diagnosis M 212

Relacion de variables contra diagnosis

Correlaciones

Top 15 Variables más Correlacionadas con Diagnosis
Variable Correlación
concave.points_worst 0.79
perimeter_worst 0.78
concave.points_mean 0.78
radius_worst 0.78
perimeter_mean 0.74
area_worst 0.73
radius_mean 0.73
area_mean 0.71
concavity_mean 0.70
concavity_worst 0.66
compactness_mean 0.60
compactness_worst 0.59
radius_se 0.57
perimeter_se 0.56
area_se 0.55

Conclusiones del Análisis Exploratorio de Datos (EDA)

A partir de las tablas y gráficos presentados, se pueden extraer las siguientes conclusiones sobre los datos y las relaciones entre las variables:


1. Distribución de la Variable Objetivo (diagnosis)

  • La variable diagnosis (clase objetivo) tiene dos posibles valores:

    • B (Benigno): 357 muestras (mayoría).

    • M (Maligno): 212 muestras.

  • Existe un desbalance en la proporción de clases, con más casos benignos que malignos. Este desbalance podría impactar en los modelos predictivos, favoreciendo la clase mayoritaria.


2. Estadísticas Descriptivas de Variables Numéricas

  • Las variables tienen diferentes escalas y rangos, lo que hace necesario normalizar o estandarizar los datos antes de construir los modelos.

  • Algunas variables como radius_mean, perimeter_mean, y area_mean tienen rangos amplios, mientras que otras como smoothness_mean y fractal_dimension_mean están restringidas a valores pequeños.

  • La desviación estándar (SD) indica que variables como area_mean (SD = 351.91) y perimeter_mean (SD = 24.30) tienen una mayor dispersión, lo que podría ser relevante en la clasificación.


3. Correlación de Variables con la Clase Objetivo

  • El análisis de correlaciones identifica las variables más relacionadas con diagnosis:

    • Las variables más correlacionadas son:

      • concave.points_worst (0.79).

      • perimeter_worst (0.78).

      • concave.points_mean (0.78).

      • radius_worst (0.78).

    • Estas variables describen aspectos del tamaño y la concavidad del tumor, lo que sugiere que tumores más grandes y menos uniformes tienen más probabilidad de ser malignos.

  • Las variables menos correlacionadas podrían no ser tan relevantes para los modelos, y podrían considerarse para eliminación en etapas de selección de características.


4. Relación Entre Variables

  • La matriz de correlación muestra que muchas variables están altamente correlacionadas entre sí, especialmente las relacionadas con el tamaño:

    • Ejemplo: radius_mean, area_mean, y perimeter_mean tienen correlaciones superiores a 0.9.

    • Esto sugiere multicolinealidad, que podría ser problemático para ciertos modelos como la regresión logística. En tales casos, sería necesario aplicar técnicas de reducción de dimensionalidad (por ejemplo, PCA) o eliminar variables redundantes.

  • Las variables relacionadas con la “peor” medición (_worst) también están fuertemente correlacionadas entre sí.


5. Diferencias Notables Entre Tumores Benignos y Malignos

  • Tumores malignos tienden a tener valores más altos en:

    • Tamaño: Variables como radius_mean, area_mean y perimeter_mean.

    • Concavidad: Variables como concave.points_worst y concavity_mean.

  • Tumores benignos tienen valores más bajos en estas mismas características, lo que indica que estas variables serán cruciales para distinguir entre ambas clases.


Recomendaciones para el Modelado

  1. Estandarización de Datos:

    • Dado que las variables tienen rangos muy diferentes, es necesario escalarlas antes de entrenar los modelos.
  2. Manejo de Multicolinealidad:

    • Algunas variables tienen correlaciones extremadamente altas. Se podría reducir el número de variables usando técnicas como PCA o seleccionando solo las más relevantes.
  3. Consideración del Desbalance de Clases:

    • Implementar estrategias para manejar el desbalance de clases, como oversampling (SMOTE) o ajuste de pesos en los modelos.
  4. Uso de Variables Clave:

    • Variables como concave.points_worst, perimeter_worst, y radius_worst deben tener prioridad en los modelos debido a su alta correlación con la clase objetivo.

Uso de Modelos Predictivos para el Diagnóstico de Tumores

El objetivo principal de este análisis es desarrollar y evaluar modelos predictivos que permitan clasificar tumores mamarios como benignos (B) o malignos (M) basándose en las características morfológicas de las células tumorales. Estas características, derivadas de imágenes digitalizadas, incluyen mediciones como el radio, la textura, la concavidad, la simetría y el área de las células, entre otras.

Dado que el diagnóstico temprano y preciso del cáncer de mama es crucial para mejorar las tasas de supervivencia y optimizar el tratamiento, se utilizan diferentes enfoques de machine learning que ofrecen ventajas específicas según el problema.

En este análisis, se han seleccionado cuatro modelos representativos con diferentes enfoques para la clasificación:

1. Regresión Logística

  • Descripción:

    • Es un modelo estadístico que se utiliza ampliamente para problemas de clasificación binaria.

    • Estima la probabilidad de que una observación pertenezca a una clase en función de las variables independientes.

  • Ventajas:

    • Fácil de interpretar y explicar.

    • Eficaz en datasets con relaciones lineales entre las variables independientes y la clase objetivo.

  • Aplicación en este caso:

    • Permite identificar qué características tienen un impacto significativo en la probabilidad de que un tumor sea maligno.

Resultados del Modelo: Logistic Regression

Métricas del Modelo de Regresión Logística
Métrica Valor
Exactitud (Accuracy) 0.965
Sensibilidad (Recall) 1.000
Especificidad 0.944
Precisión (Precision) 0.913

2. Support Vector Machine (SVM)

  • Descripción:

    • Es un modelo basado en encontrar un hiperplano óptimo que separe las clases (benigno y maligno) en un espacio multidimensional.

    • Funciona bien en problemas lineales y no lineales mediante el uso de kernels.

  • Ventajas:

    • Robusto frente a datasets con alta dimensionalidad.

    • Eficaz en casos donde las clases no son fácilmente separables.

  • Aplicación en este caso:

    • Ayuda a encontrar patrones complejos en los datos, especialmente en las características no lineales que diferencian a los tumores benignos de los malignos.

Resultados del Modelo: SVM

Métricas del Modelo SVM
Métrica Valor
Exactitud (Accuracy) 0.991
Sensibilidad (Recall) 1.000
Especificidad 0.986
Precisión (Precision) 0.977

3. Random Forest

  • Descripción:

    • Es un modelo basado en árboles de decisión. Construye múltiples árboles de decisión y combina sus resultados para mejorar la precisión.

    • Utiliza técnicas de bagging para reducir el sobreajuste.

  • Ventajas:

    • Robusto frente a datos ruidosos y variables irrelevantes.

    • No requiere mucho ajuste previo de los datos (normalización o escalado).

  • Aplicación en este caso:

    • Identifica características importantes y captura interacciones complejas entre variables que pueden ser útiles para distinguir tumores benignos y malignos.

Resultados del Modelo: Random Forest

Métricas del Modelo Random Forest
Métrica Valor
Exactitud (Accuracy) 0.973
Sensibilidad (Recall) 0.976
Especificidad 0.972
Precisión (Precision) 0.953

4. K-Nearest Neighbors (KNN)

  • Descripción:

    • Es un algoritmo basado en la proximidad, donde la clase de una observación se asigna según las clases de sus vecinos más cercanos.

    • La distancia entre puntos en el espacio de características es crucial para el desempeño del modelo.

  • Ventajas:

    • Sencillo de implementar y entender.

    • Puede modelar relaciones no lineales sin requerir suposiciones sobre la distribución de los datos.

  • Aplicación en este caso:

    • Detecta similitudes entre tumores y sus vecinos más cercanos para determinar su clasificación.

Resultados del Modelo: KNN

Métricas del Modelo KNN
Métrica Valor
Exactitud (Accuracy) 0.982
Sensibilidad (Recall) 0.976
Especificidad 0.986
Precisión (Precision) 0.976

Resumen de resultados de prediccion

Resumen de Métricas Clave para Todos los Modelos
Métricas Clave
Modelo Accuracy Sensitivity Specificity Precision
Logistic Regression 0.965 1.000 0.944 0.913
SVM 0.991 1.000 0.986 0.977
Random Forest 0.973 0.976 0.972 0.953
KNN 0.982 0.976 0.986 0.976

Conclusiones

Se pueden sacar las siguientes conclusiones:

  1. Modelo con Mejor Precisión General: SVM tiene la mayor Accuracy (0.991), lo que indica que este modelo clasifica correctamente la mayor proporción de los casos (tanto positivos como negativos). Le sigue KNN con una Accuracy de 0.982.

  2. Sensibilidad (Recall): Tanto SVM como Logistic Regression alcanzan un Recall perfecto (1.000), lo que significa que ambos detectan correctamente todos los casos positivos (M). Random Forest y KNN tienen una Sensibilidad ligeramente menor (0.976), pero aún así muy alta.

  3. Especificidad: SVM y KNN tienen la mayor Especificidad (0.986), lo que indica que ambos son los más efectivos al identificar correctamente los casos negativos (B). Random Forest está ligeramente por detrás con 0.972, mientras que Logistic Regression tiene la menor especificidad (0.944).

  4. Precisión: SVM tiene la mejor Precisión (0.977), lo que significa que la mayor proporción de sus predicciones positivas son correctas. KNN sigue de cerca con una Precisión de 0.976, mientras que Random Forest y Logistic Regression tienen valores menores (0.953 y 0.913, respectivamente).

Conclusiones Finales:

SVM es el modelo más robusto en general:

Tiene la mejor Accuracy y la mayor combinación de Sensibilidad, Especificidad y Precisión. Este modelo es ideal si el equilibrio entre detectar positivos y evitar falsos positivos es crítico.

KNN es un competidor cercano:

Aunque tiene una ligera desventaja en Sensibilidad (0.976 vs. 1.000 de SVM), sus métricas generales son consistentes, y su Especificidad iguala la de SVM. Logistic Regression y Random Forest tienen aplicaciones específicas:

Logistic Regression sobresale en detectar todos los casos positivos (Recall perfecto), pero su capacidad de identificar casos negativos es menor (0.944).

Random Forest es muy consistente, con buenas métricas generales, pero no lidera en ninguna categoría en esta comparación.