
🗜️ ¿Clasificar texto… con compresión? Python 3.14 hace que esta técnica sea práctica por primera vez.
Python 3.14 incorporó el módulo compression.zstd (Zstandard de Facebook) a la librería estándar. Y esto abre una forma elegante y sorprendente de clasificar texto sin modelos de ML tradicionales.
🧠 La idea central: Si comprimís un texto junto a un corpus de una categoría, el resultado será más pequeño cuanto más parecido sea el texto a esa categoría. Esto se basa en la complejidad de Kolmogorov: los datos similares se comprimen mejor juntos.
💡 El truco práctico con zstd:
from compression.zstd import ZstdCompressor, ZstdDict
# Para cada clase, construir un "diccionario" con su corpus
zd_tacos = ZstdDict(tacos_corpus, is_raw=True)
comp = ZstdCompressor(zstd_dict=zd_tacos)
# El texto que produce el output más corto es la clase ganadora
len(comp.compress(nuevo_texto))✨ Ventajas:
- Cero dependencias externas (stdlib de Python 3.14)
- Funciona en modo online/streaming: no requiere re-entrenar desde cero
- Muy rápido: reconstruir el compresor tarda microsegundos
⚠️ Limitaciones:
- Menos preciso que modelos modernos como BERT
- Mejor para casos de baja latencia o recursos limitados
💡 Explicación en pocas palabras#
La idea es simple: si querés saber si un texto habla de “tacos” o “padel”, comprimilo junto a textos de cada categoría. El texto se comprimirá mejor con los textos a los que se parece más. Es una forma de medir similitud usando matemáticas de compresión, sin entrenar ningún modelo.
Más información en el link 👇

