# Грант Сандерсон: «Обучение LLM — это сжатие данных»

Источник: https://www.youtube.com/watch?v=GlYgs6v2YfU
Канал: 3Blue1Brown
Опубликовано: 16.07.2026

---

# Искусство сжатия: как кросс-энтропия управляет обучением нейросетей
[[JUMP:0:00]]

Фундаментальный принцип машинного обучения — функция потерь (loss function) — на деле оказывается тесно связанным с теорией сжатия данных. В этом материале, основанном на разборе Гранта Сандерсона (канал **3Blue1Brown**), мы рассмотрим, почему кросс-энтропия является «золотым стандартом» для обучения языковых моделей и как она превращает задачу предсказания следующего токена в задачу максимально эффективного сжатия информации.

## 📊 Основы: от сжатия к кросс-энтропии
[[JUMP:2:52]]

Идея связи сжатия и структуры языка не нова: еще в 2002 году исследователи показали, что можно классифицировать языки и определять их родство, используя лишь алгоритм архивации `gzip`. Суть проста: если мы берем фрагмент документа B и сжимаем его с использованием словаря или паттернов, оптимизированных для документа A, размер файла покажет, насколько языки похожи друг на друга.

### Кросс-энтропия в теории кодирования
Для оптимального кодирования количество бит, которое мы выделяем символу, должно быть равно отрицательному логарифму по основанию 2 от вероятности его появления ($-\log_2 P$). 

Когда система кодирования оптимизирована для одного распределения вероятностей ($Q$), но применяется к данным из другого распределения ($P$), возникают потери эффективности. Эта средняя стоимость (в битах) и называется **кросс-энтропией**.

*   **Распределение $Q$**: то, для чего мы оптимизировали «архиватор».
*   **Распределение $P$**: реальное распределение данных, с которыми мы столкнулись.
*   **Минимум**: значение кросс-энтропии достигает своего минимума тогда и только тогда, когда $Q$ полностью идентично $P$, и это значение равно энтропии распределения $P$.

## 🧠 Применение в обучении LLM
[[JUMP:14:55]]

В контексте больших языковых моделей (LLM) «архиватором» выступает сама модель — функция, которая на вход получает последовательность токенов, а на выходе выдает распределение вероятностей для следующего токена.

### Почему именно кросс-энтропия?
При обучении нейросети мы стремимся к тому, чтобы модель была «наименее удивлена» реальными данными. 

*   Если модель присваивает истинному следующему токену высокую вероятность, потери (loss) малы.
*   Если вероятность низкая, модель получает «штраф», величина которого определяется логарифмической шкалой.

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

## 🧪 Дистилляция и KL-дивергенция
[[JUMP:26:13]]

В обучении нейросетей часто применяется **дистилляция** — процесс, при котором маленькая модель пытается повторить поведение гораздо более крупной «учительской» модели. 

Вместо того чтобы сравнивать результат модели с жестким фактом (истинным токеном), мы сравниваем распределение вероятностей маленькой модели с распределением большой. Это делает процесс обучения гораздо более «богатым» и информативным, так как модель получает сигнал не только о том, что было на самом деле, но и о том, какие альтернативные варианты были «почти верными».

### Разница между кросс-энтропией и KL-дивергенцией
Если кросс-энтропия измеряет общее количество «бит» для кодирования, то **KL-дивергенция** (расстояние Кульбака — Лейблера) измеряет разницу между двумя распределениями вероятностей.

*   Она показывает, сколько «лишних бит» мы тратим из-за несовершенства нашей модели (насколько она «расточительна»).
*   В отличие от метрики расстояния, KL-дивергенция асимметрична: расстояние от $Q$ к $P$ не равно расстоянию от $P$ к $Q$.