中文翻译暂不可用,显示俄语原文。

Что такое индуктивные biases трансформеров? (positional invariance, order sensitivity)?

Краткий тезис

Индуктивные biases — это априорные предположения, заложенные в архитектуру модели, которые направляют обучение и определяют, какие паттерны модель может эффективно выучить. У трансформеров ключевые biases включают positional invariance (без позиционных эмбеддингов модель не различает порядок токенов), order sensitivity (с механизмами вроде RoPE модель чувствительна к относительному порядку), отсутствие рекуррентности (в отличие от RNN) и полную параллелизуемость. Эти biases одновременно дают преимущества (скорость, дальние зависимости) и накладывают ограничения (отсутствие врождённой чувствительности к порядку, квадратичная сложность attention).


1. Термин: Индуктивные biases в машинном обучении

Индуктивный bias — это набор предположений, которые алгоритм использует для обобщения на невиданных данных. В контексте нейросетей bias определяется архитектурой: например, CNN предполагает локальность и трансляционную инвариантность (свёртки), RNN — последовательную обработку и рекуррентность, трансформер — глобальное взаимодействие через self-attention и независимость от порядка (без дополнительных механизмов).

Понимание biases помогает предсказать, какие задачи модель будет решать хорошо, а какие — плохо, и осознанно выбирать архитектуру под конкретную задачу.


2. Positional invariance (позиционная инвариантность)

Positional invariance — свойство чистого self-attention без позиционных эмбеддингов: модель не различает порядок токенов. Если подать на вход последовательность «кошка ест рыбу» или «рыба ест кошку», attention-механизм выдаст одинаковые представления для каждого токена, так как он оперирует только на множестве токенов, игнорируя их позиции.

Почему это проблема Язык — это последовательность, порядок слов критичен для смысла. Без позиционной информации трансформер не сможет отличить подлежащее от дополнения, понять времена глаголов и т.д.

Решение Добавление позиционных эмбеддингов (absolute, relative, RoPE, ALiBi). Они вносят информацию о положении токена в последовательности, нарушая инвариантность.

Индуктивный bias Изначально трансформер «считает», что порядок не важен. Это сильный bias, который приходится компенсировать внешними сигналами.


3. Order sensitivity (чувствительность к порядку) с RoPE и другими

Order sensitivityспособность модели различать порядок токенов после добавления позиционных эмбеддингов. Однако разные методы дают разную степень чувствительности:

  • Encoding|Positional Encoding|Positional Encoding|Absolute Encoding|positional embeddings (sinusoidal, learnable): модель может запомнить абсолютные позиции, но плохо обобщает на длинные последовательности.
  • Relative positional embeddings (T5, Transformer-XL): модель чувствительна к расстоянию между токенами, а не к их абсолютным позициям.
  • RoPE (Rotary Position Embedding): вращает query и key в attention в зависимости от позиции, что даёт относительную чувствительность — модель «знает», что токен на позиции 5 ближе к токену на позиции 6, чем к токену на позиции 100. RoPE не требует дополнительных параметров и хорошо экстраполируется на длинные контексты.
  • ALiBi (Attention with Linear Biases): добавляет линейный штраф к attention scores в зависимости от расстояния, что тоже даёт относительную чувствительность.

Индуктивный bias С RoPE модель «предполагает», что важны только относительные расстояния, а не абсолютные координаты. Это хорошо для языковых задач, где смысл часто зависит от локального контекста.


4. Отсутствие рекуррентности (no recurrence)

В отличие от RNN (LSTM, GRU), трансформер не имеет рекуррентных связей. RNN обрабатывают последовательность токен за токеном, передавая скрытое состояние. Это даёт им врождённую чувствительность к порядку и способность моделировать последовательные зависимости, но страдает от затухающих/взрывающихся градиентов и невозможности параллельной обработки.

Трансформер же обрабатывает все токены одновременно через self-attention. Это означает:

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

Индуктивный bias Трансформер «считает», что зависимости между токенами не зависят от их расстояния в последовательности (attention может соединить любые пары). Это позволяет моделировать дальние зависимости, но требует больше данных для обучения локальным паттернам (по сравнению с RNN, которые локальны по построению).


5. Parallelizability (параллелизуемость)

Parallelizability — возможность обрабатывать все токены одновременно, без последовательных зависимостей. Это не bias в строгом смысле, а следствие архитектуры, но оно определяет, как модель обучается и инференсится.

  • Преимущество обучение на GPU в десятки раз быстрее, чем RNN, особенно на длинных последовательностях.
  • Недостаток квадратичная сложность self-attention O(n²) по длине последовательности, что ограничивает длину контекста (хотя есть оптимизации: sparse attention, FlashAttention, линейный attention).

Индуктивный bias Модель «предполагает», что все токены доступны одновременно, и не требует последовательного развёртывания. Это делает трансформеры естественными для задач, где контекст целиком известен (машинный перевод, суммаризация), но менее подходящими для онлайн-предсказаний с потоковыми данными (хотя есть декодерные версии с causal masking).


6. Другие индуктивные biases трансформеров

Помимо перечисленных, в архитектуре есть и другие biases:

  • Self-attention bias каждый токен может взаимодействовать с любым другим (глобальное внимание). Это противоположно локальному вниманию CNN. Bias: «все пары токенов потенциально важны».
  • Multi-head attention bias разделение на головы позволяет модели учить разные типы отношений (синтаксические, семантические) параллельно. Bias: «зависимости многогранны».
  • Feed-forward bias после attention каждый токен проходит через общую MLP-сеть, что добавляет нелинейность и способность к запоминанию фактов. Bias: «каждый токен обрабатывается независимо после смешивания информации».
  • Layer normalization bias стабилизирует обучение, но вносит предположение, что распределения активаций должны быть нормализованы.
  • Causal masking (в декодерах): модель может видеть только предыдущие токены. Bias: «будущее не влияет на прошлое» — подходит для генерации.

7. Сравнение индуктивных biases: трансформер vs RNN vs CNN

СвойствоТрансформерRNNCNN
Чувствительность к порядкуНет (без PE), да (с PE)Да (врождённая)Нет (если без dilation)
Обработка последовательностиПараллельнаяПоследовательнаяПараллельная (свёртка)
Дальние зависимостиЛегко (attention)Трудно (затухание)Трудно (малое рецептивное поле)
ЛокальностьНет (глобальное внимание)Да (скрытое состояние)Да (локальные фильтры)
Параметрическая эффективностьНизкая (O(n²) attention)Высокая (O(n))Средняя (O(k*n))
Индуктивный biasГлобальное взаимодействиеПоследовательная динамикаЛокальная структура

8. Влияние biases на практическое применение (RAG, агенты)

В контексте Agentic RAG и AI-агентов понимание biases важно:

  • Positional invariance требует аккуратного выбора позиционных эмбеддингов при работе с длинными контекстами (например, в RAG-системах, где контекст может содержать сотни чанков). RoPE и ALiBi лучше экстраполируются.
  • Отсутствие рекуррентности означает, что агент не может «помнить» предыдущие шаги без явного контекста (например, через историю диалога). Это ограничение компенсируется буфером сообщений.
  • Parallelizability позволяет быстро обрабатывать большие пакеты документов, но квадратичная сложность может стать узким местом при инференсе с длинным контекстом (используют FlashAttention, sliding window).
  • Causal masking в декодерах (LLM) подходит для генерации ответов, но не для bidirectional понимания (как в encoder-only моделях типа BERT).

9. Как индуктивные biases влияют на обучение и fine-tuning

  • Positional invariance означает, что при fine-tuning на задачах, где порядок критичен (например, извлечение отношений), нужно убедиться, что позиционные эмбеддинги адекватны.
  • Отсутствие рекуррентности делает трансформеры менее склонными к overfitting на короткие последовательности, но требует больше данных для изучения локальных паттернов (по сравнению с RNN).
  • Global attention может приводить к «размыванию» внимания на длинных контекстах (проблема lost in the middle). Это bias, который нужно учитывать при построении RAG-пайплайнов (например, использовать re-ranking или sliding window).
  • Multi-head attention даёт возможность учить разные представления, но может приводить к избыточности (некоторые головы могут быть неактивны). Pruning голов — способ уменьшить bias.

Пет-проект для закрепления

Задача Исследовать влияние различных позиционных эмбеддингов на качество retrieval в RAG-системе.

Инструменты Python, HuggingFace Transformers, FAISS, Datasets (например, Natural Questions), библиотека для эмбеддингов (SentenceTransformers).

Шаги:

  1. Выберите датасет вопросов и документов (например, Natural Questions).
  2. Реализуйте три варианта эмбеддера на основе BERT (absolute PE), RoBERTa (absolute PE) и модели с RoPE (например, Llama-2 или Mistral, используя последний hidden state как эмбеддинг).
  3. Постройте векторную БД (FAISS) для каждого эмбеддера.
  4. Для каждого запроса выполните retrieval (top-10) и посчитайте метрики: Recall@5, MRR, Hit Rate.
  5. Сравните результаты. Ожидайте, что модели с RoPE (Llama) могут лучше ранжировать документы с учётом относительного порядка слов, но absolute PE (BERT) может быть достаточно для коротких запросов.
  6. Дополнительно: протестируйте экстраполяцию на длинные запросы (например, сгенерируйте запросы длиной >512 токенов) и посмотрите, как падает качество.

Ожидаемый результат Таблица с метриками для трёх моделей, вывод о том, какой тип позиционных эмбеддингов лучше подходит для retrieval в RAG, и понимание, как индуктивные biases влияют на практическую задачу.


Связь с другими вопросами

ВопросТема
669Чем RoPE отличается от абсолютных позиционных эмбеддингов?
670Как работает self-attention и почему он квадратичен?
671Что такое causal masking и зачем он в декодерах?
672Как трансформеры справляются с длинными контекстами?
673В чём разница между encoder-only и decoder-only архитектурами?
674Как индуктивные biases влияют на fine-tuning LLM?

Навигация