Cualquiera interesado en la evolución de la tecnología de Inteligencia Artificial sabe que las soluciones actuales tienen que ver con modelos de lenguaje grande (LLM) y transformadores . En pocas palabras, los LLM son redes neuronales que pueden predecir el siguiente token en función de los tokens de entrada. Normalmente, estos tokens son palabras (esto no es del todo exacto, pero es más fácil de conceptualizar de esta manera), y la salida de la red también es una palabra. Así funciona ChatGPT. Usted ingresa una pregunta y la red genera una palabra. Luego, la pregunta y la palabra juntas se convierten en la entrada de la red, generando otra palabra, y así sucesivamente, hasta que se forma una respuesta completa.
Sin embargo, los tokens pueden ser más que simples palabras. Los modelos de lenguaje avanzado como GPT-4 o Gemini ahora son multimodales, lo que significa que su entrada puede incluir imágenes y palabras. Así como una oración se puede dividir en palabras, una imagen se puede dividir en pequeños parches y, a partir de ahí, la misma arquitectura transformadora puede procesarlos. Por ejemplo, se puede pedir a una red multimodal que describa lo que hay en una imagen o que codifique la interfaz de usuario que se ve en la imagen.
Esta arquitectura es aún más general. El sistema Gato de DeepMind es un excelente ejemplo, donde una única red de transformadores puede responder preguntas, jugar videojuegos o controlar un robot simultáneamente, e incluso se han controlado robots mediante ChatGPT . Dado que un LLM funciona con tokens y cualquier tarea puede tokenizarse, un LLM proporciona una solución universal para cualquier tarea.
Una de las noticias de tecnología más publicitadas recientemente fue sobre la empresa Groq que desarrolló un ASIC (circuito integrado de aplicación específica) que puede ejecutar LLM de manera mucho más eficiente y con menos energía que las GPU tradicionales. Esto muestra claramente que la arquitectura LLM se ha vuelto tan fundamental que ahora vale la pena crear hardware especializado para ella.
También recientemente apareció una publicación titulada " La era de los LLM de 1 bit: todos los modelos de lenguajes grandes están en 1,58 bits ". La cuantificación de redes neuronales es un método común para reducir el tamaño y la demanda computacional. La esencia de la solución es realizar el entrenamiento en grandes grupos de GPU utilizando números de punto flotante y luego convertir los pesos de la red terminada a un formato menos preciso, lo que permite que los procesadores de los dispositivos de los usuarios funcionen de manera más eficiente. Por ejemplo, el entrenamiento se lleva a cabo con números de coma flotante de 16 o 32 bits, que luego se convierten en números de coma fija de 8 o 4 bits para operaciones rápidas del lado del cliente. De esta manera, el modelo puede funcionar bien incluso en dispositivos móviles o IoT. Una forma extrema de esta cuantificación es cuando los pesos se convierten en números de 1 bit. Esto puede ser una conversión binaria completa o, como sugiere la publicación, usar los valores {-1,0,1} (de ahí los 1,58 bits). Se podría pensar que una cuantificación tan extrema dejaría la red completamente inutilizable, pero en realidad ocurre todo lo contrario; Estas redes de 1 bit funcionan excepcionalmente bien.
Si estos tres valores son suficientes para representar los pesos, entonces la multiplicación, que actualmente es la operación más utilizada en las redes neuronales, ya no es necesaria. Es por eso que los clústeres de GPU se utilizan para redes neuronales, ya que las GPU pueden realizar multiplicaciones de manera muy eficiente. Sin necesidad de multiplicaciones, no hay necesidad de GPU, y los modelos se pueden ejecutar de manera eficiente incluso en CPU, o es posible construir hardware especializado (ASIC) que pueda (incluso de forma analógica) ejecutar estas redes de 1 bit.
Actualmente, la cuantificación es una operación posterior al entrenamiento. Por tanto, el uso de redes de 1 bit no acelera el proceso de formación. Sin embargo, siguen siendo útiles porque el entrenamiento es una operación única, pero la red neuronal se ejecuta innumerables veces. En consecuencia, el funcionamiento de las redes representa un consumo energético significativamente mayor que el entrenamiento. Por lo tanto, podríamos beneficiarnos de esta tecnología incluso en el contexto de la formación.
Dado que el entrenamiento basado en gradientes no funciona con redes binarizadas o de 1 bit, las tecnologías no basadas en gradientes se vuelven relevantes (consulte nevergrad y PyGAD ), como los algoritmos genéticos u otras tecnologías sin gradientes. Aunque en la mayoría de los casos la retropropagación es mucho más eficiente que las soluciones sin gradiente, las redes de 1 bit se pueden ejecutar de manera mucho más eficiente que sus contrapartes de punto flotante. Entonces, podría ser que con la retropropagación encontremos la red óptima 10 veces más rápido usando números de punto flotante que con, digamos, algoritmos genéticos. Pero si la red de 1 bit se ejecuta 20 veces más rápido, entonces el entrenamiento seguirá siendo dos veces más rápido utilizando algoritmos genéticos. Investigar con qué eficacia se pueden entrenar redes de 1 bit con métodos sin gradientes podría ser un tema de investigación muy interesante.
Otra razón por la que este tema es tan fascinante es que estas redes se parecen más a las redes neuronales que se encuentran en el cerebro natural (biológicamente plausible). Por tanto, creo que eligiendo un buen algoritmo de entrenamiento sin gradientes y aplicando estas redes de 1 bit, podemos construir sistemas que sean mucho más similares al cerebro humano. Además, esto abre la posibilidad de soluciones tecnológicas más allá de los ASIC que antes no eran viables, como procesadores analógicos, basados en la luz o incluso biológicos.
Es posible que esta dirección resulte ser un callejón sin salida a largo plazo, pero por ahora, su potencial revolucionario es evidente, lo que la convierte en una vía de investigación muy prometedora para cualquiera involucrado en el campo de la inteligencia artificial.