CD_33 Original + Derivados

CD_33: Default of Credit Card Clients (Taiwan)

Registro financiero de clientes para la predicción de probabilidad de impago (default). Integra variables demográficas y, crucialmente, una estructura temporal secuencial de 6 meses (abril-septiembre) aplanada: historial de estatus de pago (ordinal), montos de facturación y pagos realizados.

📈 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.79 0.94 0.86 156
Clase 1 0.40 0.14 0.20 44
Accuracy 0.77
Macro Avg 0.60 0.54 0.53 200
Weighted Avg 0.71 0.77 0.72 200
AUC-ROC: 0.59
F1-Score (weighted): 0.72
Accuracy: 0.77
➡️ Mejora
⬆ +0.11 AUC ⬆ +0.07 F1 ⬆ +0.03 Acc
🏆 MEJOR RENDIMIENTO

🔮 Conjunto Sintético

Clase Precisión Recall F1-Score Soporte
Clase 0 0.85 0.90 0.87 156
Clase 1 0.54 ⬆ +0.14 0.43 ⬆ +0.29 0.48 ⬆ +0.28 44
Accuracy 0.80 ⬆ +0.03
Macro Avg 0.70 ⬆ +0.10 0.66 ⬆ +0.12 0.68 ⬆ +0.15 200
Weighted Avg 0.78 ⬆ +0.07 0.80 ⬆ +0.03 0.79 ⬆ +0.07 200
AUC-ROC: 0.69 ⬆ +0.11
F1-Score (weighted): 0.79 ⬆ +0.07
Accuracy: 0.80 ⬆ +0.03

📊 Resumen de Mejoras en Clase Minoritaria (Clase 1)

🎯
Precisión
Original: 0.40
Sintético: 0.54
⬆ +0.14
📈
Recall
Original: 0.14
Sintético: 0.43
⬆ +0.29
⚖️
F1-Score
Original: 0.20
Sintético: 0.48
⬆ +0.28

📚 Fuente Original del Conjunto

Default of Credit Card Clients Dataset

v1.0
Yeh, I. & Lien, C. H.
Publicado: 2009

📄 Resumen (Abstract)

El conjunto de datos de Incumplimiento de Pagos de Clientes de Tarjetas de Crédito se centra en el caso de clientes con incumplimiento de pagos en Taiwán. La investigación compara la precisión predictiva de la probabilidad de incumplimiento entre seis métodos de minería de datos (minería de datos). Desde la perspectiva de la gestión de riesgos, el resultado de la precisión predictiva de la probabilidad estimada de incumplimiento es más valioso que el resultado binario de clasificación (clientes creíbles o no creíbles). El objetivo es predecir si un cliente incumplirá con el pago de su tarjeta de crédito en el próximo mes (variable Y).

🔬 Contexto y Motivación

La predicción de incumplimiento de pagos es un problema crítico en la gestión de riesgos crediticios para las instituciones financieras. Esta investigación se centra en:

  • Comparar la precisión predictiva de seis técnicas de minería de datos
  • Estimar la probabilidad real de incumplimiento mediante el Método de Suavizado por Ordenamiento (Sorting Smoothing Method)
  • Identificar que la red neuronal artificial es el único método que puede estimar con precisión la probabilidad real de incumplimiento
📊 Métodos de Minería de Datos Comparados
  • Redes Neuronales Artificiales (Artificial Neural Network)
  • Árboles de Decisión
  • Regresión Logística
  • Máquinas de Vectores de Soporte (SVM)
  • Análisis Discriminante
  • Naïve Bayes

La red neuronal artificial demostró el mayor coeficiente de determinación (R²), con intercepto cercano a cero y coeficiente de regresión cercano a uno.

📊 Descripción de Datos

El dataset contiene 30,000 instancias con 23 atributos (22 variables predictoras y 1 variable objetivo). Todas las características son de tipo entero y no presentan valores faltantes. Los datos corresponden a clientes de tarjetas de crédito en Taiwán.

📋 Variables del Dataset
Variable Tipo Descripción Categorías / Unidades
A. Identificador (A excluir del modelo)
ID Entero Identificador único del cliente Sin valor predictivo. Excluir del modelo.
B. Datos Demográficos y Crediticios
X1 (LIMIT_BAL) Entero Monto de crédito otorgado Dólares taiwaneses (NT$)
X2 (SEX) Entero Género 1 = Hombre, 2 = Mujer
X3 (EDUCATION) Entero Nivel educativo 1 = Posgrado, 2 = Universidad, 3 = Preparatoria, 4 = Otros
X4 (MARRIAGE) Entero Estado civil 1 = Casado, 2 = Soltero, 3 = Otros
X5 (AGE) Entero Edad del cliente años
C. Historial de Pagos (PAY_0 a PAY_6)
X6 (PAY_0) Entero Estado de pago en septiembre 2005 -1 = Pagado a tiempo, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
X7 (PAY_2) Entero Estado de pago en agosto 2005 -1 = Pagado a tiempo, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
X8 (PAY_3) Entero Estado de pago en julio 2005 -1 = Pagado a tiempo, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
X9 (PAY_4) Entero Estado de pago en junio 2005 -1 = Pagado a tiempo, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
X10 (PAY_5) Entero Estado de pago en mayo 2005 -1 = Pagado a tiempo, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
X11 (PAY_6) Entero Estado de pago en abril 2005 -1 = Pagado a tiempo, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
D. Montos de Facturación (BILL_AMT1 a BILL_AMT6)
X12-X17 Entero Monto del estado de cuenta (NT$) X12 = Septiembre 2005, X13 = Agosto 2005, ..., X17 = Abril 2005
E. Montos de Pago (PAY_AMT1 a PAY_AMT6)
X18-X23 Entero Monto de pago realizado (NT$) X18 = Septiembre 2005, X19 = Agosto 2005, ..., X23 = Abril 2005
F. Variable Objetivo
Y Binaria (Target) Incumplimiento de pago el próximo mes 1 = Sí (incumplió), 0 = No (no incumplió)

📋 Características del Dataset

  • Tipo de problema: Clasificación binaria (Incumplimiento vs. No incumplimiento)
  • Dimensión: Multivariante
  • Tipo de características: Enteras (todas)
  • Valores faltantes: No
  • Área de aplicación: Finanzas, Gestión de Riesgos, Banca
  • Período de datos: Abril - Septiembre 2005
  • País: Taiwán
  • Moneda: Dólar taiwanés (NT$)

📖 Publicación Introductoria

El artículo fundamental que describe la comparación de técnicas de minería de datos para la precisión predictiva de la probabilidad de incumplimiento es:

Yeh, I., & Lien, C. H. (2009). The comparisons of data mining techniques for the predictive accuracy of probability of default of credit card clients. Expert Systems with Applications, 36(2), 2473-2480. https://doi.org/10.1016/j.eswa.2009.02.041

⚖️ Ética y Privacidad

El conjunto de datos ha sido anonimizado para proteger la privacidad de los clientes de tarjetas de crédito. La variable ID es un identificador numérico sin relación con información personal 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 clientes.

📋 Notas de Uso

Este conjunto de datos es ampliamente utilizado en gestión de riesgos crediticios y clasificación. Se recomienda:

  • Excluir la variable ID del modelado por ser un identificador único sin valor predictivo
  • La variable X2 (SEX) está codificada como 1=Hombre, 2=Mujer (codificación alternativa)
  • Las variables X3 (EDUCATION) y X4 (MARRIAGE) son ordinales y pueden tratarse como categorías
  • Las variables PAY_0 a PAY_6 (X6-X11) tienen escala: -1 = pago puntual, 1 = 1 mes retraso, ..., 9 = ≥9 meses retraso
  • Los montos de facturación y pago (X12-X23) están en dólares taiwaneses (NT$)
  • La variable Y es la variable objetivo: 1 = incumplió, 0 = no incumplió
  • Estandarizar/normalizar variables numéricas (X1, X5, X12-X23) para modelos sensibles a la escala
  • Las variables X6-X11 pueden codificarse como categóricas o escalares según el enfoque
  • Utilizar validación cruzada estratificada para evaluar el rendimiento del modelo
  • Considerar el posible desbalanceo de clases en la variable objetivo
  • El estudio original comparó 6 métodos de minería de datos, siendo la red neuronal artificial el más preciso para estimar la probabilidad real de incumplimiento

💡 Importancia en Gestión de Riesgos

La predicción de incumplimiento de pagos es fundamental para la gestión de riesgos crediticios en instituciones financieras. Las implicaciones incluyen:

  • Evaluación de riesgos para la aprobación de créditos y tarjetas
  • Asignación de límites de crédito apropiados según el perfil de riesgo
  • Detección temprana de clientes en situación de dificultad financiera
  • Reducción de pérdidas por incumplimiento de pagos
  • Cumplimiento regulatorio (Basilea II/III, requisitos de capital)

El estudio de Yeh y Lien (2009) demostró que la estimación precisa de la probabilidad de incumplimiento es más valiosa que la clasificación binaria, ya que permite una diferenciación más fina del riesgo y una mejor asignación de recursos para la gestión de cobranzas.

📖 Cómo citar la fuente original

Yeh, I., & Lien, C. H. (2009). The comparisons of data mining techniques for the predictive accuracy of probability of default of credit card clients. Expert Systems with Applications, 36(2), 2473-2480. https://doi.org/10.1016/j.eswa.2009.02.041

📚 Referencias Adicionales

  • Yeh, I., & Lien, C. H. (2009). The comparisons of data mining techniques for the predictive accuracy of probability of default of credit card clients. Expert Systems with Applications, 36(2), 2473-2480. https://doi.org/10.1016/j.eswa.2009.02.041
  • UCI Machine Learning Repository - Default of Credit Card Clients. https://archive.ics.uci.edu/ml/datasets/default+of+credit+card+clients
  • Altman, E. I. (1968). Financial ratios, discriminant analysis and the prediction of corporate bankruptcy. Journal of Finance, 23(4), 589-609.
  • Basel Committee on Banking Supervision. (2004). Basel II: International Convergence of Capital Measurement and Capital Standards.

🔄 Transformaciones Aplicadas

Modificaciones realizadas al conjunto original (Default of Credit Card Clients - Taiwan)

  • Limpieza inicial y eliminación de variables no predictivas:
    • Eliminación de la columna ID (identificador único de cliente) por no aportar valor predictivo y para evitar sobreajuste.
    • Renombramiento de la variable objetivo de 'default payment next month' a 'default' para mayor claridad semántica.
  • Codificación de la variable objetivo:
    • Preservación de default en su formato binario original: 0 = No Default (Cliente pagó), 1 = Default (Cliente incumplió el pago el próximo mes).
    • Documentación detallada en leyenda sobre el objetivo de predicción de incumplimiento.
  • Limpieza y agrupación de variables demográficas:
    • SEX: Preservación de codificación original (1 = Male, 2 = Female) con documentación en leyenda.
    • EDUCATION: Agrupación de valores atípicos (0, 4, 5, 6) en la categoría '4 = Others' para mantener consistencia con la escala original (1=Graduate School, 2=University, 3=High School, 4=Others).
    • MARRIAGE: Agrupación de valores atípicos (0 y 3) en la categoría '3 = Others' para mantener consistencia con la escala original (1=Married, 2=Single, 3=Others).
  • Documentación de variables de historial de pago:
    • Variables PAY_0, PAY_2, PAY_3, PAY_4, PAY_5, PAY_6: Corresponden al historial de pago de Septiembre a Abril 2005 (en orden cronológico inverso).
    • Escala de medición documentada: -2 = Sin consumo/Inactivo, -1 = Pago debidamente, 0 = Pago renovable/parcial, 1-9 = Retraso en el pago por n meses.
    • Nota metodológica: PAY_0 corresponde a Septiembre (el más reciente).
  • Documentación de variables de facturación y pagos:
    • Variables BILL_AMT1 a BILL_AMT6: Monto del estado de cuenta en dólares NT (puede ser negativo si hay saldo a favor).
    • Variables PAY_AMT1 a PAY_AMT6: Monto pagado en dólares NT.
    • Documentación del significado de variables continuas para interpretación clínica/financiera.
  • Generación de documentación completa:
    • Creación del archivo leyenda_default_credit.txt con semántica completa de la variable objetivo y todas las variables predictoras.
    • Documentación detallada de la escala de medición de variables de historial de pago (-2 a 9).
    • Descripción de variables demográficas (SEX, EDUCATION, MARRIAGE) y su codificación.
    • Contextualización del dataset: clientes de tarjetas de crédito en Taiwán (Abril-Septiembre 2005).
  • Preservación de la estructura y calidad de datos:
    • Mantenimiento de las 30,000 instancias (clientes) sin eliminación de filas.
    • Dataset final con 23 variables predictoras (demográficas, historial de pago, facturación y pagos) y 1 variable objetivo binaria.
    • Guardado en formato CSV con separador punto y coma (;) para compatibilidad internacional.

📊 Resultado: Dataset de 30,000 clientes de tarjetas de crédito en Taiwán con 23 variables predictoras (demográficas, historial de pago de 6 meses, estados de cuenta y montos pagados) y 1 variable objetivo binaria (default). Desbalance moderado (~78% no default / ~22% default) — escenario ideal para validación de técnicas de generación de datos sintéticos y evaluación del índice TabDSFidelity en contextos de riesgo crediticio y predicción de incumplimiento de pago, donde el historial de pagos y las variables financieras mensuales son determinantes.

💳 Fuente: Default of Credit Card Clients Dataset (UCI Machine Learning Repository) - Datos de clientes de tarjetas de crédito en Taiwán (Abril-Septiembre 2005).

📅 Variables temporales: Historial de pago de 6 meses (PAY_0 a PAY_6) donde PAY_0 es el más reciente (Septiembre 2005) y PAY_6 el más antiguo (Abril 2005).

📊 Variables financieras: BILL_AMT1-6 (montos facturados) y PAY_AMT1-6 (montos pagados) en dólares NT (Nuevo Dólar Taiwán).

📁 Leyenda disponible: Archivo leyenda_default_credit.txt con mapeo semántico completo de la variable objetivo, variables demográficas (SEX, EDUCATION, MARRIAGE), escala de historial de pago (-2 a 9), y variables de facturación/pagos.

🎯 Variable objetivo: default (1 = Cliente incumplió el pago el próximo mes, 0 = Cliente pagó).

🧹 Limpieza aplicada: Eliminación de ID, agrupación de valores atípicos en EDUCATION (0,5,6 → 4) y MARRIAGE (0,3 → 3), renombrado de target para claridad semántica.

📋 Diccionario de Datos Detallado

Variable Descripción Financiera Tipo Rango / Categorías Unidad ¿Objetivo?
SEX Género del cliente Categórico 1: Masculino, 2: Femenino N/A No
EDUCATION Nivel educativo (ordinal) Categórico 1: Posgrado, 2: Universidad, 3: Bachillerato, 4: Otros N/A No
MARRIAGE Estado civil Categórico 1: Casado, 2: Soltero, 3: Otros N/A No
PAY_0 Estado de pago - Septiembre 2005 (más reciente) Categórico -2: Sin consumo, -1: Pagado, 0: Revolving, 1-9: Retraso N/A No
PAY_2 Estado de pago - Agosto 2005 Categórico -2: Sin consumo, -1: Pagado, 0: Revolving, 1-9: Retraso N/A No
PAY_3 Estado de pago - Julio 2005 Categórico -2: Sin consumo, -1: Pagado, 0: Revolving, 1-9: Retraso N/A No
PAY_4 Estado de pago - Junio 2005 Categórico -2: Sin consumo, -1: Pagado, 0: Revolving, 1-9: Retraso N/A No
PAY_5 Estado de pago - Mayo 2005 Categórico -2: Sin consumo, -1: Pagado, 0: Revolving, 1-9: Retraso N/A No
PAY_6 Estado de pago - Abril 2005 (más antiguo) Categórico -2: Sin consumo, -1: Pagado, 0: Revolving, 1-9: Retraso N/A No
LIMIT_BAL Límite de crédito otorgado Numérico 10,000 - 700,000 NT$ No
AGE Edad del cliente Numérico 21 - 65 años No
BILL_AMT1 Monto de factura - Septiembre 2005 Numérico -1,678 - 546,741 NT$ No
BILL_AMT2 Monto de factura - Agosto 2005 Numérico -3,355 - 535,509 NT$ No
BILL_AMT3 Monto de factura - Julio 2005 Numérico -61,506 - 548,020 NT$ No
BILL_AMT4 Monto de factura - Junio 2005 Numérico -4,571 - 530,672 NT$ No
BILL_AMT5 Monto de factura - Mayo 2005 Numérico -4,954 - 440,000 NT$ No
BILL_AMT6 Monto de factura - Abril 2005 Numérico -51,443 - 402,289 NT$ No
PAY_AMT1 Monto pagado - Septiembre 2005 Numérico 0 - 423,903 NT$ No
PAY_AMT2 Monto pagado - Agosto 2005 Numérico 0 - 415,552 NT$ No
PAY_AMT3 Monto pagado - Julio 2005 Numérico 0 - 169,267 NT$ No
PAY_AMT4 Monto pagado - Junio 2005 Numérico 0 - 313,094 NT$ No
PAY_AMT5 Monto pagado - Mayo 2005 Numérico 0 - 158,064 NT$ No
PAY_AMT6 Monto pagado - Abril 2005 Numérico 0 - 204,297 NT$ No
default Incumplimiento de pago próximo mes (objetivo) Binario 0: No (Pagó), 1: Sí (Default) N/A
24 Variables totales
13 Numéricas
10 Categóricas
1 Binarias
Objetivo: Default (default)
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 Incumplimiento de Tarjetas de Crédito. Comprender estas codificaciones es fundamental para la correcta interpretación de los resultados financieros.

SEX Categórica
Código Significado
1Male (Masculino)
2Female (Femenino)
EDUCATION Categórica
Código Significado
1Graduate School (Posgrado)
2University (Universidad)
3High School (Bachillerato)
4Others (Otros - incluye desconocido)
📊

Orden lógico: Mayor nivel educativo suele correlacionar con mejor capacidad de pago.

MARRIAGE Categórica
Código Significado
1Married (Casado)
2Single (Soltero)
3Others (Otros - incluye divorciado/viudo)
PAY_0, PAY_2, PAY_3, PAY_4, PAY_5, PAY_6 Categórica

Estado de pago mensual (Abril - Septiembre 2005)

Código Significado
-2 Sin consumo / Inactivo (No se realizaron compras)
-1 Pago debido (Pay duly - Pago completo y a tiempo)
0 Pago renovable (Revolving - Pago parcial, se difiere el resto)
1-9 Retraso en el pago por N meses (1 = 1 mes de atraso, etc.)
🚨

Correlación temporal: PAY_0 es el más reciente (Septiembre). PAY_6 es el más antiguo (Abril). El retraso en meses recientes es el mejor predictor de default.

💡

Interpretación: Valores negativos (-1, -2) indican buen comportamiento. 0 indica pago mínimo. 1-9 indica morosidad creciente.

Variables Binarias Binario

Formato: 0 = No / Pago, 1 = Sí / Default

default 🎯 Variable Objetivo: Incumplimiento de pago (0: No, 1: Sí)
ℹ️

Nota: Única variable binaria en el dataset.

📊
Variables categóricas: 10
  • SEX (2 categorías)
  • EDUCATION (4 categorías - ordinal)
  • MARRIAGE (3 categorías)
  • PAY_0 a PAY_6 (6 variables con escala común -2 a 9)
🎯
Variables binarias: 1
  • 🎯 default (Objetivo - Incumplimiento de pago)
📈
Variables numéricas: 13
  • LIMIT_BAL, AGE
  • BILL_AMT1 a BILL_AMT6 (6 variables)
  • PAY_AMT1 a PAY_AMT6 (6 variables)
⚠️
Recomendaciones Financieras:
  • Mejor predictor: PAY_0 (estado de pago más reciente)
  • Patrón de riesgo: Clientes con PAY = 2 o más tienen alto riesgo de default
  • Límite de crédito: LIMIT_BAL mayor no siempre indica menor riesgo (puede indicar sobregiro)
  • Pago mínimo: PAY = 0 (revolving) es un indicador de riesgo moderado
  • Facturas crecientes: BILL_AMT que aumenta mes a mes sugiere problemas financieros
  • Pagos bajos: PAY_AMT consistentemente bajo vs. BILL_AMT indica riesgo

🔬 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

  • PAY_2 >= 2 → PAY_0 ≠ -1 (Retraso en Agosto → no pago puntual en Septiembre)
  • PAY_3 >= 2 → PAY_2 ≠ -1 (Retraso en Julio → no pago puntual en Agosto)
  • PAY_4 >= 2 → PAY_3 ≠ -1 (Retraso en Junio → no pago puntual en Julio)
  • PAY_5 >= 2 → PAY_4 ≠ -1 (Retraso en Mayo → no pago puntual en Junio)
  • PAY_6 >= 2 → PAY_5 ≠ -1 (Retraso en Abril → no pago puntual en Mayo)
  • PAY_0 == -2 → BILL_AMT1 = 0 (Sin consumo en Septiembre → factura 0)
  • PAY_2 == -2 → BILL_AMT2 = 0 (Sin consumo en Agosto → factura 0)
  • BILL_AMT2 ≤ 0 → PAY_2 ≠ 1 (Factura ≤0 → sin retraso de 1 mes)
  • BILL_AMT3 ≤ 0 → PAY_3 ≠ 1 (Factura ≤0 → sin retraso de 1 mes)
  • PAY_0 >= 2 → default = 1 (Retraso ≥2 meses → default inminente)
  • PAY_0 ≤ 0 → default = 0 (Pago puntual → sin default)
  • EDUCATION == 1 (Posgrado) → AGE ≥ 22
  • AGE ≤ 20 → MARRIAGE = 2 (Soltero) (Menor de 20 → improbable casado)
  • PAY_AMT1 == 0 → PAY_0 ≠ -1 (Pago 0 en Septiembre → sin pago puntual)

⚙️ 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(256, 256)
discriminator_dim(256, 256)
embedding_dim128
l2scale1e-05

📊 Hiperparámetros TVAE

epochs 500
batch_size 50
embedding_dim 128
compress_dims (128, 128)
decompress_dims (128, 128)
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 934 0.691 0.757 0.775 8.203 0.175 0.440 0.029 0.969 47.379 0 934 0.457 🏆
Smote 1 934 0.658 0.707 0.700 2.726 0.328 0.469 0.049 0.977 46.286 0.026 600 0.474
Borderline SMOTE 1 934 0.654 0.726 0.725 3.666 0.328 0.495 0.056 0.975 47.470 0.029 601 0.496
ADASYN 1.009 930 0.668 0.724 0.715 4.213 0.329 0.616 0.051 0.979 46.553 0.027 602 0.463
SMOTE RSB* Adaptado 1.170 866 0.701 0.739 0.745 7.071 0.298 0.674 0.028 0.976 45.194 0.027 600 0.456
SMOTE RSB* Adaptado + Reglas 1.170 866 0.677 0.738 0.740 5.953 0.299 0.704 0.026 0.979 45.149 0.027 600 0.416
OOF PSO para Balanceo 1 934 0.691 0.758 0.795 5.440 0.335 0.000 0.239 0.634 50.779 0.161 600 0.463
OOF PSO para Balanceo + Reglas 3.151 934 0.661 0.773 0.795 4.278 0.351 0.000 0.266 0.588 49.147 0.182 464 0.460
Mejor seleccionado: Random Oversampling (TabDSFidelity: 8.203, AUC: 0.691, F1: 0.757, MIA: 0.457). 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.702 8104 0.672 0.738 0.780 8.690 0.499 0.360 0.115 0.938 77.986 0.077 1 0.508
SMOTE RSB* + Ruido Gaussiano + Reglas 2.360 8104 0.683 0.765 0.790 9.110 0.498 0.255 0.130 0.937 216.718 0.082 1 0.469 🏆
CTGAN 1.625 10000 0.690 0.593 0.555 4.685 0.528 0.004 0.144 0.892 438.708 0.113 0 0.469
CTGAN + Reglas del Dominio 1.444 10000 0.682 0.756 0.760 7.830 0.527 0.000 0.130 0.891 602.050 0.110 0 0.486
TVAE 1.202 10000 0.634 0.699 0.680 4.173 0.729 0.000 0.031 0.942 255.234 0.050 0 0.510
TVAE + Reglas del Dominio 3.006 10000 0.666 0.768 0.775 6.869 0.724 0.000 0.022 0.940 422.564 0.049 0 0.440
OOF PSO para Aumento 1 10000 0.686 0.746 0.740 5.147 0.746 0.000 1.266 0.666 123.037 0.299 0 0.544
OOF PSO para Aumento + Reglas 1.338 10000 0.684 0.777 0.800 5.951 0.738 0.000 1.300 0.669 284.586 0.300 0 0.545
SMOTE RSB* Refinado 1.355 8691 0.646 0.731 0.770 7.345 0.514 0.281 0.116 0.932 80.725 0.087 1 0.452
SMOTE RSB* Refinado + Reglas 2.185 8691 0.641 0.773 0.795 7.441 0.513 0.168 0.127 0.932 227.641 0.091 1 0.432
Mejor seleccionado: SMOTE RSB* + Ruido Gaussiano + Reglas del Dominio (TabDSFidelity: 9.110, AUC: 0.683, F1: 0.765, MIA: 0.469). 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 9038 0.697 0.722 0.765 7.172 0.467 0.429 0.104 0.941 150.523 0.070 216 0.460
SMOTE RSB* + Ruido Gaussiano + Reglas 2.139 9038 0.682 0.762 0.790 7.965 0.466 0.311 0.116 0.940 289.001 0.076 217 0.483 🏆
CTGAN 1.556 10934 0.703 0.702 0.690 4.270 0.484 0.008 0.130 0.898 525.791 0.104 176 0.474
CTGAN + Reglas del Dominio 1.398 10934 0.731 0.765 0.775 7.895 0.483 0.000 0.117 0.897 686.094 0.102 176 0.450
TVAE 1.183 10934 0.664 0.742 0.735 4.582 0.656 0.000 0.027 0.948 344.696 0.048 176 0.469
TVAE + Reglas del Dominio 2.690 10934 0.688 0.772 0.780 6.626 0.652 0.000 0.018 0.947 509.275 0.047 176 0.447
OOF PSO para Aumento 1 10934 0.648 0.779 0.795 4.436 0.661 0.000 0.937 0.688 209.836 0.272 176 0.446
OOF PSO para Aumento + Reglas 1.305 10934 0.695 0.765 0.785 4.869 0.654 0.000 0.966 0.689 366.669 0.273 176 0.476
SMOTE RSB* Refinado 1.315 9625 0.631 0.697 0.735 4.377 0.482 0.322 0.105 0.935 158.232 0.081 200 0.429
SMOTE RSB* Refinado + Reglas 2.012 9625 0.663 0.777 0.800 7.827 0.481 0.207 0.114 0.935 304.405 0.085 200 0.475
Mejor seleccionado: SMOTE RSB* + Ruido Gaussiano + Reglas del Dominio (TabDSFidelity: 7.965, AUC: 0.682, F1: 0.762, MIA: 0.483). Nota: Ratio <= 1.5 = Conjunto Balanceado.

📈 Diagrama del Proceso de Generación

Conjunto Original
CD_33
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 + Reglas del Dominio
⭐ 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 Credit Card Default Prediction - Taiwan (Version 0). figshare. https://doi.org/10.6084/m9.figshare.32939219