- PYTORCH
- TRANSFORMERS
- NLP
Transformer from scratch

Modelo de lenguaje tipo GPT implementado desde cero en PyTorch: atención multi-cabeza, máscara causal y bloques residuales escritos a mano, más un tokenizador byte-pair propio y un estudio de ablaciones. Código en github.com/delcenjo/transformer-from-scratch.
Un modelo de lenguaje tipo GPT escrito desde cero en PyTorch: atención multi-cabeza, máscara causal, bloques residuales y embeddings posicionales a mano, con operaciones básicas en lugar de torch.nn.Transformer. También el tokenizador byte-pair es propio. El objetivo era poder mirar dentro cuando algo falla.
- Perplejidad val.6.89
- Sin pos. embeddings8.04
- TokenizadorBPE propio
Escribirlo para entenderlo
Leer el paper de attention no es lo mismo que implementar el reshape de las cabezas y equivocarte tres veces con las dimensiones. Cada pieza está escrita con operaciones básicas y cubierta por tests, así que la mecánica es visible y se puede tocar sin miedo.
Ablaciones: romper cosas a propósito
El baseline de caracteres alcanza una cross-entropy de validación de 1,93 (perplejidad 6,89). Quitar los embeddings posicionales la sube a 8,04 — sin posiciones, la atención no distingue el orden de los tokens. Y la sorpresa: una sola cabeza de atención dio 6,76, ligeramente mejor que varias, en un modelo de este tamaño.
Lo que me llevo
Ahora, cuando un transformer no converge o un tokenizador parte una palabra donde no debe, tengo un modelo mental de qué pieza mirar. Esa intuición no la daba ningún curso: salió de implementar cada tensor y verlo fallar.
Cuaderno interactivo
Corre Python de verdad en tu navegador vía Pyodide (WebAssembly), sin servidor detrás: la primera carga tarda unos segundos en arrancar el intérprete, y después cada celda se puede volver a ejecutar.
Ablaciones reales y el modelo entrenado generando texto en numpy
Cuaderno de Jupyter ejecutable: Python de verdad corriendo en tu navegador vía Pyodide, sin servidor detrás.
Próximos proyectos:

Credit Risk Platform
Plataforma MLOps de scoring de crédito de punta a punta: entrenamiento reproducible con registro de modelos versionado, API de inferencia en FastAPI con validación de entrada, monitorización de drift por PSI y observabilidad con Prometheus y Grafana, todo dockerizado y con CI. Código en github.com/delcenjo/credit-risk-platform.

Esta misma web
Este porfolio está construido a mano con Next.js y desplegado en Cloudflare Workers, con un laboratorio de modelos que corre entero en el navegador y despliegue continuo en cada commit. Código en github.com/jmweb-org/jmweb-pag-web.