1 puntos por GN⁺ 2024-12-15 | 1 comentarios | Compartir por WhatsApp
  • Byte Latent Transformer (BLT) es una nueva arquitectura para modelos de lenguaje grandes (LLM) a nivel de byte, que logra el mismo rendimiento que los modelos basados en tokenización, pero con mejoras significativas en eficiencia de inferencia y robustez
  • Codifica los bytes en patches de tamaño dinámico, donde los patches funcionan como la unidad principal de operación
    • Segmentación dinámica de patches: asigna más recursos de cómputo a datos de mayor complejidad con base en la entropía del siguiente byte
  • Primer estudio de escalado con control de FLOPs para modelos basados en bytes:
    • Escala hasta 8B (8 mil millones) de parámetros y 4 billones (4T) de bytes de entrenamiento
    • Confirma la posibilidad de entrenar modelos sobre bytes crudos sin necesidad de un vocabulario fijo

Resultados principales

  1. Entrenamiento e inferencia eficientes:
    • Cuando los datos son predecibles, elige patches largos para reducir la cantidad de cómputo
    • El modelo ajusta dinámicamente los patches según la complejidad para optimizar recursos
  2. Mejoras de escalado:
    • Con un costo de inferencia fijo, ofrece mejor rendimiento que los modelos basados en tokenización
    • Logra eficiencia de escalado al aumentar simultáneamente el tamaño de los patches y el tamaño del modelo
  3. Mejoras cualitativas de rendimiento:
    • Mejora en razonamiento y generalización: avances cualitativos en razonamiento y manejo de datos escasos (long-tail)
    • Supera las limitaciones de los enfoques basados en vocabulario fijo

Importancia

  • BLT procesa bytes crudos sin tokenización y, aun así, demuestra eficiencia en el entrenamiento de grandes volúmenes de datos y modelos
  • Ofrece mejor rendimiento en relación con el costo de inferencia y apunta al potencial de la próxima generación de LLM a nivel de byte
  • En particular, al tratar datos complejos, el enfoque de patches dinámicos podría convertirse en un nuevo estándar de modelado adaptativo

1 comentarios

 
GN⁺ 2024-12-15
Opiniones de Hacker News
  • El verano en que salió BERT, trabajaba en una startup que hacía tareas de clasificación usando un modelo CNN basado en caracteres. Al equipo le interesaban los vectores de palabras, pero pensábamos que la gran cantidad de palabras fuera del vocabulario podía llevar al fracaso

    • Incluso en los "modelos fundacionales", las palabras fuera del vocabulario eran un problema
    • Nos iba razonablemente bien con un modelo basado en caracteres, pero había quienes opinaban que era ineficiente almacenar un "diccionario" dentro de la red neuronal
    • Estaba convencido de que un enfoque como Word2Vec iba a fracasar, así que dejé un proyecto anterior
    • Cuando apareció byte pair encoding, dije que por primera vez era un método de tokenización que podía apoyar
    • Ojalá pudiéramos trabajar con etiquetas de caracteres. Le tengo rechazo a los tokenizadores
  • La estructura jerárquica es interesante, pero da pena que solo tenga dos niveles. Apilar más niveles podría ser una dirección de investigación

    • Hay que tener cuidado al distribuir el presupuesto de FLOPs según la jerarquía
    • Habrá que encontrar una forma de agrupar patches en unidades más grandes
  • Para generar patches, se usa un modelo pequeño que predice la probabilidad del siguiente carácter en la cadena de entrada

    • Ejemplo: la probabilidad de que el siguiente carácter sea 'a' puede ser del 100%, o puede ser del 10% para 'a' y del 10% para 'b'
    • Se agrupan juntas las estimaciones de caracteres para formar un patch (o token)
  • El sampling es una de las partes difíciles de los LLM, pero también permite usos interesantes, como forzar siempre una salida JSON válida o ajustar la temperatura para obtener distintas distribuciones

    • En BLT, se puede pensar en un método donde se le da al decoder como entrada adicional qué bytes están permitidos o prohibidos, y se repite la decodificación hasta obtener una salida válida
  • Hay una pregunta sobre si la IA puede preentrenarse con archivos binarios

  • Hay una pregunta sobre si se puede hacer la tokenización implícita y darle al modelo solo bytes (o caracteres)

  • Cita relacionada de Karpathy: la tokenización está en el centro de muchas de las rarezas de los LLM

    • La razón por la que los LLM no pueden deletrear palabras es la tokenización
    • La razón por la que los LLM no pueden hacer tareas simples de procesamiento de cadenas es la tokenización
    • La razón por la que los LLM son débiles en idiomas que no son inglés es la tokenización
    • La razón por la que los LLM son débiles en aritmética simple es la tokenización
    • La razón por la que GPT-2 tuvo dificultades innecesarias con programación en Python es la tokenización
    • La razón por la que los LLM se detienen de golpe cuando ven la cadena "<|endoftext|>" es la tokenización
    • La razón por la que aparece la advertencia de "trailing whitespace" es la tokenización
    • La razón por la que los LLM se rompen cuando preguntas por "SolidGoldMagikarp" es la tokenización
    • La razón por la que en LLM debería preferirse YAML sobre JSON es la tokenización
    • La razón por la que los LLM en realidad no hacen modelado de lenguaje verdaderamente end-to-end es la tokenización
    • La verdadera fuente del dolor es la tokenización
  • Es un modelo compuesto por 3 componentes

    • Encoder: recibe grupos de bytes y produce un estado oculto/codificación llamado patch
    • Transformer: procesa de forma autorregresiva la codificación de los patches
    • Decoder: convierte en bytes la codificación procesada por el transformer
    • La pérdida se basa en entropía cruzada entre bytes (predicción del siguiente byte)
  • Cómo agrupa los bytes

    • Usa un umbral de entropía: si la entropía de una secuencia de bytes es menor que el umbral, se agrupa
    • Es un modelo aprendido a partir de los datos
  • Tiene ventajas frente a la tokenización por byte pair actual de los LLM

    • El encoder/decoder funciona como una tokenización "aprendible"
    • El intercambio de eficiencia es mejor (en secuencias de bytes predecibles, el encoder puede "descargar" parte del esfuerzo computacional del transformer principal)
    • Como muestra la historia, los sistemas entrenados de extremo a extremo superan a los mecanismos diseñados por humanos
  • Pensé que ya deberíamos estar entrando en un estancamiento