Почему LLM до сих пор используют BPE, а не просто 256 байтов?

12+
12+

1 просмотр

7 дней назад

ПожаловатьсяНарушение авторских прав
12+
12+

1 просмотр

7 дней назад

ПожаловатьсяНарушение авторских прав
12+
12+

1 просмотр

7 дней назад

Серия вопросов для интервью: https://www.youtube.com/playlist?list=PLJfNLwxPoV-o «Почему бы нам просто не использовать простой байтовый токенизатор? У него фиксированный словарь из 256 токенов, и в нем никогда не бывает неизвестных токенов. Почему мы до сих пор используем сложный BPE-токенизатор?» Ответ, к которому почти все стремятся, заключается в том, что подслова несут больше смысла, чем байты. Одно реальное предложение нарушает это правило. Этот анимированный ролик шаг за шагом, с реальными числами, объясняет разницу между BPE и байтовой токенизацией. Байтовое парное кодирование (BPE) выбирает точки слияния по частоте, а не по смыслу: токенизатор GPT-4o разделяет «Summarize» на «Summ», «ar» и «ize». А байтовое BPE уже содержит все 256 байтов. 50 257 записей GPT-2 — это 256 байтов, 50 000 точек слияния и один специальный токен. Таким образом, байтовый токенизатор не является альтернативой BPE. Речь идёт о нижних 256 строках собственного словаря BPE, и реальный вопрос заключается в размере словаря. Объединения дают более короткие последовательности. Наше 63-байтовое предложение состоит из 12 токенов, а целая книга английской прозы в среднем занимает 4,33 байта на токен с токенизатором GPT-4o. Переход на байтовый уровень делает каждую последовательность примерно в 4 раза длиннее, и за это приходится платить в четыре раза больше: вычислительные ресурсы для обучения, шаги последовательного декодирования, память кэша ключ-значение и контекстное окно. Затем мы проверяем популярный ответ «в 16 раз больше вычислительных ресурсов, потому что механизм внимания квадратичен». Используя соотношение длины последовательности к 12-кратной ширине модели (Каплан и др.), документ из 2000 токенов при ширине Llama 3 8B распределяет на механизм внимания лишь около 4% работы, поэтому затраты составляют примерно 4,9 раза больше, возрастая до примерно 6,4 раза при 8000 токенах и до 10 раз при 32000. Мы также увидим, почему утверждение ByT5 о «примерно в 1,2 раза большем количестве операций» не противоречит этому, почему словари не могут просто продолжать расти (стоимость выходного слоя и редко обучаемые строки), что обнаружили Тао и др. об оптимальном размере словаря и как Byte Latent Transformer обеспечивает такое же сжатие, как и BPE, вообще без словаря. Попутно мы ответим на следующие вопросы: • Почему LLM используют BPE вместо 256-байтового словаря? • Действительно ли токенизация на уровне байтов обходится в 16 раз дороже с точки зрения вычислительных ресурсов? • Почему в программах магистратуры не используется словарь из двух миллионов токенов? Разделы 0:00 Вопрос на собеседовании: Почему бы не использовать только байты? 0:26 Разделяет ли BPE слова по смыслу? 1:13 BPE уже содержит все 256 байтов 2:05 Какова стоимость байтов: в 4 раза больше, оплачивается в четыре раза дороже 2:57 В 16 раз дороже с точки зрения вычислительных ресурсов? 4:32 ByT5 1,2x: контрпример, который не является таковым 5:31 Почему бы не использовать более широкий словарь? 6:38 Как бы вы ответили на самом деле 7:32 Байт-латентный трансформер: полное отсутствие словаря Связанные материалы: Объяснение токенизации: https://www.youtube.com/watch?v=L-PCB0gXOaM Источники: • Нейронный машинный перевод редких слов с субсловными единицами (BPE) — Sennrich et al. (2015): https://arxiv.org/abs/1508.07909 • Языковые модели — это неконтролируемые многозадачные обучающиеся модели (GPT-2, байтовый уровень BPE) — Radford et al. (2019): https://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf • Законы масштабирования для нейронных языковых моделей — Kaplan et al. (2020): https://arxiv.org/abs/2001.08361 • ByT5: На пути к будущему без токенов с предварительно обученными байтово-байтовыми моделями — Сюэ и др. (2021): https://arxiv.org/abs/2105.13626 • Законы масштабирования с помощью словаря: Более крупные модели заслуживают более крупных словарей — Тао и др. (2024): https://arxiv.org/abs/2407.13623 • Байтовый латентный трансформер: Патчи масштабируются лучше, чем токены — Пагнони и др. (2024): https://arxiv.org/abs/2412.09871 • Стадо моделей Llama 3 — Граттафиори и др. (2024): https://arxiv.org/abs/2407.21783 • Токенизация с помощью байтового парного кодирования — курс Hugging Face LLM: https://huggingface.co/learn/llm-course/en/chapter6/5 • Вся необходимая математика для трансформеров — как масштабировать вашу модель: https://jax-ml.github.io/scaling-book/transformers/ О канале ML Visualized — это канал, созданный бывшим инженером по машинному обучению из FAANG, который снимает видео из своей спальни о том, как на самом деле работает современный ИИ. Каждое видео начинается с нуля и покадрово, шаг за шагом, раскрывает реальную математику и архитектуру таких систем, как ChatGPT, Claude и Gemini. Никаких пустых объяснений. Никакого «это черный ящик». Именно такие подробные, детальные объяснения механизмов внимания, эмбеддингов, токенизации, тонкой настройки и RAG мне бы очень пригодились, когда я сам этим занимал...

Название:

Почему LLM до сих пор используют BPE, а не просто 256 байтов?

Категория:

Разное