Getting your Trinity Audio player ready... |
Se ha dicho de diferentes maneras, sin embargo, de forma concreta es necesario entender que los modelos de IA generativa no procesa el texto de la misma forma en la que lo hacemos los seres humanos. Mientras nosotros entendemos los textos también por contexto, la IA comprende el entorno gracias a los tokens, precisamente estos pueden ser la razón por la cual la IA tiene ciertos comportamientos extraños y algunas limitaciones persistentes.
Los verdaderos transformers están en la IA
La arquitectura transformer es la encargada de hacer las asociaciones entre el texto y otros datos, no pueden recibir ni generar texto en bruto sin acceso a una enorme cantidad de recursos computacionales. Esta arquitectura transformer es la base de la mayoría de modelos IA como GPT-4 de OpenAI
Los modelos transformer se encargan de romper el texto en partes pequeñas y manejables llamadas tokens por medio de un proceso llamado tokenización. Con este método los transformers pueden procesar más información antes de alcanzar la llamada ventana de contexto, sin embargo, la tokenización puede tener sesgos.
Ejemplos de tokenización: Los tokens pueden ser palabras, como “fantástico”. O pueden ser sílabas, como “fan”, “tás” y “tico”. Dependiendo del tokenizador — el modelo que realiza la tokenización — también podrían ser caracteres individuales en palabras (por ejemplo, “f”, “a”, “n”, “t”, “a”, “s”, “t”, “i”, “c”).
A diferencia de un ser humano que tiene la capacidad de entender un texto a partir de un todo, es decir, contexto, la tokenización depende la manera en la que se codifican las palabras y desviar por accidente a un transformer. Como ejemplo podemos codificar: “érase una vez” como “érase”, “una”, “vez”, por ejemplo, mientras codifica “érase una ” (que tiene un espacio en blanco al final) como “érase”, “una”, “ ”. Dependiendo de cómo se le dé la entrada a un modelo — con “érase una vez” o “érase una ” — los resultados pueden ser completamente diferentes, porque el modelo no entiende que el significado es el mismo.
Las mayúsculas y los espacios en la tokenización
Las mayúsculas también cambien la manera en la que los tokenizadores le dan un tratamiento a las palabras, para ellos un Hola no necesariamente es lo mismo que HOLA. El motivo es que para un tipo de modelo un “hola” puede ser un solo token, “HOLA” puede ser hasta tres “HO”,”LA”, esto genera errores en los transformers durante las pruebas de las letras mayúsculas.
Ahora hablemos sobre los espacios y la “imprecisión” que generan en idiomas diferentes al inglés.
La tokenización se creó basándose en el idioma inglés, por ello durante el proceso un espacio en una oración significa una nueva palabra, sin embargo, no todos los idiomas utilizan espacios para separar las palabras. El idioma chino, japonés, coreano, tailandés o jemer no utilizan espacios.
Esta diferencia en el uso y aplicación de los espacios entre los diferentes idiomas provoca que un transformer tarde hasta el doble de tiempo en concretar una tarea formulada en un idioma no inglés en comparación con la misma tarea formulada en inglés.
Dado que muchos proveedores de IA cobran por token, aquellos usuarios de idiomas menos eficientes en tokens, tendrán un rendimiento menos óptimo y pagarán más por el uso del mismo.
Los tokenizadores suelen tratar cada caracter en sistemas de escritura logográficos que se enfocan en los símbolos que representan palabras sin relacionarse con la pronunciación como el idioma chino, cad símbolo representa un token distinto.
De manera similar, los tokenizadores que procesan idiomas aglutinantes — idiomas donde las palabras están compuestas por pequeños elementos significativos llamados morfemas, como el turco — tienden a convertir cada morfema en un token, aumentando el recuento total de tokens. (La palabra equivalente a “hola” en tailandés, สวัสดี, es seis tokens).
De acuerdo a Yannie Jun, Investigadora de IA de Google DeepMind, hay idiomas que incluso necesitan hasta 10 veces más tokens para captar el mismo significado en inglés.
La tokenización también es responsable de que los modelos sean malos en matemáticas
Aquí el gran problema es que los tokens técnicamente no saben lo que son los números, entonces los tokenizadores podrían tratar “380” como un token, pero representar “381” como un par (“38” y “1”) — destruyendo efectivamente las relaciones entre dígitos y los resultados en ecuaciones y fórmulas.
La consecuencia de esta falta de entendimiento de parte de los tokens hacia lo que son y cómo funcionan los números, causa confusión en el transformer. Los modelos se esfuerzan por entender los patrones numéricos repetitivos y contexto, sin embargo GPT-4 puede pensar que 7,735 es mayor que 7,926.
Existen modelos de espacio de estado a nivel de byte como MambaByte que tienen la capacidad de absorber más información que los transformers sin una penalización en el rendimiento al eliminar la tokenización por completo.
MambaByte, que trabaja directamente con bytes en bruto que representan texto y otros datos, es compatible con algunos modelos transformer en tareas de análisis de lenguaje mientras maneja mejor el “ruido” como palabras con caracteres intercambiados, espacios y caracteres en mayúsculas.
Los modelos similares a MambaByte están en las primeras etapas de investigación, en este momento prescindir de la tokenización no es posible.