Embedding
Материал из MachineLearning.
| | Статья написана с использованием LLM Claude Opus 4.8 и проверена участником Nikita Saveliuk 12:53, 26 июня 2026 (MSD) |
|
Эмбеддинг (от англ. embedding — вложение) — отображение дискретных объектов (слов, символов, категорий, узлов графа) в векторы вещественного пространства фиксированной размерности, при котором семантическая или структурная близость объектов выражается геометрической близостью их векторов. Вместо разреженного вектора-индикатора (One-hot encoding) эмбеддинг сжимает объект в плотное низкоразмерное представление, координаты которого не имеют заранее заданного смысла, но в совокупности отражают свойства объекта, выученные из данных.
Эмбеддинги обучаются: их компоненты являются параметрами модели и настраиваются вместе с остальными весами в ходе оптимизации целевого функционала. Близкие по смыслу объекты — синонимичные слова, похожие товары, связанные узлы графа — оказываются рядом в пространстве представлений, а арифметические операции над векторами приобретают содержательную интерпретацию. Знаменитый пример из word2vec: вектор «король» минус «мужчина» плюс «женщина» оказывается ближе всего к вектору «королева».
Эмбеддинги лежат в основе современной обработки естественного языка, рекомендательных систем, поиска и компьютерного зрения. Они служат одновременно способом борьбы с «проклятием размерности» при кодировании категорий высокой кардинальности и инструментом переноса знаний: представления, обученные на большом корпусе, переиспользуются в задачах с малым числом размеченных примеров.
Историческая справка
Идея представлять объекты точками в пространстве признаков восходит к векторной модели поиска (Salton, 1970-е) и латентно-семантическому анализу (Deerwester et al., 1990), где слова и документы отображались в низкоразмерное пространство через сингулярное разложение матрицы «слово—документ». В нейросетевом контексте распределённые представления были предложены в работах Хинтона (Hinton, 1986), а первая полноценная нейросетевая языковая модель с обучаемыми векторами слов построена Бенжио с соавторами (Bengio et al., 2003).
Широкое распространение эмбеддинги получили после выхода word2vec (Mikolov et al., 2013), где была предложена вычислительно эффективная схема обучения векторов слов на корпусах из миллиардов токенов и продемонстрирована арифметика аналогий. Вскоре появился GloVe (Pennington et al., 2014), объединивший идеи матричного разложения и предсказательных моделей. Следующий качественный скачок — контекстные эмбеддинги: ELMo (Peters et al., 2018) и BERT (Devlin et al., 2019), в которых вектор слова перестал быть фиксированным и стал зависеть от окружения, что разрешило проблему многозначности.
С конца 2010-х фокус сместился с представлений отдельных слов на представления целых предложений и документов. Sentence-BERT (Reimers, Gurevych, 2019) адаптировал BERT для получения сравнимых по косинусной близости векторов предложений; позднее модели семейств E5, GTE и BGE, обучаемые контрастными методами на парах «запрос—документ», стали стандартом для семантического поиска. Эти представления — основа архитектуры дополненной генерации (англ. retrieval-augmented generation, RAG) и индустрии векторных баз данных.
Постановка задачи
Пусть имеется конечный словарь объектов . Эмбеддингом называется отображение, сопоставляющее каждому объекту
вектор
, где
— размерность пространства представлений. Все векторы собираются в матрицу эмбеддингов
, строки которой обучаются как параметры модели.
Технически переход от объекта к вектору есть произведение one-hot вектора на матрицу
:
,
что эквивалентно выбору -й строки матрицы. Поэтому слой эмбеддинга реализуется как операция индексирования (англ. lookup) без явного матричного умножения.
Цель обучения — подобрать так, чтобы геометрия пространства отражала нужное отношение между объектами. Формализация этого отношения зависит от задачи: предсказание соседних слов в тексте, восстановление пропущенного токена, близость пользователя и товара по истории взаимодействий. Качество представлений измеряется либо напрямую (корреляция косинусной близости с человеческими оценками сходства слов), либо по результату на конечной задаче, где эмбеддинги используются как входные признаки.
Способы получения эмбеддингов
Предсказательные модели: word2vec
Модель word2vec обучает векторы слов, решая вспомогательную задачу предсказания слова по его контексту. В варианте Skip-gram для каждого центрального слова максимизируется вероятность окружающих слов в окне радиуса
:
.
Вероятность задаётся через softmax по скалярным произведениям векторов:
,
где и
— векторы слова в роли центрального и контекстного соответственно. Прямое вычисление знаменателя требует суммирования по всему словарю, поэтому на практике применяют негативное сэмплирование (англ. negative sampling): задача сводится к различению истинных пар «слово—контекст» от случайно сгенерированных, и нормировка по всему словарю заменяется логистической функцией на нескольких отрицательных примерах.
Матричное разложение: GloVe
Альтернативный подход исходит из глобальной статистики совместной встречаемости. Пусть — число совместных появлений слов
и
в одном окне по всему корпусу. GloVe подбирает векторы так, чтобы их скалярное произведение приближало логарифм частоты совместной встречаемости:
,
где — скалярные смещения, а весовая функция
подавляет вклад редких и переоценивает вклад частых пар, не давая последним доминировать. Такая формулировка явно связывает обучаемые представления с матрицей совместной встречаемости.
Связь предсказательных и матричных методов
Различие между word2vec и методами разложения оказывается менее принципиальным, чем кажется. Леви и Голдберг (Levy, Goldberg, 2014) показали, что skip-gram с негативным сэмплированием неявно факторизует матрицу поточечной взаимной информации (англ. pointwise mutual information, PMI), сдвинутой на константу. Точнее, оптимум целевой функции достигается, когда скалярное произведение векторов слова и контекста равно
,
где — число отрицательных примеров на одну истинную пару. Это означает, что предсказательное обучение word2vec и явное разложение матрицы совместной статистики (как в LSA и GloVe) решают по сути одну и ту же задачу разными вычислительными средствами. Результат объяснил, почему столь несхожие на вид методы дают сопоставимые по качеству представления.
Контекстные эмбеддинги
В word2vec и GloVe каждому слову соответствует ровно один вектор, что не позволяет различить значения многозначных слов (например, «лук» как растение и как оружие). Контекстные модели снимают это ограничение: вектор слова вычисляется как функция всего предложения. В BERT представление получается из глубокого трансформера, обучаемого на задаче восстановления замаскированных токенов (англ. masked language modeling): часть слов во входе заменяется специальным токеном, и модель предсказывает их по двустороннему контексту. Итоговый эмбеддинг слова зависит от соседей, поэтому одно и то же слово в разных предложениях получает разные векторы.
Свойства
Преимущества
- Плотность и компактность. Размерность
(обычно от десятков до сотен) на порядки меньше размера словаря, что снижает число параметров и облегчает обобщение по сравнению с one-hot кодированием.
- Семантическая структура. Близость векторов отражает близость смыслов; линейные операции улавливают аналогии и отношения, что позволяет переносить знания между задачами.
- Переносимость. Предобученные на большом корпусе представления переиспользуются в задачах с малым объёмом разметки (англ. transfer learning), резко сокращая потребность в данных.
- Универсальность. Один и тот же приём применим к словам, символам, товарам, пользователям, узлам графов и категориальным признакам произвольной природы.
Ограничения
- Зависимость от данных и смещения. Эмбеддинги наследуют статистические закономерности корпуса, включая социальные и гендерные предубеждения (Bolukbasi et al., 2016), которые проявляются в аналогиях и переносятся в прикладные модели.
- Статичность неконтекстных моделей. Word2vec и GloVe присваивают многозначному слову единственный вектор, усредняющий все его значения.
- Проблема редких и новых объектов. Для слов вне словаря (англ. out-of-vocabulary) вектор отсутствует; частично это решается представлениями на уровне подслов (fastText) и символов.
- Анизотропия пространства. Контекстные эмбеддинги склонны занимать узкий конус в пространстве, из-за чего косинусная близость произвольных слов завышена; для семантического поиска представления приходится дообучать или нормировать.
- Слабая интерпретируемость. Отдельные координаты, как правило, не имеют самостоятельного смысла, что затрудняет анализ выученных представлений.
Применение
- Обработка естественного языка. Входной слой практически любой современной языковой модели; используются в классификации текстов, машинном переводе, ответах на вопросы, распознавании именованных сущностей.
- Семантический поиск и RAG. Запросы и документы кодируются векторами, релевантность сводится к поиску ближайших соседей в пространстве эмбеддингов (англ. dense retrieval); это ядро систем дополненной генерации и векторных баз данных.
- Рекомендательные системы. Пользователи и товары отображаются в общее пространство, и предпочтение оценивается скалярным произведением их векторов; приём лежит в основе матричного разложения и нейросетевых рекомендателей.
- Графовые представления. Узлы графа вкладываются в векторное пространство (node2vec, DeepWalk) для задач предсказания связей и классификации вершин.
- Кодирование категориальных признаков. В табличных задачах категории высокой кардинальности заменяются обучаемыми эмбеддингами вместо one-hot кодирования.
См. также
- One-hot encoding
- Латентно-семантический анализ
- Нейронная сеть
- Рекомендательные системы
- Метрические методы классификации
Ссылки
- Исходный код и предобученные векторы word2vec
- Проект GloVe (Stanford NLP)
- Документация Sentence-Transformers
Литература
- Mikolov T., Sutskever I., Chen K., Corrado G., Dean J. Distributed representations of words and phrases and their compositionality // Advances in Neural Information Processing Systems (NeurIPS). — 2013 T. 26. — С. 3111–3119.
- Pennington J., Socher R., Manning C. GloVe: global vectors for word representation // Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP). — 2014. — С. 1532–1543.
- Levy O., Goldberg Y. Neural word embedding as implicit matrix factorization // Advances in Neural Information Processing Systems (NeurIPS). — 2014 T. 27. — С. 2177–2185.
- Devlin J., Chang M.-W., Lee K., Toutanova K. BERT: pre-training of deep bidirectional transformers for language understanding // Proceedings of NAACL-HLT. — 2019. — С. 4171–4186.
- Reimers N., Gurevych I. Sentence-BERT: sentence embeddings using Siamese BERT-networks // Proceedings of EMNLP-IJCNLP. — 2019. — С. 3982–3992.
- Goodfellow I., Bengio Y., Courville A. Representation Learning // Deep Learning. — MIT Press, 2016.

