Heart Attack Classifier

Clasificador de riesgo de infarto con stacking de modelos, GridSearchCV e interfaz con ipywidgets.

Mi Rol
Data Scientist
Equipo
Eloy García Martínez (yo)
Tecnologías
Python scikit-learn Pandas Seaborn ipywidgets Jupyter
Timeline
2026

Contexto

Este ejercicio parte del dataset heart.csv con variables clínicas como edad, presión arterial en reposo, colesterol, frecuencia cardíaca máxima, dolor torácico y otras señales relevantes para evaluar riesgo cardiovascular.

El objetivo es construir un clasificador binario que prediga si una persona está en riesgo de sufrir un ataque al corazón (output = 1) o no (output = 0), priorizando una buena capacidad de detección de casos positivos.

Qué se hace en el notebook

  • Importación y exploración inicial del dataset con Pandas y visualización de correlaciones con heatmap de Seaborn.
  • Separación en entrenamiento y test, y preprocesado con un pipeline de imputación de media + estandarización.
  • Entrenamiento individual de tres modelos: Random Forest, SVM y Regresión Logística.
  • Comparación de rendimiento con accuracy y recall (TPR) para valorar calidad global y sensibilidad.
  • Construcción de un modelo de ensemble mediante StackingClassifier.
  • Tuning de hiperparámetros con GridSearchCV para optimizar el pipeline final.
  • Creación de una interfaz con ipywidgets para introducir variables del paciente y obtener predicción + probabilidad.

Modelado y selección

En la comparación inicial, el modelo SVM destaca con un accuracy aproximado del 86.89%, mostrando una separación sólida entre pacientes de bajo y alto riesgo en este dataset.

Después se integra un stacking con los tres modelos base para combinar sus fortalezas. El ajuste de hiperparámetros se aplica sobre Random Forest, SVM y meta-modelo logístico para buscar una configuración más robusta.

Conclusiones

  • El enfoque combinado (preprocesado + tuning + ensemble) mejora la capacidad predictiva frente al uso de un único modelo sin ajustar.
  • Se alcanza una puntuación superior a 0.88 en test tras la búsqueda de hiperparámetros, resultado sólido para un ejercicio académico.
  • La métrica de recall es clave en salud: detectar positivos es más importante que maximizar solo accuracy.
  • La interfaz con ipywidgets convierte el notebook en una mini herramienta interactiva útil para demos y validación rápida.

Nota

Este ejercicio es de carácter formativo. El modelo no sustituye evaluación clínica profesional ni está validado para uso médico real.

© 2026 Eloy García Martínez.