CD_15 Original + Derivados

CD_15: Breast Cancer Wisconsin (Diagnostic) - WDBC

Clasificación binaria de tumores mamarios (Maligno vs Benigno). 569 instancias, 30 variables derivadas de 10 características morfológicas del núcleo celular.

📈 Eficacia Predictiva Detallada

Comparación detallada de las métricas de clasificación para los modelos entrenados con el conjunto de datos original y el conjunto sintético generado.

📊 Conjunto Original

Clase Precisión Recall F1-Score Soporte
Clase 0 0.94 0.94 0.94 72
Clase 1 0.90 0.90 0.90 42
Accuracy 0.93
Macro Avg 0.92 0.92 0.92 114
Weighted Avg 0.93 0.93 0.93 114
AUC-ROC: 0.99
F1-Score (weighted): 0.93
Accuracy: 0.93
➡️ Mejora
⬆ +0.01 AUC ⬆ +0.02 F1 ⬆ +0.02 Acc
🏆 MEJOR RENDIMIENTO

🔮 Conjunto Sintético

Clase Precisión Recall F1-Score Soporte
Clase 0 0.97 0.94 0.96 72
Clase 1 0.91 ⬆ +0.01 0.95 ⬆ +0.05 0.93 ⬆ +0.03 42
Accuracy 0.95 ⬆ +0.02
Macro Avg 0.94 ⬆ +0.02 0.95 ⬆ +0.03 0.94 ⬆ +0.02 114
Weighted Avg 0.95 ⬆ +0.02 0.95 ⬆ +0.02 0.95 ⬆ +0.02 114
AUC-ROC: 0.99 ⬆ +0.01
F1-Score (weighted): 0.95 ⬆ +0.02
Accuracy: 0.95 ⬆ +0.02

📊 Resumen de Mejoras en Clase Minoritaria (Clase 1)

🎯
Precisión
Original: 0.90
Sintético: 0.91
⬆ +0.01
📈
Recall
Original: 0.90
Sintético: 0.95
⬆ +0.05
⚖️
F1-Score
Original: 0.90
Sintético: 0.93
⬆ +0.03

📚 Fuente Original del Conjunto

Breast Cancer Wisconsin (Diagnostic)

v1.0
Street, W., Wolberg, W., & Mangasarian, O.
Publicado: 31 de octubre de 1995

📄 Resumen (Abstract)

El conjunto de datos de Diagnóstico de Cáncer de Mama de Wisconsin (WDBC) contiene características calculadas a partir de imágenes digitalizadas de aspiraciones con aguja fina (FNA) de masas mamarias. Cada instancia representa una muestra de tejido mamario y describe las características de los núcleos celulares presentes en la imagen. El objetivo es clasificar el tumor como maligno (M) o benigno (B) utilizando 30 características numéricas basadas en la morfología celular, incluyendo radio, textura, perímetro, área, suavidad, compacidad, concavidad, puntos cóncavos, simetría y dimensión fractal. El conjunto de datos es ampliamente utilizado como referencia en problemas de clasificación médica y aprendizaje automático.

🔬 Métodos y Contexto

Las características fueron extraídas de imágenes digitalizadas de aspiraciones con aguja fina (FNA) de masas mamarias. El proceso de extracción utiliza técnicas de procesamiento de imágenes para identificar y medir los núcleos celulares. El plano de separación descrito fue obtenido utilizando el método Multisurface Method-Tree (MSM-T) [Bennett, 1992], un método de clasificación que utiliza programación lineal para construir un árbol de decisión. Las características relevantes fueron seleccionadas mediante una búsqueda exhaustiva en el espacio de 1-4 características y 1-3 planos de separación. El programa lineal utilizado para obtener el plano de separación en el espacio tridimensional se describe en Bennett y Mangasarian (1992).

Imágenes de muestra disponibles en: http://www.cs.wisc.edu/~street/images/

📊 Descripción de Datos

El dataset contiene 569 instancias con 30 características numéricas de tipo real, sin valores faltantes. Cada característica se calcula para cada núcleo celular y se agrupa en tres conjuntos de 10 características cada uno:

🔬 Características de los Núcleos Celulares
Característica Descripción
radius Media de las distancias desde el centro hasta los puntos del perímetro
texture Desviación estándar de los valores de escala de grises
perimeter Perímetro del núcleo celular
area Área del núcleo celular
smoothness Variación local en los radios (suavidad del contorno)
compactness perímetro² / área - 1.0 (compacidad)
concavity Severidad de las porciones cóncavas del contorno
concave points Número de porciones cóncavas del contorno
symmetry Simetría del núcleo
fractal_dimension "Aproximación de costa" - 1 (dimensión fractal)
📐 Agrupación de Características
  • Conjunto 1 (sufijo _1): Valor medio de cada característica para todos los núcleos de la muestra
  • Conjunto 2 (sufijo _2): Desviación estándar de cada característica (error estándar)
  • Conjunto 3 (sufijo _3): Valor "peor" o máximo de cada característica (promedio de los 3 valores más grandes)
🎯 Variable Objetivo
  • Diagnosis - M (maligno) o B (benigno)
  • ID - Identificador único del paciente

📋 Características del Dataset

  • Tipo de problema: Clasificación binaria (Maligno vs. Benigno)
  • Dimensión: Multivariante
  • Tipo de características: Reales (continuas)
  • Valores faltantes: No
  • Área de aplicación: Salud y Medicina, Diagnóstico por imágenes

📖 Publicación Introductoria

El artículo fundamental que describe la extracción de características nucleares para el diagnóstico de tumores mamarios es:

Street, W., Wolberg, W., & Mangasarian, O. (1993). Nuclear feature extraction for breast tumor diagnosis. Electronic Imaging.

⚖️ Ética y Privacidad

El conjunto de datos ha sido completamente anonimizado, eliminando toda información de identificación personal. Los identificadores de pacientes (ID) son números aleatorios sin relación con información demográfica o identificable. Restricción de confidencialidad: En cumplimiento de los protocolos de privacidad, el uso de los datos está restringido a fines académicos y de investigación. La publicación de resultados debe limitarse a métricas de evaluación, resultados agregados y metodología del modelo, sin divulgación de información que permita la reidentificación de pacientes.

📋 Notas de Uso

Este conjunto de datos es uno de los más utilizados en la literatura de aprendizaje automático para problemas de clasificación médica. Se recomienda:

  • Utilizar validación cruzada estratificada debido al desbalanceo potencial entre clases
  • Estandarizar/normalizar las características dado que son de naturaleza continua y escalas diferentes
  • Considerar técnicas de reducción de dimensionalidad (PCA, selección de características) debido a la alta correlación entre variables
  • La variable ID debe excluirse del modelado por ser un identificador único

💡 Importancia Clínica

El diagnóstico temprano y preciso del cáncer de mama es fundamental para mejorar las tasas de supervivencia. La aspiración con aguja fina (FNA) es un procedimiento mínimamente invasivo que permite la obtención de muestras celulares para análisis. La capacidad de clasificar automáticamente los tumores como benignos o malignos a partir de imágenes digitalizadas puede apoyar a los patólogos en la toma de decisiones, reducir la variabilidad inter-observador y mejorar la eficiencia del diagnóstico. Este dataset ha sido fundamental para el desarrollo de sistemas de apoyo al diagnóstico basados en aprendizaje automático.

📖 Cómo citar la fuente original

Street, W., Wolberg, W., & Mangasarian, O. (1993). Nuclear feature extraction for breast tumor diagnosis. Electronic Imaging. UCI Machine Learning Repository - Breast Cancer Wisconsin (Diagnostic). https://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+(Diagnostic)

📚 Referencias Adicionales

  • Bennett, K. P. (1992). Decision Tree Construction Via Linear Programming. Proceedings of the 4th Midwest Artificial Intelligence and Cognitive Science Society, pp. 97-101.
  • Bennett, K. P., & Mangasarian, O. L. (1992). Robust Linear Programming Discrimination of Two Linearly Inseparable Sets. Optimization Methods and Software, 1, 23-34.
  • Wolberg, W. H., Street, W. N., & Mangasarian, O. L. (1995). Image analysis and machine learning applied to breast cancer diagnosis and prognosis. Analytical and Quantitative Cytology and Histology, 17(2), 77-87.
  • UCI Machine Learning Repository - Breast Cancer Wisconsin (Diagnostic). https://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+(Diagnostic)

🔄 Transformaciones Aplicadas

Modificaciones realizadas al conjunto original (Breast Cancer Wisconsin - Diagnostic)

  • Estructuración y nomenclatura de variables:
    • Asignación de nombres de columnas según la documentación original: 32 columnas (ID, Diagnosis, y 30 características derivadas de 10 bases con sufijos _mean, _se, _worst).
    • Eliminación de la columna ID por no aportar valor predictivo y evitar ruido en el modelo.
  • Codificación de la variable objetivo:
    • Transformación de la variable categórica Diagnosis (original: 'M' = Maligno, 'B' = Benigno) a codificación numérica binaria.
    • Mapeo: 'B' (Benigno) → 0 (Clase Mayoritaria), 'M' (Maligno) → 1 (Clase Positiva/Minoritaria).
    • Generación de leyenda de codificación en archivo de texto para trazabilidad e interpretación.
  • Mantenimiento de la integridad numérica:
    • Todas las 30 variables predictoras son de tipo numérico continuo (float) derivadas de características morfológicas (radio, textura, perímetro, área, suavidad, compacidad, concavidad, puntos cóncavos, simetría, dimensión fractal).
    • Cada característica base se desglosa en tres estadísticos: media (valor promedio), error estándar (variabilidad), y peor valor (extremo anómalo).
  • Verificación y control de calidad:
    • Confirmación de ausencia total de valores nulos en el conjunto de datos original (dataset completo).
    • Validación de que las variables numéricas mantienen su precisión original sin conversiones que alteren la distribución.
    • Preservación de las 569 instancias (pacientes) con integridad de la estructura 30+1 (30 features + 1 target).
  • Generación de documentación de apoyo:
    • Creación del archivo leyenda_categorias.txt con el mapeo completo de la variable Diagnosis (0: Benigno, 1: Maligno).
    • Documentación del proceso de codificación para reproducibilidad y transparencia metodológica.

📊 Resultado: Dataset de 569 pacientes con 30 variables predictoras numéricas (derivadas de características nucleares de imágenes de PAAF) y 1 variable objetivo binaria (Diagnosis). Desbalance de clases leve (~37% Malignos / 63% Benignos) con alta correlación entre variables — escenario ideal para validación de técnicas robustas frente a multicolinealidad y distribuciones complejas.

🏥 Fuente: Universidad de Wisconsin-Madison (Dr. William H. Wolberg, W. Nick Street, Olvi L. Mangasarian) - Donado en 1995.

🔬 Método: Características computadas mediante visión por computador sobre imágenes digitalizadas de Aspiración con Aguja Fina (PAAF).

📁 Leyenda disponible: Archivo leyenda_categorias.txt con mapeo de la variable objetivo codificada.

🎯 Variable objetivo: Diagnosis (1 = Maligno, 0 = Benigno).

📋 Diccionario de Datos Detallado

Variable Descripción Clínica Tipo Rango / Categorías Unidad ¿Objetivo?
Diagnosis Diagnóstico del tumor (benigno/maligno) Binario 0: Benigno (B), 1: Maligno (M) N/A
radius_mean Radio medio (distancia centro-perímetro) Numérico 6.98 - 27.42 μm No
texture_mean Textura media (desv. estándar de escala de grises) Numérico 9.71 - 39.28 N/A No
perimeter_mean Perímetro medio del núcleo celular Numérico 43.79 - 186.9 μm No
area_mean Área media del núcleo celular Numérico 143.5 - 2501 μm² No
smoothness_mean Suavidad media (variación local del radio) Numérico 0.064 - 0.163 N/A No
compactness_mean Compacidad media (perímetro²/área - 1.0) Numérico 0.023 - 0.345 N/A No
concavity_mean Concavidad media (severidad de porciones cóncavas) Numérico 0 - 0.427 N/A No
concave_points_mean Puntos cóncavos medios (cantidad de porciones cóncavas) Numérico 0 - 0.201 N/A No
symmetry_mean Simetría media del núcleo Numérico 0.106 - 0.304 N/A No
fractal_dimension_mean Dimensión fractal media (complejidad del borde) Numérico 0.050 - 0.097 N/A No
radius_se Error estándar del radio Numérico 0.115 - 2.547 μm No
texture_se Error estándar de la textura Numérico 0.363 - 4.885 N/A No
perimeter_se Error estándar del perímetro Numérico 0.757 - 18.65 μm No
area_se Error estándar del área Numérico 6.802 - 542.2 μm² No
smoothness_se Error estándar de la suavidad Numérico 0.0017 - 0.031 N/A No
compactness_se Error estándar de la compacidad Numérico 0.0030 - 0.106 N/A No
concavity_se Error estándar de la concavidad Numérico 0 - 0.304 N/A No
concave_points_se Error estándar de los puntos cóncavos Numérico 0 - 0.041 N/A No
symmetry_se Error estándar de la simetría Numérico 0.0095 - 0.079 N/A No
fractal_dimension_se Error estándar de la dimensión fractal Numérico 0.0009 - 0.023 N/A No
radius_worst Radio peor (media de los 3 valores más grandes) Numérico 7.93 - 36.04 μm No
texture_worst Textura peor (media de los 3 valores más grandes) Numérico 12.02 - 49.54 N/A No
perimeter_worst Perímetro peor (media de los 3 valores más grandes) Numérico 50.41 - 251.2 μm No
area_worst Área peor (media de los 3 valores más grandes) Numérico 185.2 - 4254 μm² No
smoothness_worst Suavidad peor (media de los 3 valores más grandes) Numérico 0.071 - 0.223 N/A No
compactness_worst Compacidad peor (media de los 3 valores más grandes) Numérico 0.027 - 0.938 N/A No
concavity_worst Concavidad peor (media de los 3 valores más grandes) Numérico 0 - 1.252 N/A No
concave_points_worst Puntos cóncavos peores (media de los 3 valores más grandes) Numérico 0 - 0.290 N/A No
symmetry_worst Simetría peor (media de los 3 valores más grandes) Numérico 0.157 - 0.664 N/A No
fractal_dimension_worst Dimensión fractal peor (media de los 3 valores más grandes) Numérico 0.055 - 0.173 N/A No
31 Variables totales
30 Numéricas
0 Categóricas
1 Binarias
Objetivo: Diagnóstico (Diagnosis)
Datos ausentes: 0%

📈 Distribución de la variable objetivo en el conjunto original

📖 Leyenda de Variables Categóricas

Esta sección detalla los códigos y significados de las variables categóricas y binarias presentes en el conjunto de datos de cáncer de mama (Breast Cancer Wisconsin Diagnostic). Comprender estas codificaciones es fundamental para la correcta interpretación de los resultados clínicos.

Diagnosis 🎯 Objetivo
Código Significado
0 Benigno (B) - Tumor no canceroso. Clase mayoritaria (~63%)
1 Maligno (M) - Tumor canceroso. Clase minoritaria (~37%)
🎯

Variable Objetivo: El modelo debe clasificar correctamente entre tumores benignos y malignos para apoyar el diagnóstico clínico.

Variables Binarias Binario

Formato común: 0 = No / Benigno, 1 = Sí / Maligno

Diagnosis 🎯 Variable Objetivo: Diagnóstico del tumor (0: Benigno, 1: Maligno)
ℹ️

Nota: Única variable binaria en el dataset.

📊
Variables binarias: 1
  • 🎯 Diagnosis (Objetivo) - 0: Benigno, 1: Maligno
📈
Variables numéricas: 30
  • 10 variables _mean (medias)
  • 10 variables _se (errores estándar)
  • 10 variables _worst (peores valores)
⚠️
Recomendaciones Clínicas:
  • Características clave: radius, perimeter, area tienen alta correlación
  • Variables informativas: concavity, concave_points distinguen bien entre clases
  • Valores extremos: _worst captura anomalías del núcleo
  • Núcleo maligno: Mayor radio, perímetro, área, concavidad y asimetría
  • Núcleo benigno: Más regular, simétrico y con bordes suaves
  • Multicolinealidad: Variables correlacionadas (ej. radius, perimeter, area)

🔬 Metodología de Generación (Reproducibilidad Científica)

📐 Método Principal

SMOTE RSB* Adaptado

Versión: 2.0

DOI: 10.1007/s42979-026-04896-8

📏 Reglas de restricción

  • radius_mean > 20 → radius_worst > 20
  • texture_mean > 25 → texture_worst > 25
  • perimeter_mean > 120 → perimeter_worst > 120
  • area_mean > 1000 → area_worst > 1000
  • smoothness_mean > 0.12 → smoothness_worst > 0.12
  • compactness_mean > 0.2 → compactness_worst > 0.2
  • concavity_mean > 0.3 → concavity_worst > 0.3
  • concave_points_mean > 0.15 → concave_points_worst > 0.15
  • concavity_mean == 0 → concave_points_mean = 0
  • symmetry_mean > 0.25 → symmetry_worst > 0.25
  • fractal_dimension_mean > 0.08 → fractal_dimension_worst > 0.08
  • perimeter_mean < 60 → radius_mean < 11
  • radius_mean < 10 → area_mean < 400
  • area_worst > 2500 → Diagnosis = 1 (Maligno)

⚙️ Hiperparámetros SMOTE RSB* Adaptado

Valor escala0.03
Probabilidad Base0.1

🔄 Hiperparámetros CTGAN

epochs500
batch_size50
generator_lr0.0002
discriminator_lr0.0002
pac10
generator_dim(128, 128)
discriminator_dim(128, 128)
embedding_dim128
l2scale1e-05

📊 Hiperparámetros TVAE

epochs 400
batch_size 50
embedding_dim 64
compress_dims (64, 64)
decompress_dims (64, 64)
l2scale 1e-5
loss_factor 2

🔐 Reproducibilidad

Random Seed42
Python3.12.12

Librerías utilizadas:

  • pandas: 2.3.3
  • numpy: 2.4.4
  • scikit-learn: 1.7.2
  • imbalanced-learn: 0.14.0
  • ctgan: 0.11.1
  • torch: 2.9.0
  • sdv: 1.28.0
  • scipy: 1.16.3
  • matplotlib: 3.10.9
📝

Para reproducir exactamente este conjunto de datos, ejecute el script de generación con la semilla aleatoria 42. Los resultados pueden variar ligeramente según la versión de las librerías.

📊 Conjuntos de Datos Derivados

El conjunto original ha sido sometido a un proceso de balanceo de clases y generación sintética para mejorar la representación de clases minoritarias. Nota: se ha empleado un conjunto de validación para evaluar el índice de fidelidad. Se han generado tres familias de conjuntos:

  • 📊 Balanceados: Conjuntos creados mediante técnicas de sobremuestreo
  • 🔮 Sintéticos Puros: Conjuntos generados completamente con modelos generativos
  • ✨ Aumentados: Combinación del conjunto original + datos sintéticos

El mejor conjunto de cada etapa fue seleccionado mediante el índice TabDSFidelity.

📊 Conjuntos Balanceados 8 conjuntos

Algoritmo Ratio N° Ejemplos AUC-ROC F1 Accuracy TabDSFidelity Jensen-Shannon Kolmogorov-Smirnov Kullback-Leibler Correlación Tiempo Total (s) Dist. Promedio Copias Exactas Ataque MIA Mejor
Random Oversampling 1 428 0.990 0.956 0.956 6.655 0.139 0.279 0.033 0.979 70.055 0 428 0.463 🏆
Smote 1 428 0.981 0.956 0.956 4.235 0.276 0.324 0.033 0.984 68.026 0.005 341 0.464
Borderline SMOTE 1 428 0.991 0.930 0.930 3.596 0.276 0.323 0.033 0.966 68.818 0.006 342 0.457
ADASYN 1.014 431 0.990 0.956 0.956 6.021 0.280 0.390 0.035 0.960 68.266 0.006 342 0.450
SMOTE RSB* Adaptado 1.005 427 0.992 0.956 0.956 6.229 0.275 0.322 0.032 0.982 61.495 0.009 341 0.460
SMOTE RSB* Adaptado + Reglas 1.005 427 0.991 0.948 0.947 5.271 0.275 0.329 0.032 0.980 61.496 0.009 341 0.473
OOF PSO para Balanceo 1 428 0.982 0.974 0.974 4.678 0.267 0.120 0.033 0.759 62.219 0.056 341 0.452
OOF PSO para Balanceo + Reglas 1 428 0.990 0.947 0.947 3.341 0.266 0.044 0.033 0.714 63.460 0.064 341 0.471
Mejor seleccionado: Random Oversampling (TabDSFidelity: 6.655, AUC: 0.990, F1: 0.956, MIA: 0.463). Nota: Ratio <= 1.5 = Conjunto Balanceado.

🔮 Conjuntos Sintéticos Puros 10 conjuntos

Algoritmo Ratio N° Ejemplos AUC-ROC F1 Accuracy TabDSFidelity Jensen-Shannon Kolmogorov-Smirnov Kullback-Leibler Correlación Tiempo Total (s) Dist. Promedio Copias Exactas Ataque MIA Mejor
SMOTE RSB* + Ruido Gaussiano 1.667 5862 0.990 0.974 0.974 8.448 0.790 0.828 0.000 0.979 103.413 0.049 0 0.597 🏆
SMOTE RSB* + Ruido Gaussiano + Reglas 1.661 5862 0.989 0.965 0.965 7.592 0.790 0.828 0.000 0.980 292.681 0.049 0 0.534
CTGAN 1.028 10000 0.974 0.938 0.939 3.208 0.741 0.000 0.036 0.746 344.435 0.154 0 0.465
CTGAN + Reglas del Dominio 1.038 10000 0.976 0.938 0.939 3.338 0.741 0.000 0.038 0.747 637.315 0.153 0 0.467
TVAE 1.165 10000 0.985 0.938 0.939 3.898 0.781 0.022 0.055 0.922 280.150 0.059 0 0.490
TVAE + Reglas del Dominio 1.166 10000 0.985 0.930 0.930 3.135 0.781 0.022 0.055 0.922 572.291 0.059 0 0.494
OOF PSO para Aumento 1 10000 0.963 0.929 0.930 0.272 0.820 0.000 0.033 0.506 187.886 0.286 0 0.472
OOF PSO para Aumento + Reglas 1 10000 0.961 0.929 0.930 0.117 0.819 0.000 0.033 0.505 463.439 0.285 0 0.472
SMOTE RSB* Refinado 1.151 6542 0.982 0.965 0.965 5.787 0.830 0.107 0.017 0.971 109.890 0.021 0 0.498
SMOTE RSB* Refinado + Reglas 1.151 6542 0.982 0.965 0.965 5.788 0.830 0.107 0.017 0.971 301.205 0.021 0 0.498
Mejor seleccionado: SMOTE RSB* + Ruido Gaussiano (TabDSFidelity: 8.448, AUC: 0.990, F1: 0.974, MIA: 0.597). Nota: Ratio <= 1.5 = Conjunto Balanceado.

✨ Conjuntos Aumentados 10 conjuntos

Algoritmo Ratio N° Ejemplos AUC-ROC F1 Accuracy TabDSFidelity Jensen-Shannon Kolmogorov-Smirnov Kullback-Leibler Correlación Tiempo Total (s) Dist. Promedio Copias Exactas Ataque MIA Mejor
SMOTE RSB* + Ruido Gaussiano 1.608 6290 0.993 0.965 0.965 6.443 0.727 0.850 0.000 0.980 200.626 0.048 0 0.539
SMOTE RSB* + Ruido Gaussiano + Reglas 1.602 6290 0.996 0.974 0.974 8.613 0.726 0.850 0.000 0.980 388.711 0.048 0 0.535 🏆
CTGAN 1.026 10428 0.991 0.965 0.965 4.572 0.701 0.000 0.036 0.750 495.767 0.145 88 0.474
CTGAN + Reglas del Dominio 1.037 10428 0.989 0.965 0.965 4.163 0.701 0.000 0.038 0.750 788.416 0.145 88 0.477
TVAE 1.158 10428 0.990 0.948 0.947 1.502 0.738 0.028 0.054 0.926 430.293 0.056 88 0.469
TVAE + Reglas del Dominio 1.159 10428 0.990 0.956 0.956 2.989 0.738 0.028 0.054 0.926 722.475 0.056 88 0.463
OOF PSO para Aumento 1 10428 0.992 0.965 0.965 3.435 0.767 0.000 0.033 0.510 328.809 0.273 88 0.468
OOF PSO para Aumento + Reglas 1 10428 0.991 0.965 0.965 3.078 0.766 0.000 0.033 0.509 603.958 0.272 88 0.470
SMOTE RSB* Refinado 1.141 6970 0.990 0.965 0.965 4.168 0.758 0.115 0.018 0.972 207.634 0.020 139 0.522
SMOTE RSB* Refinado + Reglas 1.141 6970 0.990 0.965 0.965 4.169 0.758 0.115 0.018 0.972 398.277 0.020 139 0.522
Mejor seleccionado: SMOTE RSB* + Ruido Gaussiano + Reglas del Dominio (TabDSFidelity: 8.613, AUC: 0.996, F1: 0.974, MIA: 0.535). Nota: Ratio <= 1.5 = Conjunto Balanceado.

📈 Diagrama del Proceso de Generación

Conjunto Original
CD_15
Balanceo
(8 métodos)
↓ Selección por TabDSFidelity
⭐ Mejor Balanceado
Random Oversampling
Generación Sintética
(10 métodos)
↓ Evaluación TabDSFidelity
⭐ Mejor Sintético
SMOTE RSB* + Ruido Gaussiano
⭐ Mejor Aumentado
SMOTE RSB* + Ruido Gaussiano + Reglas del Dominio
Conjunto Sintético Final
Seleccionado por calidad

📊 Guía de Métricas de Evaluación

Para interpretar correctamente los resultados de los conjuntos de datos generados, es fundamental comprender qué mide cada métrica y cómo se relacionan entre sí. A continuación, se detalla cada una de las métricas utilizadas en la evaluación:

🎯 Métricas de Rendimiento Predictivo

AUC-ROC (0.5 - 1.0)

¿Qué mide? Capacidad del modelo para distinguir entre clases (Ej: mortalidad vs supervivencia).

Interpretación:

  • 0.5: Sin capacidad predictiva (aleatorio)
  • 0.7-0.8: Aceptable
  • 0.8-0.9: Excelente
  • >0.9: Sobresaliente

Ejemplo: AUC-ROC = 0.82 significa que hay un 82% de probabilidad de que el modelo clasifique correctamente un paciente fallecido frente a uno superviviente.

F1-Score (0 - 1.0)

¿Qué mide? Media armónica entre precisión y sensibilidad (recall).

Interpretación:

  • 0.7-0.8: Buen equilibrio entre precisión y sensibilidad
  • 0.8-0.9: Muy buen equilibrio
  • >0.9: Excelente equilibrio

Ejemplo: F1 = 0.76 indica que el modelo mantiene un buen balance entre identificar correctamente a los pacientes que fallecen (sensibilidad) y no etiquetar erróneamente a los que sobreviven (precisión).

Accuracy (0 - 1.0)

¿Qué mide? Proporción de predicciones correctas sobre el total.

Interpretación:

  • 0.7-0.8: Buen rendimiento general
  • 0.8-0.9: Muy buen rendimiento
  • >0.9: Excelente rendimiento

Ejemplo: Accuracy = 0.75 significa que el 75% de las predicciones del modelo son correctas.

⚠️ Nota: En conjuntos desbalanceados, esta métrica puede ser engañosa. Es mejor usar F1-Score o AUC-ROC.

🔬 Índice de Fidelidad del Conjunto

TabDSFidelity (0 - 10+)

¿Qué mide? Calidad global del conjunto sintético comparado con el original.

Interpretación:

  • < 3.0: Baja fidelidad (poca similitud con el original)
  • 3.0 - 6.0: Fidelidad moderada
  • 6.0 - 8.0: Alta fidelidad
  • > 8.0: Muy alta fidelidad (excelente representación)

Ejemplo: TabDSFidelity = 8.08 indica que el conjunto sintético mantiene una alta similitud con el original, preservando las relaciones y distribuciones de los datos reales, además de maximizar su eficacia predictiva.

💡 Importante: Este es el índice para seleccionar el mejor conjunto de datos sintéticos. Para este caso, el peso empleado para las métricas "AUC-ROC", "F1-Score" y "Accuracy" fue (2) y para el resto de las métricas fue (1).

📊 Métricas de Similitud de Distribuciones

Jensen-Shannon (Promedio) (0 - 1.0)

¿Qué mide? Similitud entre las distribuciones de variables numéricas del conjunto sintético y el original.

Interpretación:

  • Cerca de 0: Distribuciones muy similares (ideal)
  • 0.1 - 0.3: Diferencias moderadas
  • > 0.3: Diferencias significativas

Ejemplo: JS = 0.118 indica que las distribuciones de las variables numéricas (edad, presión arterial, etc.) son bastante similares a las del conjunto original.

📌 Nota: Es el promedio de la divergencia de Jensen-Shannon calculada para todas las variables numéricas.

Kolmogorov-Smirnov (p-valor promedio) (0 - 1.0)

¿Qué mide? Probabilidad estadística de que las muestras numéricas del conjunto sintético provengan de la misma distribución continua que el original.

Interpretación:

  • Cerca de 1.0: Altísima probabilidad de que sean la misma distribución (ideal)
  • > 0.05: Similitud aceptable (no se rechaza que sean iguales)
  • < 0.05: Diferencias estadísticamente significativas

Ejemplo: KS p-valor = 0.753 indica que hay evidencia fuerte a favor de que las distribuciones acumulativas de la variable sintética y la original son equivalentes.

📌 Nota: Se reporta el promedio de los p-valores obtenidos mediante la prueba de Kolmogorov-Smirnov de dos muestras para las variables numéricas.

Kullback-Leibler (Promedio) (0 - ∞)

¿Qué mide? Divergencia entre las distribuciones de variables categóricas del conjunto sintético y el original.

Interpretación:

  • Cerca de 0: Distribuciones muy similares (ideal)
  • 0.01 - 0.1: Diferencias pequeñas
  • > 0.1: Diferencias notables

Ejemplo: KL = 0.014 indica que la distribución de las variables categóricas (género, mortalidad) es muy similar a la del conjunto original.

📌 Nota: Es el promedio de la divergencia de Kullback-Leibler para todas las variables categóricas. A diferencia de JS y KS, esta métrica se aplica solo a variables categóricas.

📊 Métricas de Estructura

Similitud de Correlación (0 - 1.0)

¿Qué mide? Preservación de las relaciones entre variables del conjunto original.

Interpretación:

  • Cerca de 1.0: Las relaciones entre variables se mantienen casi idénticas
  • > 0.9: Excelente preservación de relaciones
  • 0.7 - 0.9: Buena preservación
  • < 0.7: Pérdida significativa de relaciones

Ejemplo: Correlación = 0.976 significa que las relaciones entre variables (ej. edad y mortalidad) se mantienen en un 97.6% respecto al conjunto original.

⏱️ Métricas de Rendimiento Temporal

Tiempo Total (s) (segundos)

¿Qué mide? Tiempo total de ejecución del proceso de generación del conjunto.

Interpretación:

  • < 100s: Generación rápida
  • 100-300s: Tiempo moderado
  • > 300s: Proceso lento (puede ser aceptable para conjuntos grandes)

Ejemplo: Tiempo total = 69.45s significa que el proceso completo de generación del conjunto balanceado tomó aproximadamente 1.16 minutos.

⏱️ Nota: Incluye el tiempo de generación sintética + cálculo de métricas.

🔒 Métricas de Privacidad

Estas métricas evalúan el riesgo de exposición de información sensible y la capacidad de un atacante para inferir datos de los pacientes a partir del conjunto de datos sintéticos.

Distancia al Registro Más Cercano (≥ 0)

¿Qué mide? La distancia promedio entre cada registro sintético y su registro más cercano en el conjunto de datos original.

Interpretación:

  • Cerca de 0: Los datos sintéticos son muy similares a los originales → ⚠️ ALTO RIESGO de privacidad
  • 0.01 - 0.05: Similaridad moderada → Riesgo moderado
  • > 0.05: Buena separación de los datos originales → ✅ BAJO RIESGO de privacidad

Ejemplo: Distancia promedio = 0.015 en SMOTE indica que los registros sintéticos están relativamente cerca de los originales, lo que podría implicar un riesgo de privacidad moderado.

🔬

Metodología: Calculada utilizando la Distancia de Gower, la cual maneja internamente tipos de datos mixtos, normalizando las variables numéricas y penalizando diferencias categóricas para devolver un índice estandarizado entre 0 y 1.

💡

Recomendación: Valores < 0.01 deben ser evaluados con precaución. Idealmente, buscar valores > 0.02 para garantizar la privacidad.

Copias Exactas (≥ 0)

¿Qué mide? Número de registros sintéticos que son copias idénticas de registros en el conjunto de datos original.

Interpretación:

  • 0: Ninguna copia exacta → ✅ SEGURO
  • 1 - 10: Pocas copias → Riesgo bajo
  • 11 - 50: Copias moderadas → ⚠️ RIESGO MODERADO
  • > 50: Muchas copias → 🔴 ALTO RIESGO de reidentificación

Ejemplo: SMOTE RSB* Refinado genera 76 copias exactas de 8817 registros (0.86%), lo que representa un riesgo de privacidad que debe ser evaluado.

⚠️

Importante: La presencia de copias exactas es uno de los indicadores más críticos de fuga de datos. Idealmente, este valor debe ser 0.

Ataque de Inferencia de Membresía (MIA) (0 - 1.0)

¿Qué mide? Tasa de éxito (medida en AUC-ROC) de un atacante para determinar si un registro específico pertenece al conjunto de datos original.

Interpretación:

  • 0.5: Aleatorio (ideal) → ✅ PRIVACIDAD ÓPTIMA
  • 0.5 - 0.55: Riesgo bajo
  • 0.55 - 0.6: Riesgo moderado → ⚠️ PRIVACIDAD CUESTIONABLE
  • > 0.6: Riesgo alto → 🔴 PRIVACIDAD COMPROMETIDA

Ejemplo: MIA = 0.553 significa que el atacante tiene un éxito ligeramente superior al 50% aleatorio, lo que indica un riesgo de privacidad bajo/moderado.

🎯

Objetivo: Buscar valores lo más cercanos a 0.5. Valores > 0.6 indican que el conjunto sintético no protege adecuadamente la privacidad.

📝 Resumen Rápido para Selección

🏆
Para seleccionar el mejor conjunto:
  • Priorizar TabDSFidelity más alto
  • Buscar AUC-ROC y F1 altos
  • Valores de divergencia JS y KL cercanos a 0
  • P-valor de KS lo más cercano a 1.0 posible (>0.05)
  • Correlación > 0.9
⚖️
Balance entre calidad y tiempo:
  • Un TabDSFidelity > 8.0 indica excelente calidad
  • Tiempos de generación < 200s son aceptables
  • La Correlación > 0.95 asegura buena preservación de relaciones
🔒
Para garantizar la privacidad:
  • MIA lo más cercano a 0.5 (ideal)
  • Copias exactas = 0 (ideal) o lo más bajo posible
  • Distancia promedio > 0.02 para buena separación
  • Evaluar balance entre calidad (TabDSFidelity) y privacidad (MIA)

📥 Descargar conjuntos y código Python

Formatos incluidos: CSV.

📚 Cómo citar este conjunto

Díaz Bastida, M., Pérez Vázquez, R. A., & Bello Pérez, R. (2026). High-Fidelity Synthetic Dataset for Breast Cancer Diagnostic (Version 1). figshare. https://doi.org/10.6084/m9.figshare.32932448.v1