Noveno artículo de la serie sobre lead nurturing y quinto y último de la línea de fundamentos técnicos. Los cuatro artículos anteriores fueron subiendo de modelo, uno detrás de otro, siempre sobre los mismos leads de Aura Commerce. Este no sube ninguno más: se detiene a preguntar por qué el modelo con el que arrancó esta línea, no el más sofisticado, sigue siendo tan difícil de batir.
El deep learning escribe código, genera imágenes fotorrealistas y sostiene una conversación que parece humana. Sobre la tabla de 2.000 leads que esta serie lleva usando desde el primer artículo, sigue perdiendo contra un modelo que en el fondo es un puñado de árboles de decisión encadenados. La investigación en datos tabulares lleva más de una década confirmando el mismo patrón, y antes de cerrar esta línea de fundamentos vale la pena preguntarse por qué: ¿todavía no ha encontrado la forma el deep learning, o la tabla de leads sencillamente no es el terreno donde este tipo de modelo gana?
La pregunta mal hecha: "¿es mejor el deep learning?"
Esa pregunta ya se ha respondido varias veces en esta línea, y siempre con el mismo matiz: depende de la forma que tenga la relación entre las variables, no de cuántas capas tenga el modelo. El artículo sobre árboles de decisión lo demostró comparando un modelo lineal con uno no lineal sobre el mismo dataset. Aplicado a redes neuronales, el error habitual es preguntar si son "más inteligentes" que un bosque o un boosting. La pregunta que de verdad decide el resultado es otra: ¿qué tiene esta tabla de leads que una red neuronal pueda aprovechar, y que un árbol no pueda ya explotar por su cuenta?
La estructura que le falta a una tabla de leads
Una red neuronal no aprende de la nada: aprende explotando una estructura que el propio dato le regala. Una foto tiene píxeles vecinos que casi siempre se parecen entre sí, y una red convolucional está diseñada exactamente para aprovechar esa vecindad. Una frase tiene un orden que importa: "el lead visitó la página antes de abrir el email" no es lo mismo que la frase al revés. Un transformer de texto está diseñado para explotar precisamente esa secuencia. En los dos casos, la arquitectura de la red ya trae incorporado un supuesto correcto sobre cómo se relacionan los datos entre sí.
La analogía
Reordena los píxeles de una foto al azar y sigue reconociéndose casi cualquier forma si los vecinos originales se mantienen juntos en bloques; reordena las palabras de una frase y el significado se rompe de inmediato. Ahora reordena las columnas de la tabla de leads de Aura Commerce (pon "páginas visitadas" antes que "canal de origen", o al final, o en medio) y no cambia absolutamente nada: el dato sigue significando lo mismo. Esa es la diferencia. Una imagen y un texto tienen una geometría que una red puede aprender a explotar. Una tabla de negocio no tiene geometría ninguna: es una lista de columnas en un orden que alguien eligió por comodidad, no por significado.
Una red convolucional aprovecha que los píxeles vecinos se parecen; un transformer de texto aprovecha el orden de las palabras. Una tabla de leads no tiene ninguna de las dos cosas: el orden de sus columnas es una decisión de quien diseñó la base de datos, no una señal.
Los intentos previos: embeddings, TabNet, FT-Transformer
No es que nadie lo haya intentado. Desde hace casi diez años hay una línea entera de investigación dedicada a darle a una red neuronal algo parecido a la estructura que sí tiene en imagen o texto. Los embeddings de variables categóricas, popularizados en competiciones de Kaggle a mediados de la década pasada, sustituyen cada categoría ("referido", "pagado", "orgánico") por un vector de números que la red ajusta durante el entrenamiento, en vez de tratarla como una casilla suelta. TabNet, de Google Research, añade un mecanismo de atención que decide en qué variables fijarse en cada paso, imitando cómo un árbol elige en qué columna dividir. FT-Transformer va más lejos y convierte cada columna, numérica o categórica, en un token propio, para pasarle la tabla entera a un transformer como si fuera una frase.
Los tres enfoques son ingeniería seria, y ninguno de los tres ha conseguido, de forma consistente en benchmarks independientes, superar a un gradient boosting bien ajustado sobre datos tabulares de tamaño mediano. La razón de fondo es la que ya vimos en el apartado anterior: por mucho mecanismo de atención que se le añada, la red sigue sin tener una vecindad real que explotar, y encima tiene que aprender desde cero, con unos pocos miles de filas, algo que un árbol obtiene gratis con cada partición: qué variables interactúan entre sí y en qué umbral.
El giro: un modelo que no entrena, lee
La pieza que cambia el tablero no intenta darle a la red una estructura que la tabla no tiene. Cambia la pregunta: en vez de entrenar una red distinta para cada dataset, se entrena una única vez, sobre millones de datasets sintéticos generados a propósito, hasta que la red aprende a hacer algo más general que memorizar un problema concreto. Aprende a razonar sobre cualquier tabla que se le presente después, sin volver a tocar sus pesos. Este tipo de modelo se llama Prior-Data Fitted Network, TabPFN por sus siglas, y su versión más citada se publicó en Nature en 2025.
La consecuencia práctica es la que de verdad importa para Aura Commerce: cuando llega la hora de usarlo sobre los 2.000 leads reales, TabPFN no se entrena con ellos en el sentido habitual. Se le enseñan como contexto, de una vez, y el modelo predice sobre los leads nuevos en un único paso hacia delante, sin descenso de gradiente, sin épocas, sin ajustar ni un solo peso. Es aprendizaje en contexto: la misma idea que permite a un modelo de lenguaje resolver un problema nuevo con un par de ejemplos en el propio prompt, aplicada aquí a una tabla de leads en vez de a una conversación.
Una red tradicional ajusta sus pesos, dataset por dataset, en cientos de rondas de backpropagation. TabPFN ya viene entrenado: se limita a leer los leads de Aura Commerce como contexto y responder en un único pase hacia delante.
Una advertencia antes de seguir
TabPFN no ha tenido su versión única desde 2022. Existe la original (2022, limitada a mil filas), la v2 publicada en Nature en 2025 (la que se usa en el experimento de este artículo, con licencia Apache 2.0), y desde entonces una sucesión de versiones más nuevas (2.5, 3, 3.5) que amplían muchísimo su capacidad pero se publican bajo licencia no comercial. Ese matiz importa para todo lo que viene a continuación.
La prueba real: TabPFN v2 sobre los leads de Aura Commerce
Nada de lo anterior vale gran cosa sin comprobarlo sobre el mismo dataset que ha corrido en toda esta línea. Instalé TabPFN v2 y lo apunté, sin ajustar un solo hiperparámetro, a los mismos 1.600 leads de entrenamiento y 400 de test que ya usaron el bosque y el boosting de los dos artículos anteriores, con el mismo reparto y la misma semilla aleatoria.
Python · TabPFN v2 sobre el dataset de Aura Commerce, sin ajustar nada
import os os.environ["TABPFN_MODEL_VERSION"] = "v2" # fuerza el checkpoint Apache 2.0 from tabpfn import TabPFNClassifier modelo = TabPFNClassifier(device="cpu", ignore_pretraining_limits=True) modelo.fit(X_train, y_train) # no ajusta pesos, cachea el contexto proba = modelo.predict_proba(X_test)[:, 1]
El resultado: 0,700 de AUC. Por debajo del bosque del artículo anterior (0,733), pero por encima del gradient boosting sin ajustar del artículo más reciente (0,683), y sin que nadie haya elegido una profundidad de árbol, una tasa de aprendizaje o un número de rondas. Un modelo genérico, entrenado una vez sobre datos que nunca vieron un lead de Aura Commerce, empata casi con cuatro artículos de ajuste manual.
AUC-ROC sobre test · mundo con umbrales · n=2.000, mismo split para los cinco modelos
*Milisegundos o segundos para puntuar los 400 leads de test con el modelo ya listo. **El "entrena" de TabPFN no ajusta pesos: solo cachea los 1.600 leads de contexto, por eso tarda casi lo mismo que entrenar un árbol.
El precio que no sale en el AUC: 65 segundos para 400 leads
La columna que de verdad cambia la conversación es la de "predice", no la de AUC. Un boosting o un bosque ya entrenados puntúan los 400 leads de test en unos 11 milisegundos, porque toda la parte cara del trabajo, encontrar los patrones, ya ocurrió durante el entrenamiento, y predecir es solo recorrer unas cuantas reglas. TabPFN funciona al revés: como no ajusta pesos por adelantado, cada predicción tiene que volver a procesar el contexto entero de 1.600 leads a través de un transformer. En el portátil sin GPU dedicada donde corrió este experimento, eso tardó de media 65 segundos para los mismos 400 leads: unos 164 milisegundos por lead, frente a los 0,03 milisegundos por lead del boosting ya entrenado. Casi 6.000 veces más lento, lead a lead.
Por qué no es un detalle menor
Para un scoring que se recalcula una vez al día sobre el histórico completo, 65 segundos son irrelevantes. Para el escenario de tiempo real que el artículo anterior resolvía en 2 milisegundos por lote, TabPFN tal y como está hoy, en una CPU corriente, no es una opción: haría esperar a un visitante de la web varios segundos para saber si merece una llamada comercial inmediata. Con GPU la cifra baja mucho, pero sigue sin ser gratis, y una scale-up sin equipo de datos rara vez tiene una GPU esperando ociosa para esto.
Lo que ya está un paso por delante: TabPFN-3 y TabPFN-3.5
Aquí es donde entra la parte de "los últimos avances van por aquí". Mientras se escribía este artículo, Prior Labs, el laboratorio que publicó TabPFN, sacó dos versiones nuevas en cuestión de semanas: TabPFN-3 y, encima, TabPFN-3.5, con un informe técnico firmado entre otros por Yann LeCun y Bernhard Schölkopf, dos de los nombres con más peso en deep learning de la última década. Los números que publican son, sin exagerar, una locura comparados con los de hace tres años. En TabArena, un banco de pruebas de 51 datasets y más de 800 tareas, TabPFN-3.5 saca un Elo de 1866 frente a los 1352 de un XGBoost ajustado a fondo y en conjunto: una diferencia de escala parecida a la que separa a un jugador de ajedrez de club de un gran maestro. Gana el 96% de sus enfrentamientos directos contra los modelos que no son fundacionales tabulares, y ya soporta datasets de hasta un millón de filas, cien veces más que la v2 usada en el experimento de este artículo.
Nada de esto lo hemos comprobado nosotros sobre los leads de Aura Commerce, y por una razón muy concreta que conviene no maquillar.
Por qué TabPFN-3 y 3.5 se quedan fuera del experimento
Sus pesos se publican bajo licencia no comercial. El propio texto de la licencia prohíbe explícitamente usar el modelo o sus resultados para "entregables de cliente" o "decisiones comerciales", entre otros usos de producción. Sesgopositivo.com es un sitio comercial, así que correrlos para generar contenido de este artículo caería justo en lo que la licencia prohíbe. La versión que sí se usó, TabPFN v2, es Apache 2.0 sin esa restricción. Para producción comercial con las versiones nuevas, Prior Labs vende una licencia enterprise aparte.
El matiz importa más de lo que parece a primera vista: la versión que de verdad se puede desplegar hoy en una empresa sin pagar una licencia adicional (v2) ya va un paso por detrás de lo último que está saliendo de los laboratorios (3.5). Eso no descarta nada, solo fija las expectativas: lo que hoy es investigación abierta puede tardar un tiempo en convertirse en algo que una scale-up pueda usar sin llamar antes a ventas.
Framework de decisión: qué hacer con esto hoy
Framework de decisión
Quédate con el boosting del artículo anterior para producción. Con el volumen de leads de una scale-up media, sirve en milisegundos, ya tiene SHAP resuelto para explicar cada lead, y su licencia no depende de negociar nada con nadie.
Usa TabPFN v2 como segunda opinión offline, no como reemplazo. Es una forma rápida de comprobar, sin escribir ni entrenar nada, si un modelo ajustado a mano se está dejando algo de rendimiento sobre la mesa. Para eso, un par de minutos de cómputo en un análisis puntual es un precio razonable; para servir tráfico real, no.
No despliegues TabPFN-3 ni 3.5 en nada que genere ingresos sin antes hablar con Prior Labs sobre su licencia enterprise. Son la referencia de hacia dónde va la investigación, no todavía una opción de producción legal para la mayoría de empresas.
Vigila esta línea cada seis o doce meses, no cada semana. El salto de v2 a 3.5 en poco más de un año es demasiado rápido para perseguirlo artículo a artículo, pero demasiado grande para ignorarlo del todo.
Aplicado a Aura Commerce, esta línea de fundamentos deja resuelto el diagnóstico, qué lead vale la pena y por qué, con herramientas maduras, explicables y gratuitas. La investigación de deep learning, mientras tanto, sigue corriendo varios pasos por delante de lo que casi ninguna empresa necesita todavía.
Preguntas frecuentes sobre deep learning y gradient boosting
Preguntas frecuentes
¿El deep learning ya gana al gradient boosting en datos tabulares?
No con los datos de este experimento: TabPFN v2 marca 0,700 de AUC sin ajustar nada, por debajo del random forest (0,733) aunque por encima del gradient boosting sin ajustar (0,683). Los modelos de deep learning tradicionales tampoco superan de forma consistente al gradient boosting en benchmarks independientes.
¿Qué es TabPFN?
Un modelo fundacional tabular pre-entrenado una sola vez sobre millones de datasets sintéticos. En vez de entrenarse de nuevo con cada tabla, predice mediante aprendizaje en contexto: recibe los datos de entrenamiento como contexto y responde en un único pase, sin ajustar pesos.
¿Se puede usar TabPFN en producción comercial?
La versión 2 tiene licencia Apache 2.0 y se puede usar en producción comercial. Las versiones posteriores (2.5, 3 y 3.5) son de licencia no comercial y requieren una licencia enterprise de Prior Labs para producción.
¿Es rápido TabPFN comparado con un modelo de boosting ya entrenado?
No. En CPU sin GPU dedicada, TabPFN v2 tardó unos 164 milisegundos por lead frente a los 0,03 milisegundos de un gradient boosting ya entrenado: casi 6.000 veces más lento, porque cada predicción reprocesa todo el contexto de entrenamiento.
La pregunta que abre el siguiente artículo
Con esto se cierra la línea de fundamentos de esta serie. En cinco artículos, Aura Commerce ha pasado de no saber qué lead vale la pena a tener cinco formas distintas de calcularlo, cada una con su condición de uso: una regresión logística de entrada, un árbol cuando hace falta capturar umbrales, un bosque cuando el volumen todavía es bajo, un boosting explicable en cuanto ese volumen crece, y ahora la certeza de que ni siquiera lo último de la investigación en deep learning cambia esa jerarquía todavía. El diagnóstico está resuelto, incluso por delante de lo que Aura Commerce necesita hoy. Queda la pregunta que de verdad mueve el negocio: sabiendo qué lead vale la pena y por qué, ¿qué hace Aura Commerce con esa información antes de que el lead se enfríe?
¿Te ha resultado útil?
¿Tienes un problema que
los datos podrían resolver?
Sin formularios largos. Una conversación de 30 minutos para ver si tiene sentido.
Hablamos