Добавить в корзинуПозвонить
Найти в Дзене
ontorag

Анализ исследования "Randomly Removing 50% of Dimensions in Text Embeddings has Minimal Impact on Retrieval and Classification Tasks"

Данная работа исследует удивительное явление: случайное удаление до 50% размерности текстовых эмбеддингов приводит лишь к незначительному снижению производительности (менее 10%) в задачах поиска и классификации. Авторы пытаются понять механизмы этого явления и его практическое значение. Ключевые находки: Эксперименты проводились на шести современных энкодерах, включая модели на основе больших языковых моделей, и охватывали 26 различных задач из бенчмарков BEIR и MTEB. Результаты оказались стабильными независимо от способа выбора удаляемых размерностей - будь то последние размерности или случайно выбранные. Даже модель E5-Mistral сохраняла 90% своей исходной производительности при удалении 90% размерностей. Авторы проверяют три существующие теории, которые могли бы объяснить наблюдения: 3.1 Анизотропия эмбеддингов Теория: эмбеддинги концентрируются в узком конусе, не используя полное пространство представлений. Эксперимент: Результат: Несмотря на улучшение использования пространства (

Данная работа исследует удивительное явление: случайное удаление до 50% размерности текстовых эмбеддингов приводит лишь к незначительному снижению производительности (менее 10%) в задачах поиска и классификации. Авторы пытаются понять механизмы этого явления и его практическое значение.

Ключевые находки:

  • При удалении 50% размерностей эмбеддинги сохраняют 95% производительности в классификации и 90% в поиске
  • Это верно независимо от способа выбора удаляемых размерностей
  • Корреляция Спирмена показывает, что ранжирование документов практически не изменяется

Эксперименты проводились на шести современных энкодерах, включая модели на основе больших языковых моделей, и охватывали 26 различных задач из бенчмарков BEIR и MTEB. Результаты оказались стабильными независимо от способа выбора удаляемых размерностей - будь то последние размерности или случайно выбранные. Даже модель E5-Mistral сохраняла 90% своей исходной производительности при удалении 90% размерностей.

Авторы проверяют три существующие теории, которые могли бы объяснить наблюдения:

3.1 Анизотропия эмбеддингов

Теория: эмбеддинги концентрируются в узком конусе, не используя полное пространство представлений.

Эксперимент:

  • Контрастивное обучение BERT и T5 с промежуточными чекпоинтами
  • Измерение анизотропии через Uniform Loss и IsoScore

Результат: Несмотря на улучшение использования пространства (снижение анизотропии), относительная производительность усеченных эмбеддингов остается стабильной. Корреляция слабая (0.36 для Uniform Loss, -0.47 для IsoScore).

Теория: высокая корреляция между размерностями делает эмбеддинги устойчивыми к удалению размерностей.

Измерение: среднее значение корреляционного коэффициента между размерностями.

Результат: Корреляция Пирсона между коллапсом и относительной производительностью составляет лишь 0.45. Размерный коллапс не объясняет наблюдения.

Исследователи из Университета Мангейма сделали поразительное открытие, которое может изменить наш подход к работе с текстовыми эмбеддингами. Оказалось, что случайное удаление до 50% размерностей из современных текстовых эмбеддингов приводит лишь к минимальной потере производительности - менее 10% в задачах поиска и классификации.

3.3 Выбросные размерности (Outlier Dimensions)

Теория: несколько размерностей с аномально высокими/низкими значениями определяют производительность.

Метод: размерности, отклоняющиеся более чем на 3σ от среднего.

Результаты:

  • Количество выбросных размерностей невелико (максимум 0.8% у E5-Mistral)
  • Удаление выбросов не влияет критически на производительность в 5 из 6 моделей
  • Только E5-Mistral показывает небольшое улучшение, но эффект минимален

Поначалу исследователи предполагали, что причина кроется в неэффективном использовании пространства представлений - анизотропии, размерном коллапсе или влиянии выбросных размерностей. Однако детальный анализ показал, что ни одна из этих гипотез не объясняет наблюдаемое явление. Даже когда модели лучше использовали пространство представлений, усеченные эмбеддинги по-прежнему сохраняли высокую производительность.

Ключ к разгадке обнаружился при анализе вклада каждой размерности в итоговую производительность. Выяснилось, что в каждой модели существует значительное количество "деградирующих размерностей" - тех, удаление которых фактически улучшает производительность. Например, в модели E5-large было найдено 430 таких размерностей из 1024 общих. Эти вредные размерности равномерно распределены по всему эмбеддингу, поэтому случайное удаление затрагивает как полезные, так и вредные компоненты, давая минимальный суммарный эффект.

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

Интересно, что похожие закономерности были обнаружены и в больших языковых моделях типа Llama и Qwen при работе с задачами генерации текста. Правда, здесь результаты оказались менее стабильными - на некоторых задачах, особенно математических, производительность сильно деградировала. Это указывает на то, что феномен не универсален для всех типов задач.

Исследование имеет существенные ограничения - оно проводилось только на английском языке и не изучало причины возникновения деградирующих размерностей в процессе обучения. Также не была исследована связь с методом Matryoshka Representation Learning, специально разработанным для создания усекаемых эмбеддингов. Тем не менее, работа открывает новые горизонты как для практического сжатия эмбеддингов, так и для понимания того, как современные текстовые энкодеры используют пространство представлений, и указывает пути для улучшения архитектур будущих моделей.

Как тексты превращаются в векторы в E5-large

Когда вы подаете тексты разной длины в E5-large, первым делом происходит токенизация. Модель разбивает ваш текст на субслова (токены) с помощью токенизатора, обычно основанного на алгоритме SentencePiece или WordPiece. Каждый токен получает свой числовой ID из словаря модели (обычно ~50-100к токенов).

Короткий файл может дать 50 токенов, длинный документ - 500+ токенов. Но есть лимит: E5-large может обработать максимум 512 токенов за раз. Если ваш текст длиннее, он обрежется.

Каждый токен превращается в вектор размерности 1024 (скрытая размерность модели). К этим векторам добавляются позиционные энкодинги, чтобы модель понимала порядок слов. Получается последовательность векторов: [token1_vector, token2_vector, ..., tokenN_vector], где каждый вектор имеет размерность 1024.

Уточнение, что 1024 - это фиксированная размерность каждого вектора в модели E5-large. Это означает, что каждый отдельный токен превращается в вектор из 1024 чисел. Это как если бы у каждого слова была "анкета" из 1024 вопросов.

textТокен "кот" → [0.123, -0.456, 0.789, ..., 0.234] (1024 числа)
Токен "мяу" → [-0.234, 0.567, -0.123, ..., 0.567] (1024 числа)

Размерность 1024 никогда не меняется - это архитектурная константа модели.

Количество токенов - это то, на сколько частей разбился ваш входной текст. Это переменная величина:

  • Короткий твит: ~15-50 токенов
  • Средний абзац: ~100-200 токенов
  • Длинная статья: 500+ токенов (до лимита в 512 для E5-large)

Представьте матрицу:

textВаш текст: "Привет, как дела?"
Токены: ["Привет", ",", "как", "дела", "?"] ← 5 токенов

Матрица эмбеддингов:
Токен 1: [0.1, -0.2, 0.3, ..., 0.8] ← 1024 размерности
Токен 2: [0.4, 0.1, -0.5, ..., -0.2] ← 1024 размерности
Токен 3: [-0.3, 0.7, 0.1, ..., 0.4] ← 1024 размерности
Токен 4: [0.6, -0.1, 0.9, ..., 0.3] ← 1024 размерности
Токен 5: [0.2, 0.5, -0.7, ..., 0.1] ← 1024 размерности

Размер матрицы: 5 × 1024

Короткий файл (100 слов):

  • ~75-120 токенов × 1024 размерности = матрица 120×1024
  • После pooling → один вектор 1024

Длинный файл (1000 слов):

  • ~750-1200 токенов, но обрезается до 512 × 1024 размерности = матрица 512×1024
  • После pooling → один вектор 1024

Итоговый эмбеддинг всегда 1024, независимо от длины исходного текста!

Когда в статье говорят об удалении "50% размерностей", речь идет именно об этих 1024 размерностях итогового вектора. Они берут финальный вектор размером 1024 и удаляют, скажем, 512 размерностей, получая вектор размером 512.

Количество токенов в исходном тексте на это никак не влияет - будь у вас 50 токенов или 500, итоговый эмбеддинг всё равно будет размером 1024, и из него всё равно можно удалить половину размерностей без потери качества.

Главное различие:

  • Количество токенов = сколько слов/частей в вашем тексте (переменная)
  • Размерность эмбеддинга = сколько "характеристик" у каждого токена и у финального вектора (константа 1024)

Эта последовательность векторов проходит через 12 слоев трансформера (для E5-large). В каждом слое происходит:

  • Self-attention: токены "смотрят" друг на друга, обмениваются информацией. Слово "банк" рядом со словом "река" получит одни активации, а рядом с "деньги" - совсем другие
  • Feed-forward сети: нелинейные преобразования для извлечения более сложных паттернов

На выходе каждого слоя у вас по-прежнему последовательность векторов размерности 1024, но теперь каждый вектор содержит контекстуализированную информацию обо всей последовательности.

Вот самый важный момент! У вас есть последовательность из N векторов (по числу токенов), но нужен один вектор размерности 1024. E5-large использует mean pooling - усредняет все токенные представления:

textfinal_embedding = average(token1_vec + token2_vec + ... + tokenN_vec)

Именно здесь происходит "магия": информация о семантике всего документа сжимается в единый вектор.

Каждая из 1024 размерностей итогового вектора - это детектор определенных семантических паттернов. Грубо говоря:

  • Размерность 1 может активироваться на тему "медицина"
  • Размерность 234 - на негативную тональность
  • Размерность 567 - на формальный стиль
  • И так далее

Но это не жесткое разделение! Одна размерность может участвовать в кодировании нескольких аспектов одновременно.

Короткие тексты (твиты, заголовки): мало токенов → pooling усредняет небольшое количество богатых контекстом векторов → итоговый эмбеддинг может быть довольно "чистым" семантически.

Длинные документы: много токенов → pooling усредняет множество векторов с разной семантикой → итоговый эмбеддинг становится более "размытым", представляя общую тематику документа.

Обрезанные тексты (>512 токенов): модель видит только начало, поэтому эмбеддинг может не отражать полное содержание.

Теперь становится понятно, почему работа о "деградирующих размерностях" такая важная! Из 1024 размерностей в E5-large, согласно исследованию, 430 размерностей фактически ухудшают качество представления текста. Это означает, что почти половина "детекторов паттернов" работает неправильно или создает шум.

При pooling-операции эти вредные размерности "загрязняют" итоговый вектор. Удаление их могло бы дать более чистые и качественные эмбеддинги для ваших задач поиска или кластеризации документов.