Теория информации
Information Theory в Machine Learning
CLIP от OpenAI выравнивает изображения и тексты, используя InfoNCE loss - прямое применение теоремы о взаимной информации. GPT-4, VAE, диффузионные модели - всё это реализует информационно-теоретические принципы.
- **VAE и β-VAE** (DeepMind) использовали IB-принцип для disentangled representations. Это позволило разделить «форму» и «цвет» объектов в латентном пространстве.
- **CLIP** (OpenAI) обучается максимизировать I(изображение; текст) через InfoNCE. Это то, почему CLIP понимает произвольные описания изображений.
- **Neural compression** (Google Balle, 2020) - явная оптимизация R-D компромисса через VAE + entropy coding. Превосходит JPEG при низких битрейтах.
Предварительные знания
Вариационный вывод и ELBO
Вариационный вывод решает задачу: как приблизить апостериорное распределение p(z|x), которое интрактабельно? Идея - выбрать семейство «простых» распределений q(z|x) и найти то, что ближе всего к p(z|x) по KL-дивергенции. Минимизация KL[q||p] эквивалентна максимизации Evidence Lower Bound (ELBO) - это связь с теорией информации: ELBO = E_q[log p(x|z)] − KL[q(z|x) || p(z)].
**ELBO:** log p(x) = ELBO + KL[q(z|x) || p(z|x)] ≥ ELBO. ELBO = E_q[log p(x|z)] − KL[q(z|x) || p(z)]. Первый член - reconstruction quality (правдоподобие данных). Второй - regularization (близость к prior). При q=p(z|x) достигается равенство: ELBO = log p(x).
| Компонент ELBO | Информационный смысл | Что оптимизирует |
|---|---|---|
| E_q[log p(x|z)] | −H(X|Z) - взаимная информация | Качество реконструкции |
| −KL[q||p] | Regularization, близость к prior | Структуру латентного пространства |
| ELBO целиком | Нижняя граница log p(x) | Правдоподобие данных |
| KL[q||p(z|x)] | Точность аппроксимации | Насколько q близко к истине |
Историческая справка
Вариационный вывод использовался в статистике задолго до ML, но широкое распространение в DL получил с VAE (Kingma и Welling, 2013). VAE - первый масштабируемый генеративный метод с явным ELBO-обучением. С тех пор ELBO стал стандартным инструментом для генеративных моделей и Bayesian DL.
VAE минимизирует reconstruction loss так же, как обычный автоэнкодер
VAE максимизирует ELBO = reconstruction − KL[q||prior]. KL-регуляризация фундаментально меняет цель: не просто точная реконструкция, но и структурированное латентное пространство.
Без KL VAE вырождается в детерминированный автоэнкодер. KL обеспечивает, что z можно семплировать из prior и получать осмысленные реконструкции.
KL-член в ELBO = KL[q(z|x) || p(z)] всегда ≥ 0. Что произойдёт с обучением, если его убрать (β=0 в β-VAE)?
ELBO как кодирование
ELBO имеет красивую интерпретацию через MDL (Minimum Description Length): нижняя граница log p(x) - это минимальная длина описания x. Первый член ELBO - длина кода x при известном z (реконструкция). Второй - длина кода z (KL от prior). Вместе: ELBO = −(описание z) − (описание x при z). Максимизация ELBO = минимизация суммарной длины описания.
**Coding interpretation ELBO:** −log p(x) ≥ KL[q(z|x)||p(z)] + E_q[−log p(x|z)]. Правая часть = длина кода z по схеме с prior + длина кода x|z. Это два-часовое кодирование (two-part code): сначала z, потом x. MDL principle: хорошая модель = хороший компрессор.
| Метод | Информационный принцип | Что оптимизируется |
|---|---|---|
| VAE | ELBO = MDL two-part code | log p(x) нижняя граница |
| β-VAE | β × KL + reconstruction | Disentanglement |
| VQ-VAE | Discrete codebook = Хаффман | Дискретные представления |
| InfoVAE | ELBO + mutual information term | Качество z-структуры |
Историческая справка
Связь между ELBO и MDL восходит к работам Риссанена (1978) и Уоллеса (1968). Применение к нейросетям систематизировал Хинтон в «Wake-Sleep алгоритме» (1995) и позже VAE (2013). Понимание ELBO как компрессии открывает путь к neural compression.
Маленький KL в VAE - признак хорошей модели
Маленький KL может означать коллапс posterior (q ≈ prior), что приводит к плохой реконструкции. Оптимум - баланс между KL и reconstruction.
Минимизировать только KL легко: сделай q = prior. Но тогда z не несёт информации о x, и реконструкция невозможна.
VAE с KL=50 нат и reconstruction loss=30 нат vs модель с KL=10 нат и reconstruction=100 нат. Которая имеет лучший ELBO?
Information Bottleneck
Information Bottleneck (Tishby, 2000) - принцип обучения: найти представление Z входа X, максимально информативное о цели Y при минимальной сложности (то есть минимальной взаимной информации с X). Это компромисс: I(Z;Y) максимально, I(Z;X) минимально. Лагранжиан IB: max I(Z;Y) − β·I(Z;X). Связь с VAE: при определённых допущениях VAE реализует IB.
**Information Bottleneck:** L_IB = I(Z;Y) − β·I(Z;X) = max. При β→0: Z сохраняет всю информацию о X. При β→∞: Z минимальное суффициентное статистика для Y. Цепочка Маркова: Y − X − Z (Z определяется только через X). Марковская граница: I(Z;Y) ≤ I(X;Y) - Z не может знать Y лучше X.
| β | Предпочтительное Z | Пример в DL |
|---|---|---|
| β→0 | Z = X (без сжатия) | Автоэнкодер без регуляризации |
| β≈1 | Баланс полезности и сжатия | VAE, стандартное обучение |
| β>>1 | Z - минимальная статистика Y | Сильный IB, feature selection |
| β→∞ | Z = const (максимальное сжатие) | Игнорирование входа |
Историческая справка
Naftali Tishby предложил IB в 2000 году. В 2017 году он и Schweighofer выдвинули спорную гипотезу «информационной плоскости» - что нейросети проходят через фазы compression и fitting. Гипотеза вызвала дискуссию: Saxe et al. показали, что это артефакт выбора активации.
Information Bottleneck доказывает, что нейросети сжимают информацию о X во время обучения
Гипотеза Tishby о compression phase спорна и зависит от функции активации и метрики измерения I(Z;X).
Saxe et al. (2018) показали, что при ReLU-активациях сжатие не наблюдается. Эффект специфичен для saturating активаций (tanh, sigmoid).
В Information Bottleneck цепочка Маркова Y − X − Z означает:
Оценка взаимной информации
Взаимная информация I(X;Y) сложна для вычисления в непрерывных пространствах высокой размерности. Нейросетевые оценщики решают это: MINE (Mutual Information Neural Estimation), CLUB (Contrastive Log-ratio Upper Bound), InfoNCE - разные нижние и верхние границы I(X;Y) через нейросети. Ключевое применение: контрастивное обучение (SimCLR, CLIP) - это максимизация I(X;Z).
**MINE:** I(X;Y) ≥ E_{p(x,y)}[T(x,y)] − log E_{p(x)p(y)}[e^{T(x,y)}], где T - нейросеть-оценщик. Максимизация по T → I(X;Y). **InfoNCE:** I(X;Y) ≥ log(N) − L_NCE, где L_NCE - contrastive loss. Применяется в SimCLR, CLIP для обучения представлений.
| Метод | Тип | Применение | Сложность |
|---|---|---|---|
| MINE | Нижняя граница | Диагностика нейросетей | O(N²) |
| InfoNCE | Нижняя граница | SimCLR, CLIP | O(N²) |
| CLUB | Верхняя граница | IB минимизация | O(N²) |
| KSG | Непараметрический | Low-dim случаи | O(N log N) |
Историческая справка
MINE (Belghazi et al., 2018) показал, что взаимную информацию можно оценивать нейросетью. InfoNCE (van den Oord, 2018) легло в основу контрастивного обучения. CLIP (OpenAI, 2021) использует InfoNCE для выравнивания изображений и текстов - результат ML применения теоретико-информационных идей.
InfoNCE loss минимизирует I(X;Z) для лучшей инвариантности
InfoNCE минимизирует −I(X;Z) (или эквивалентно, максимизирует I(X;Z)). Цель - максимальная взаимная информация между входом и представлением.
Контрастивное обучение хочет, чтобы представления содержали максимум информации об исходных данных (позитивные пары) и минимум о нерелевантных (негативные пары).
SimCLR обучает представления, максимизируя I(X;Z). Почему нужен InfoNCE, а нельзя просто посчитать I(X;Z) напрямую?
Ключевые идеи
- **ELBO** = E_q[log p(x|z)] − KL[q||p] = нижняя граница log p(x). Максимизация ELBO = минимизация двухчастного кода (MDL).
- **Information Bottleneck:** max I(Z;Y) − β·I(Z;X). Компромисс: Z должно быть достаточным для Y, но минимально сложным относительно X.
- **MINE/InfoNCE:** нейросетевые оценщики взаимной информации. InfoNCE ≤ I(X;Y). Контрастивное обучение = максимизация I.
- **VAE = IB:** при определённых допущениях VAE решает IB задачу. ELBO = цель обучения = информационный принцип.
Связанные темы
IT в ML связывает теоретические концепции с практическими методами обучения:
- Rate-Distortion Theory — ELBO = R-D компромисс для кодирования данных. Нейросетевые кодеки = явная R-D оптимизация
- Information Theory в Deep Learning — PAC-Bayes, обобщение, information plane - следующий уровень
- Сжатие данных: JPEG, H.265, LLM — Neural compression = VAE + entropy coding для сжатия медиа
Вопросы для размышления
- VAE и контрастивное обучение - разные подходы к максимизации I(X;Z). В чём принципиальная разница их стратегии?
- Если β→∞ в β-VAE, что происходит с реконструкцией? Почему это соответствует максимальному 'сжатию' в Information Bottleneck?
- CLIP обучается на миллиардах пар изображение-текст. Что, с информационной точки зрения, хранится в весах CLIP после обучения?