Usar IA generativa para comprimir datos

Cada día aprendemos más trucos que puede realizar la IA generativa. Vamos a ver como usar un modelo de lenguaje para comprimir textos.

Una técnica habitual en los programas de compresión es crear una nuevo vocabulario donde las secuencias de bits más repetidas, o lo que es lo mismo las más frecuentes, son reemplazadas por secuencias de bits más cortas. Como nada sale gratis en esta vida a cambio hay cadenas de bits cortas pero poco frecuentes que son reemplazadas por otras con más bits. Todos estos reemplazos se guardan en un diccionario que puede ir adjunto en el archivo comprimido si el diccionario es propio para cada fichero y generado a partir del contenido del propio fichero.

Hay otra opción, que el diccionario sea único para todos los ficheros que se compriman. En ese caso no es necesario incluirlo en el fichero. Lo cual ahorra espacio pero a cambio suelen ser sistemas especializados solo para un tipo de ficheros.

Ahora paremos a pensar una cosa: ¿Cómo surgieron los modelos de lenguaje? Originalmente eran sistemas para completar texto. Es decir, saben predecir cuál es la palabra (en realidad el token) más probable para continuar un texto. De hecho no solo saben cuál es la más probable, saben cómo de probable es cada una de las palabras (tokens) que conocen.

Dado un texto un modelo de lenguaje nos devuelve un listado ordenado de lo probable que es cada palabra.

Si un modelo es lo suficientemente bueno podríamos darle el comienzo de un texto y el modelo generaría el resto. Desgraciadamente no funcionan tan bien. Por lo que podemos añadir una corrección cada vez que la predicación sea incorrecta. Al final podemos guardar solo esas desviaciones respecto a las predicciones del modelo.

Obviamente este sistema comprime tan bien como lo bueno que sea el modelo prediciendo el texto. Para textos aleatorios será malo, para textos literarios será bueno.

Si quieres saber más de cómo funciona puedes ver el siguiente vídeo en YouTube:

Haz click para ver el vídeo en mi canal e YouTube