Cortos

Seis asuntos sobre modelización estadística, incluyendo un problema que no parece del todo trivial

Sobre catboost

Todavía no he usado catboost en ningún proyecto serio, aunque tiene la pinta de ser la evolución más sofisticada de todos las variantes existentes del boosting. Ya escribí al respecto aquí y hoy traigo dos enlaces adicionales de José Luis Cañadas, un usuario muy entusiasta. Una sobre el tratamiento de las variables categóricas y otro sobre la regresión por cuantiles.

Ajuste bayesiano de un modelo con censura

Lo presenta el maestro Juan Orduz aquí que, como todos, no para mientes al hecho no totalmente evidente de que la verosimilitud de una densidad mixta (continua y discreta a un tiempo) es la que se postula que es (véase cómo arranca la sección Censored Gamma Model).

Unas cuantas herramientas tecnológicas

Modelos directamente en base de datos

Sería muy cómodo poder correr modelos estadísticos directamente en la base de datos, sin tener que realizar costosas y problemáticas extracciones de datos. Rebuscando, he encontrado entradas de hace catorce años sobre el asunto en estas páginas (esta), de la época en que a eso se lo llamaba in-database analytics y se suponía que era el motivo de la entonces esperada fusión de SAS y Teradata.

LLMs: ajedrez, poesía, "ciencia normal", "prompts" y "RAG"

Poesía

Hace poco se publicó un artículo en el que se estudiaban los resultados de un estudio ciego en el que a una serie de sujetos se les presentaban poemas escritos sea por humanos o por LLMs y se les preguntaba su opinión al respecto. No he leído el artículo, pero aquí están las opiniones no enteramente coincidentes al respecto de Tyler Cowen y de Jessica Hullman.

Ajedrez

Uno de los resultados más sorprendentes del prehistórico GPT-2 es que había aprendido a jugar al ajedrez sin que nadie le hubiese enseñado explícitamente. Cuatro años después, Dynomight ha retomado el asunto y ha escrito esto y esto.

LLMs: algunas herramientas (potencialmente) útiles

Artefactos de Claude

Uno de los aplicaciones derivadas de los LLMs que más satisfacciones me están dando son los artefactos de Claude (véase, por ejemplo, esto).

Es complicado en todo caso ejecutar aplicaciones web generadas por Claude (vía artefactos) por defecto sin haber configurado previamente un entorno en node con las dependencias adecuadas. Los artefactos están pensados para, por defecto, ser alojados por Claude directamente. Si uno quiere bajar el código y correrlos en su propia máquina, tiene que hacerlo en un entorno en el que existan las dependencias correspondientes.

k-means "2.0" y cuatro asuntos más

  1. Existe un blog muy raro y entretenido, Weierd Data Science, en el que hace años publicaron una serie de artículos realizando un análisis estadístico no enteramente trivial del manuscrito Voynich. Esta es la última entrega de la serie de cuatro entradas, que ilustra y entretiene más y mejor que esas actividades que alguien ha decidido que formen parte del canon cultural.
  2. Son estos tiempos de llave inglesa: una única herramienta para apretar y aflojar cualquier tipo de tuerca. Me refiero, obviamente, al deep learning y las redes neuronales. Sin embargo, fuera del foco mediático, la gente sigue construyendo y ajustando modelos con formas funcionales fuertes, como el modelo de Wiener en sicología.
  3. k-means 2.0
  4. He debido de comentar y enlazar el artículo Decision-making under uncertainty: heuristics vs models una docena de veces. Pero siempre encuentro un motivo nuevo para volver a él.
  5. En The likelihood principle in model check and model evaluation, se discute un asunto que no llega, pienso, a la categoría de problema: dos modelos generativos distintos pueden compartir verosimilitud.

Un argumento en contra del redondeo y cuatro breves asuntos más

  1. Ahora se pueden correr Stan en el navegador (vía WebAssembly) aquí.
  2. En este artículo relacionado se preguntan sobre la problemática relación entre MCMC y las GPUs. La respuesta es, esencialmente, que no: el MCMC es iterativo y no se presta al paradigma SIMD (single instruction, multiple data). Los únicos casos en los que he visto alguna ganancia son esos —rarísimos— en los que el modelo involucra algún tipo de red neuronal que sí que puede aprovechar el paralelismo.
  3. En este artículo, John D. Cook se suma los críticos del BMI —que no es novedad— y sugiere reemplazarlo —esto sí— por algún tipo de índice de redondez (del cuerpo del sujeto).
  4. Un problema de los LEFTs es que la volatilidad diaria socava gravemente su rentabilidad. Para evitar ese problema, se han lanzado LEFTs que cierran semanal o mensualmente.
  5. Una recomendación habitual es evitar la sobreprecisión en los números publicados (p.e., $p = 0.0421942). Sin embargo, en Please, show lots of digits argumenta en contra: esos números no redondeados aportan información adicional que puede permitir realizar ingeniería inversa y revelar cifras y procedimientos no explícitamente mostrados en los artículos.

Más allá del "software" libre y algunos asuntos más

  1. Últimamente, casi siempre que se usan las palabras tecnología y enseñanza en una misma frase es para denunciar los perniciosos efectos de la primera en la segunda. No obstante, aquí_ se señala una de sus potenciales atractivos: adecuadamente usada, podría permitir gestionar la varianza (por no usar el término tabú, desigualdad), en el desempeño escolar.
  2. En Stan’s autodiff is 4x faster than JAX on CPU but 5x slower on GPU (in one eval) se ponen en cuestión “leyes de la naturaleza/informática” que no son otra cosa que generalizaciones. Va por casos. Doy fe.
  3. Uno de los problemas de las licencias de abiertas es que, por diseño, olvidan una dimensión muy importante del desarrollo de código: hay gente que vive de eso (véase, por ejemplo, Free as in Do as Your Told). Un nuevo tipo de licencia, la fair source, quiere remediar el problema. En resumen, es un tipo de licencia privativa que deviene automáticamente abierta al cabo de un tiempo razonable.
  4. Otro de los problemas que ocurren (a veces) al desarrollar software libre: que tus dependencias pueden quedar huérfanas, como aquí
  5. Xata ofrece alojamiento para instancias de Postgres que cuenta con un segmento gratuito (free tier). Aquí describen la solución tecnológica y el impacto económico de ese servicio (en concreto, de cómo usan lo uno para minimizar lo otro).

Cinco asuntos breves sobre modelización estadística

Hoy, cinco breves comentarios sobre dos temas distintos relacionados con la modelización estadística. Sobre el primero, técnicas alternativas de modelización, tres enlaces:

  1. What is elastic weight consolidation?, una técnica para afinar el entrenamiento de modelos profundos. Imagínese que a un LLM ya existente le queremos enseñar, por ejemplo, legislación penal española. En tanto que lo reentrenamos con el código penal, no queremos que olvide todo lo demás que aprendió penosamente. Una ténica que se emplea es la llamada elastic weight consolidation, donde, como en elastic-net, se penaliza el que los pesos se desvíen de un valor de referencia. En elastic-net, ese valor de referencia es el cero. En elastic weight consolidation, son los pesos del modelo inicial. Porque queremos pesos, obviamente, distintos de los iniciales pero no demasiado lejos de ellos. (Queda como eljercicio para el lector la reinterpretación bayesiana del párrafo precedente).
  2. Universal estimation with Maximum Mean Discrepancy (MMD) habla de cómo se puede usar MMD como función de pérdida al ajustar modelos. El MMD es el método de los momentos de toda la vida, pero a lo bestia, es decir, aproximándolos todos ellos a la vez. Se puede ver una aplicación —ya obsoleta por las nuevas IA generadoras de imágenes— aquí.
  3. No tengo ninguna opinión particular sobre el uso de números complejos en el suavizado exponencial. No tengo claro qué se gana (¿algún grado de libertad?), pero dejo constancia de que alguien, en algún lugar, parece estar usándolo.

El segundo, sobre dos aspectos importantes de la modelización estadística:

Cómo exprimir la prueba de Kolmogorov-Smirnov y unos cuantos asuntos más

Suponía que era de conocimiento universal. Pero si John D. Cook siente la necesidad de recordarnos que las probabilidades pequeñas se suman pero las grandes no, será por algo.

Lo raro es que no ocurra nunca nada altamente improbable, edición número 6210.

En los extremos, la varianza importa más que la media. (Se refiere a dos poblaciones con medias y varianzas distintas. Si una observación es extrema, es casi seguro que viene de la población con mayor varianza que la de mayor media, para casi todas las definiciones razonables y compatibles de razonables de mayor y extremo).

Algunos apuntes sueltos sobre causalidad

Bajo cierto punto de vista, el estudio estadístico de la causalidad viene a consistir en la estimación de modelos incompletos. Un modelo completo es uno que contiene todas las ecuaciones / relaciones causales que afectan a un fenómeno. En uno incompleto, las variables y ecuaciones faltantes introducen sesgos de distinta naturaleza. Uno de los sitios donde mejor lo he visto contar es en Simulating confounders, colliders and mediators, de donde extraigo, además, el siguiente gráfico:

Cinco breves notas sobre LLMs

I.

En The “it” in AI models is the dataset se sostiene algo que ya traíamos sabido: que los modelos (incluidos los LLMs) son resúmenes de los datos con los que se entrenan:

Así, cuando hablas de “Lambda”, “ChatGPT”, “Bard” o “Claude” no te refieres a los pesos del modelo sino al conjunto de entrenamiento.

II.

Hablar de hardware en el contexto de los LLMs parecería casi exclusivamente hablar de NVIDIA, pero no solo. El modelo es el siguiente:

Los boxplots como "herramientas de entretiempo" y cuatro asuntos más

I.

Aquí se lee:

Puede parecer absurdo verificar un modelo comparando sus inferencias con las expectativas razonables —–si ya supiéramos qué esperar, ¿para qué modelar nada?— pero hay dos razones por las que este procedimiento nos parece razonable.

Es muy interesante también en tanto que describe la cantidad de hipótesis que entran —más bien, que alguien mete— en uno de esos modelos tan objetivos y data driven que vemos publicados por ahí.

Una propuesta para cambiar la sintaxis de SQL y cuatro asuntos más

Mesop, una herramienta de Google para crear “AI apps” en Python.

¿Se nos está yendo el tamaño del código JavaScript de las páginas web de las manos? (De cuya lectura, además, he aprendido que existe webpagetest.org, que parece mejor que otras alternativas que he probado por ahí).

uv, un gestor de paquetes de Python “extremadamente rápido” escrito en Rust. ¿Tocará volver a migrar?

Aquí hay una discusión sobre la diferencia entre lugares y sitios —términos ambos que define estipulativamente—. Proyectos como OpenStreetMap se centran en los primeros: coordenadas, sistemas de referencia, mapas, etc. Overture Maps, parece ser, quiere centrarse en los segundos, los sitios, es decir, los bosques, edificios, panaderías, etc. que ocupan el espacio y que son el objetivo —los mapas son solo el medio— de nuestra preocupación por lo que puebla el espacio.