| 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 |
Proyecto DATA MINING AND BIG DATA -Universidad Galileo
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
radius_*:Radio medio, error estándar y peor radio de las células.
Representa el tamaño del tumor.
texture_*:Variación en la intensidad de la textura en la imagen.
Indica irregularidades en la superficie celular.
perimeter_*:Perímetro medio, error estándar y peor perímetro de las células.
Relacionado con la forma del tumor.
area_*:Área media, error estándar y peor área de las células.
Refleja el tamaño del tumor.
smoothness_*:Uniformidad del contorno celular.
Representa qué tan suaves son las bordes de las células.
compactness_*:Grado de compacidad celular.
Relacionado con la densidad celular.
concavity_*:Grado de concavidad en el contorno celular.
Se refiere a depresiones en los bordes de las células.
concave.points_*:Número de puntos cóncavos en el contorno celular.
Relacionado con la forma de las células.
symmetry_*:Simetría de las células.
Representa cuán equilibradas son las formas celulares.
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:
Identificación de Características Relevantes:
- Determinar qué variables tienen mayor impacto en el diagnóstico.
Construcción de Modelos Predictivos:
- Entrenar modelos como Logistic Regression, SVM, Random Forest y KNN para predecir el diagnóstico.
Evaluación del Rendimiento:
- Comparar los modelos en métricas como exactitud, sensibilidad, especificidad y precisión.
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:
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.
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.
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.
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
Resumen General
| 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
| Variable | Valor | Frecuencia |
|---|---|---|
| diagnosis | B | 357 |
| diagnosis | M | 212 |
Relacion de variables contra diagnosis
Correlaciones
| 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, yarea_meantienen rangos amplios, mientras que otras comosmoothness_meanyfractal_dimension_meanestán restringidas a valores pequeños.La desviación estándar (SD) indica que variables como
area_mean(SD = 351.91) yperimeter_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, yperimeter_meantienen 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_meanyperimeter_mean.Concavidad: Variables como
concave.points_worstyconcavity_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
Estandarización de Datos:
- Dado que las variables tienen rangos muy diferentes, es necesario escalarlas antes de entrenar los modelos.
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.
Consideración del Desbalance de Clases:
- Implementar estrategias para manejar el desbalance de clases, como oversampling (SMOTE) o ajuste de pesos en los modelos.
Uso de Variables Clave:
- Variables como
concave.points_worst,perimeter_worst, yradius_worstdeben tener prioridad en los modelos debido a su alta correlación con la clase objetivo.
- Variables como
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é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é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é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étrica | Valor |
|---|---|
| Exactitud (Accuracy) | 0.982 |
| Sensibilidad (Recall) | 0.976 |
| Especificidad | 0.986 |
| Precisión (Precision) | 0.976 |
Resumen de resultados de prediccion
| 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:
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.
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.
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).
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.