DeepDigest
Qiita / Machine Learning · · ~3 мин

LLM: как работает угадывание следующего слова — разбор механизма

Автор статьи — инженер с 25‑летним опытом — объясняет работу больших языковых моделей (LLM) на простых примерах и метафорах. Он показывает, что суть LLM — в угадывании следующего слова, а ключевую роль играет механизм внимания, который помогает выбрать, на какие слова обратить внимание. Знания в модели формируются в ходе обучения на больших объёмах текста и распределены по разным слоям.

LLM
LLM: как работает угадывание следующего слова — разбор механизма

Автор статьи — инженер с 25‑летним опытом — на примерах и метафорах объясняет, как устроены большие языковые модели (LLM). Он рассказывает, что суть работы LLM сводится к угадыванию следующего слова в предложении. Например, если ввести «Какая погода сегодня», модель переберёт варианты («солнечно», «дождливо» и т. д.) и выберет наиболее вероятный. Затем процесс повторяется: на основе уже полученного фрагмента строится следующий, и так формируется текст.

Ключевой механизм в LLM — механизм внимания (attention). Он помогает модели понять, на какие предыдущие слова стоит обратить особое внимание при выборе следующего. Например, в предложении «Я поставил вазу на полку, но она упала и разбилась» при использовании слова «она» модель акцентируется на слове «ваза», а не на «полка» или «расставленный».

Чтобы компьютер мог работать со словами, их преобразуют в координаты на «карте значений»: слова со схожим смыслом оказываются рядом, а далёкие по смыслу — на расстоянии. Например, «яблоки» и «апельсины» окажутся рядом, а «яблоки» и «самосвалы» — далеко друг от друга. Этот процесс называется встраиванием (embedding).

Сначала слова разбивают на фрагменты (токены) — процесс называется токенизацией (tokenization). Часто токен — это не целое слово, а его часть. Например, английское слово «невероятный» можно разбить на фрагменты, отражающие его составные части. Один из распространённых способов токенизации — BPE (парное кодирование байтов).

Модель многократно повторяет упражнение «угадай следующее слово» на огромном количестве текстов. В результате она самостоятельно выстраивает «карту значений»: слова, которые часто встречаются в схожем контексте, оказываются рядом. Например, фразы «ешьте яблоки», «ешьте апельсины» и «ешьте виноград» создают в модели общую область значений.

Работа LLM строится на взаимодействии двух компонентов: механизма внимания (который определяет, на что обратить внимание в предложении) и слоя памяти (который хранит знания и извлекает их для ответа). Автор сравнивает это с библиотекой: администратор (механизм внимания) указывает, на какую полку посмотреть, а библиотекарь (слой памяти) извлекает нужную информацию.

Знания в модели не хранятся в одном месте — они распределены по слоям и частям. Автор подчёркивает: его вклад заключается не в создании знаний, а в том, чтобы правильно обработать уже имеющееся содержимое и сделать механизм понятным. Он воссоздал небольшой LLM (llcore) и убедился, что его реализация даёт тот же результат, что и официальная версия (с нулевой ошибкой в пределах погрешности округления).

В следующих частях статьи автор планирует рассказать, как именно знания попадают в модель, почему длинные разговоры усложняют работу ИИ и как разработчики пытаются оптимизировать процесс.

あなたの
 │
 ▼
① をかくむトークン ← 1
 │
 ▼
② をのにえるめみ ← 1
 │
 ▼
③ どのにするかめる ← 2 ★
 │
 ▼
④ をきしてえる ← 3
 │
 ▼③④をもねる
 │
⑤ ののにをつけてぶ ← 4
 │
 ▼
のそしてまた①へってりす
あなたの はいい
 │
 ▼
① をかくむトークン … / は / いい / みたいにかけらにける
 │
 ▼
② かけらをのにえるめみ … かけらをのののにする
 │
 ▼
このたちが③ へれていく → 2
// оригинал
Qiita / Machine Learning ↗ Читать оригинал
306 просмотров
// поделиться Telegram VK