A mí me strofa
Motivación
Con el crecimiento de la inteligencia artificial, me estaba preguntando si los gustos literarios se pueden reducir a un sencillo modelo o si los gustos son íntimos al punto que una IA no puede predecir nada.
Este proyecto también sirvió como una clase en cloud ML con Google.
Lo que hice
Al utilizar las funcionalidades de ML en Google, creé embeddings de unos 187 poemas a los que di una nota de 1, 2 o 3. Luego entrené 3 modelos: hay un modelo sin ninguna indicación de mis preferencias, uno con una colección mínima (40) de mis notas, y uno de regresión logística con todos los poemas.
El tercer modelo, un modelo más sencillo que un LLM, rinde significativamente mejor: 0,410 frente a 0,340 del LLM.
Hay dos explicaciones: 1. que, con más datos (solo tiene cerca de 200 notas mías), el modelo sería mucho mejor; 2. que los gustos humanos son complicados: dependen de más de un texto. Dependen de lo que estamos experimentando; si queremos explorar algo nuevo o quedarnos con lo mismo; si estamos cansados y no queremos algo tan largo; si conocemos algo sobre el autor...
Me interesa más esa segunda explicación porque muestra que pase lo que pase, nuestro juicio como seres humanos siempre nos servirá.
Arquitectura
Qué Mal Poema (blog diario) Cloud Scheduler (cada 10 min)
poema citado + mi nota │
│ HTTPS, solo lectura │
└──────────────────┬─────────────────┘
▼
Cloud Run · FastAPI (escala a cero)
clasificador cargado en memoria
│
┌──────────────────┴──────────────────┐
▼ ▼
gemini-embedding-001 Gemini genérico
→ regresión logística (el rival)
└──────────────────┬──────────────────┘
▼
BigQuery · predicciones congeladas
(una por día, antes de conocer mi nota)
│
┌────────────────────┴────────────────────┐
▼ ▼
Página del blog corpus → compuerta
mi nota · mi modelo · Gemini campeón–challenger
│
▼
Cloud Storage → nuevo campeónStack técnico
| Capa | Tecnología |
|---|---|
| Embeddings | Vertex AI · gemini-embedding-001 (256 dimensiones) |
| Rival | Vertex AI · Gemini (genérico y con mis notas en el prompt) |
| Modelo | scikit-learn · regresión logística, LOO-CV |
| Servidor | FastAPI en Cloud Run, escala a cero |
| Almacenamiento | BigQuery (predicciones congeladas), Cloud Storage (modelo) |
| Orquestación | Cloud Scheduler (cada 10 min) |