Модель Word2vec CBOW с негативной выборкой

Вопрос или проблема

Из этой статьи:

  • В модели vanilla skip gram функция softmax является вычислительно очень затратной, так как требует сканирования всей матрицы выходных эмбеддингов (W_output) для вычисления вероятностного распределения всех V слов, где V может достигать миллионов и более.
  • Кроме того, нормализующий фактор в знаменателе также требует V итераций.

Поэтому в статье предлагается использовать негативную выборку вместо softmax. Существует много статей, обсуждающих skip gram с негативной выборкой. Но я не нашел никаких, обсуждающих модель CBOW (Continuous Bag of Words Model) с негативной выборкой. Почему так? Это невозможно/не рекомендуется? Или это то же самое, что и skip gram? Можете ли вы дать некоторое понимание о использований негативной выборки с CBOW?

PS: любая ссылка на статью/работу также будет очень полезна.

С точки зрения поиска соответствующих статей эта выглядит подходящей: Объяснение негативной выборки в word2vec. Статья, похоже, охватывает темы, которые вы упоминаете, в частности: skip-grams, вычислительные вопросы, негативную выборку и целевую функцию для оптимизации.

Что касается возможности ее понимания, то там есть пробелы в объяснениях: читать это немного сложно.

Ответ или решение

Модель Word2Vec, использующая метод CBOW (Continuous Bag of Words), представляет собой один из популярных подходов для обучения векторных представлений слов. Хотя в большинстве случаев в литературе и статьях обсуждается применение негативной выборки (negative sampling) с моделью Skip-Gram, использование негативной выборки в CBOW также возможно и имеет свои особенности.

Понимание модели CBOW

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

Негативная выборка в контексте CBOW

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

Почему менее распространена?

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

Применение негативной выборки в CBOW

  1. Обучение модели: Как и в Skip-Gram, когда CBOW предсказывает целевое слово, можно одновременно включить негативные примеры в обучение. Например, для каждого позитивного примера (целевое слово), выбирается несколько негативных слов (слова, которые не встречались в контексте).

  2. Обновление весов: Процесс обновления весов включает в себя оба типа примеров — положительные (правильное целевое слово) и негативные (выбранные случайным образом слова), где ошибка модели будет рассчитываться на основе правильного и неправильного предсказаний.

  3. Целевая функция: Целевая функция оптимизации также будет включать в себя максимизацию вероятности правильного предсказания (целевого слова) и минимизацию вероятностей предсказаний негативных слов.

Заключение

Несмотря на то, что в литературе часто упоминается негативная выборка в контексте модели Skip-Gram, её применение также возможно и обосновано в CBOW. Это может значительно улучшить эффективность модели, особенно в контексте больших массивов данных. Исследования в данной области продолжаются, и использование негативной выборки в CBOW может стать темой будущих работ.

Если вы ищете статьи и исследования по этой теме, я рекомендую следующие источники:

  1. Mikolov, T., Sutskever, I., Chen, K., Corrado, G. S., & Dean, J. (2013). "Distributed Representations of Words and Phrases and Their Compositionality." NIPS.
  2. Karpukhin, V., et al. (2020). "Dense Passage Retrieval for Open-Domain Question Answering." arXiv preprint arXiv:2004.04906.

Надеюсь, это даст вам ясное представление о применении негативной выборки в модели CBOW.

Оцените материал
Добавить комментарий

Капча загружается...