// Portafolio de Datos e Inteligencia Artificial

Alejandro Belda Fernández

Ingeniero Informático · Datos e IA · Python · SQL · Machine Learning

Una colección de mis proyectos de software, ingeniería de datos e Inteligencia Artificial: el código, los resultados y lo aprendido en el proceso.

// Sobre mí

Trayectoria

Graduado en Ingeniería Informática por la Universidad de Murcia con un Máster en Inteligencia Artificial. Durante un año trabajé como personal docente e investigador (PDI) en la Facultad de Informática de la Universidad de Murcia (UMU), llevando a cabo el procesamiento de datos complejos, el desarrollo de modelos predictivos, el desarrollo de software libre y la gestión de infraestructura de servidores Linux. Esta experiencia me dio una sólida base en calidad de datos, rigor metodológico y trabajo con conjuntos de datos complejos del mundo real. Actualmente busco activamente oportunidades en el sector tecnológico.

Disfruto del ciclo completo de desarrollo y datos: comprender el problema de negocio, limpiar y transformar entradas complejas, construir modelos algorítmicos y backends robustos, y comunicar los resultados con claridad. Me preocupo por la evaluación honesta, las decisiones documentadas y las conclusiones ejecutables para las partes interesadas.

Disponibilidad
Inmediata
Puesto buscado
Ingeniero de Datos e Inteligencia Artificial
Educación
Ingeniería Informática y Máster en Inteligencia Artificial — Universidad de Murcia
Experiencia previa
1 año como investigador (PDI) en la Facultad de Informática (UMU)
Idiomas
Español (nativo) · Inglés (B2)
Contacto
alejandrobeldafernandez@gmail.com

// Habilidades

Stack de trabajo

Herramientas e Informes

PandasNumPyMatplotlib SeabornMetabaseExcel

Tecnologías e Inteligencia Artificial

PythonMachine LearningDeep Learning PLN (NLP)Modelado PredictivoMLOps

Bases de Datos y Pipelines

SQLPipelines ETL
// Código Abierto

Publicado independientemente

PyPI

calm-data-generator

Librería de Python para la manipulación, generación de datos tabulares sintéticos y análisis de calidad, desarrollada durante mi etapa como investigador. Agrupa varios backends de generación bajo una interfaz unificada, simula el cambio de concepto (concept drift) para probar la degradación de los modelos y produce un informe automatizado de calidad de datos para cada dataset generado.


// Registro Completo

Los diez proyectos, entrada por entrada

REG · 01 Predicción de Lesiones en Accidentes de Tráfico de Madrid ROC AUC 0.873
+
Tipo
Clasificación
Stack
Python · pandas · scikit-learn · CatBoost · Optuna · SHAP
Dataset
Datos abiertos del Ayuntamiento de Madrid (2019–2023)

Predice si un accidente de tráfico en Madrid resultará en al menos una persona herida, utilizando información disponible en el momento del reporte. Cubre agregación de persona a accidente, ingeniería de características, ajuste con Optuna y explicabilidad con SHAP.

Resultados (CatBoost): ROC AUC 0.873 · Precisión Balanceada 0.801 · Macro F1 0.73

En la práctica

De cada 10 accidentes predichos con heridos, entre 8 y 9 son correctos. Los errores restantes son principalmente falsas alarmas en lugar de heridos no detectados, el tipo de error más seguro en un contexto de emergencias.

REG · 02 Predicción de Precios Inmobiliarios en Madrid R² 0.897
+
Tipo
Regresión
Stack
Python · pandas · scikit-learn · XGBoost · Optuna · SHAP
Dataset
Kaggle — Ofertas de inmuebles residenciales en Madrid

Predice el precio de venta de propiedades residenciales en Madrid a partir de características físicas y ubicación. Incluye TargetEncoder para la codificación de distritos, ajuste con Optuna, intervalos de confianza bootstrap y explicabilidad con SHAP.

Resultados (XGBoost): RMSE €69,568 · R² 0.897 · MAPE 15.27%

En la práctica

En promedio, el precio predicho está dentro del 15% del precio real de venta. La superficie construida y el distrito se amplifican mutuamente: un piso grande en Chamberí vale proporcionalmente mucho más que un piso del mismo tamaño en Vallecas.

REG · 03 Análisis de Personalidad de Clientes Silhouette 0.24
+
Tipo
Clustering No Supervisado
Stack
Python · pandas · scikit-learn · umap-learn
Dataset
Kaggle — Customer Personality Analysis

Segmenta a los clientes en 3 perfiles basados en datos demográficos, de gasto y de respuesta a campañas. Incluye detección de valores atípicos, PCA, K-Means con selección por Elbow/Silhouette y visualización con UMAP.

Resultados (K-Means K=3 + PCA): Coeficiente Silhouette 0.24 · 3 segmentos identificados

En la práctica

Los clientes premium gastan 1.274 € de media sin necesitar descuentos. Los buscadores de ofertas compran 3,4 veces más con promociones, donde el presupuesto de descuento obtiene mayor ROI. Aplicar la misma campaña a los tres grupos es la peor asignación del gasto de marketing.

REG · 04 MLOps Cancelación de Clientes en Telecomunicaciones ROC-AUC 0.84
+
Tipo
Pipeline MLOps · Clasificación Binaria
Stack
scikit-learn · Optuna · MLflow · Prefect · FastAPI · Evidently AI · Docker · Terraform
Dataset
Kaggle — IBM Telco Customer Churn

Ciclo de vida de producción completo: validación de datos, ajuste con Optuna (150 pruebas), seguimiento con MLflow, orquestación con Prefect, monitoreo de deriva, reentrenamiento automatizado y un endpoint REST con FastAPI.

Resultados (Random Forest + Optuna): ROC-AUC 0.84 · Precisión Balanceada 0.76 · Exhaustividad (churn) 0.76

En la práctica

El modelo identifica correctamente el 76% de los clientes que cancelarán antes de que lo hagan. El valor real está en la infraestructura: el pipeline se reentrena automáticamente solo cuando más del 40% de las características sufren deriva, y solo despliega un nuevo modelo si supera al actual.

REG · 05 Predicción de Ventas en Tiendas RMSLE 0.381
+
Tipo
Predicción de Series Temporales · Regresión de Datos de Panel
Stack
pandas · statsmodels · linearmodels · LightGBM · XGBoost · Optuna · SHAP
Dataset
Kaggle — Corporación Favorita (Ecuador)

Predicción end-to-end sobre un panel de ventas minoristas de 3 millones de filas (1.782 series de tienda × familia de producto a lo largo de 4.5 años). Incluye diagnósticos de series temporales clásicas, una línea base PanelOLS y modelos de gradient boosting con validación cruzada temporal personalizada.

Resultados (XGBoost + Optuna): RMSLE 0.381 · R² 0.977 · ~28% mejor que la línea base simple

En la práctica

Las predicciones dependen principalmente del impulso de ventas reciente. La palanca de alto impacto que el negocio realmente controla son las promociones, por lo que el modelo funciona como un simulador de escenarios antes de realizar un gasto.

REG · 06 Análisis de Ventas en Cafeterías SQL · 12 preguntas
+
Tipo
EDA · Inteligencia de Negocio
Stack
PostgreSQL · Google Sheets · Metabase · Google Slides
Dataset
Maven Analytics — Coffee Shop Sales (NYC)

Análisis de ventas de una cadena ficticia de tres cafeterías en Nueva York. Limpieza con SQL, 12 preguntas de negocio respondidas íntegramente en SQL, un cuadro de mando en Metabase y una presentación de narrativa de datos.

Hallazgos clave: los ingresos casi se duplicaron de enero a junio. El café y el té generan el 66% de los ingresos. Solo 11 tipos de productos generan el 80% de los ingresos (regla de Pareto).

En la práctica

Un propietario puede usar esto para decidir qué productos promocionar, optimizar los turnos del personal en horas puntas y diseñar campañas para los meses de menor actividad.

REG · 07 Reseñas de Amazon en Español Macro F1 0.765
+
Tipo
PLN · Aprendizaje Profundo · Recuperación de Información
Stack
PyTorch · Hugging Face Transformers · ChromaDB
Dataset
Amazon Reviews Multi — Subconjunto en español (208.899 reseñas)

Un clasificador de sentimiento (línea base TF-IDF vs. BETO ajustado) y un sistema RAG que responde preguntas sobre el corpus, citando reseñas reales. Comparativa formal A/B con McNemar, bootstrap y análisis de coste por predicción.

Resultados: BETO alcanza 0.765 de Macro F1 frente a 0.725 de la línea base (p = 1.3e-12), pero cuesta 1.009 veces más por predicción.

En la práctica

El clasificador indica cuántos clientes están insatisfechos y dónde; el sistema RAG explica por qué. Etiquetar todo el índice toma 10 segundos con la línea base frente a 2.8 horas con BETO: el coste determina la arquitectura.

REG · 08 Sistema de Recomendación de Películas Precisión@5 42.4%
+
Tipo
Sistemas de Recomendación · Factorización de Matrices
Stack
pandas · scikit-learn · Surprise (SVD) · Gradio
Dataset
The Movies Dataset — 7.818 películas, ~100.000 valoraciones

Tres sistemas comparados sobre el mismo catálogo: basado en contenido, filtrado colaborativo basado en ítems y SVD. Evaluados con Precisión@5/Exhaustividad@5, documentando el arranque en frío y la cobertura en lugar de combinarlos en una sola clasificación.

Resultados: el filtrado colaborativo supera por 7-8x, pero solo cubre el 43% del catálogo con suficiente historial de valoraciones.

En la práctica

Los tres modelos son complementarios, no competidores. Un producto real necesita los tres, además de una alternativa explícita para el 57% del catálogo que el filtrado colaborativo y SVD no pueden alcanzar.

REG · 09 Clasificación de Imágenes de Productos de Moda Precisión 99%
+
Tipo
Visión por Computador · Transfer Learning · Grad-CAM
Stack
PyTorch · torchvision · Grad-CAM
Dataset
Fashion Product Images — 43.946 productos

EfficientNetB0 y ResNet50 comparados en la misma tarea de clasificación, interpretados con Grad-CAM en lugar de dejarlos como una caja negra. 3 de las 7 categorías originales fueron descartadas por falta de datos suficientes.

Resultados: ResNet50 supera a EfficientNetB0 en cada clase y métrica (99% vs. 97% de precisión).

En la práctica

Accesorios y Ropa representan el 63% de todos los errores: Grad-CAM muestra que la atención del modelo se centra en el accesorio en lugar de la prenda etiquetada, un modo de fallo específico y comprendido, no ruido aleatorio.

REG · 10 Generador Automatizado de Reportes de Noticias Autoalojado
+
Tipo
Web Scraping · Orquestación · LLM Local
Stack
Playwright · Prefect · SQLite · Qwen2.5 · Docker · Tailscale Funnel
Fuente
Sitemap de RTVE Google News

Pipeline completo verificado contra el servicio real en cada paso, no sobre su documentación. El destino de despliegue planificado (Hugging Face Spaces) no resultó viable, por lo que el proyecto terminó autoalojado mediante Docker + Tailscale Funnel.

Resultado: un informe diario funcional con citas de fuentes en cada entrada.

En la práctica

El cuadro de mando solo está accesible mientras la máquina local esté encendida, no 24/7: la compensación honesta de un despliegue genuinamente gratuito.

EXTRA Nube: Inferencia ML Serverless en AWS y Azure Serverless
+
Tipo
Despliegue en la Nube · Arquitectura Serverless
Stack
AWS S3 · Lambda · API Gateway · Azure Blob Storage · Azure Functions
Dataset
Iris (AWS) · Diabetes (Azure) — casos de estudio mínimos

Dos proyectos pequeños y autosuficientes que demuestran habilidades prácticas en ambas nubes: modelos servidos a través de un endpoint HTTP público, sin servidores que administrar. El foco está en la arquitectura y los problemas reales resueltos en el camino (permisos IAM, límites de paquetes, restricciones de región).