- 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
- 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
- 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
- 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
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
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
Para generar patches, se usa un modelo pequeño que predice la probabilidad del siguiente carácter en la cadena de entrada
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
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
Es un modelo compuesto por 3 componentes
Cómo agrupa los bytes
Tiene ventajas frente a la tokenización por byte pair actual de los LLM
Pensé que ya deberíamos estar entrando en un estancamiento