Интуитивное понимание и объяснение математики модели GloVe

В продолжение моего блога объяснение исследовательской статьи word2vectors я взял Исследовательскую статью GloVe [Pennington et al.] Для объяснения мое понимание очень подробного и всестороннего исследования.

GloVe означает Global Vectors, где global означает глобальную статистику корпуса, а векторы - это представления слов. Более ранние методы встраивания слов, такие как LSA, word2vec, могли изучать синтаксические и семантические отношения между словами, но их происхождение было неясным. Модель GloVe нацелена на явное выявление закономерностей в векторах слов и обнаруживает происхождение обучающих отношений между словами.

1. Обзор модели перчатки

GloVe - это глобальная билинейная логарифмическая модель. Что ж, я уверен, вы хотите знать, что означает термин «глобальный билинейный журнал». Global - это глобальная статистика обучающего корпуса. Логарифм билинейный относится к логарифму вывода - линейной регрессии на произведении двух типов векторов слов. В случае GloVe два типа - это вектор слов (w) и вектор контекста (w ^). Модель GloVe объединяет два широко распространенных подхода к обучению векторов слов, как описано ниже.

1.1 Факторизация матрицы

Эти методы факторизируют матрицу совпадения слово-слово или документ-термин. HAL (гиперпространственный аналог языка) [Lund & Burgess], LSA (скрытый семантический анализ) [Landauer, Foltz & Laham] - популярные модели, использующие матричную факторизацию. Разложение по собственным значениям используется для квадратной матрицы, а разложение по сингулярным значениям (SVD) используется для прямоугольной матрицы для факторизации матрицы. В матрице слово-слово строки представляют слова, а столбцы относятся к контекстным словам. Значение в матрице Mᵢⱼ представляет, сколько раз конкретное слово Wᵢ встречается в контексте Wⱼ. В матрице «документ-термин» строки представляют слова, а столбец - документы. Строка представляет собой распределение определенного слова по всем документам, а столбец представляет собой распределение всех слов в этом документе.

Методы матричной факторизации обычно включают следующие шаги.

  1. Определите контекст для каждого слова и сгенерируйте матрицу терминов слово-слово или документ M.
  2. Нормализовать значения в матрице по строке, столбцу или длине.
  3. Удалите столбцы с меньшей дисперсией, чтобы уменьшить размерность матрицы.
  4. Выполните матричную факторизацию с помощью SVD на M, чтобы сгенерировать матрицу U, S, V.
  5. После сортировки по сингулярным значениям матрицы M в порядке убывания, беря первое r ‹R (ранг матрицы M), можно получить низкий ранг матрицы M. Произведение матриц низкого ранга U ^, S ^ и V ^ является близким приближением к исходной матрице M.
  6. Вектор слова Wⱼ - это вектор jᵗʰ из матрицы пространства редуцированных рангов U ^.

В таких методах наиболее распространенные слова в корпусе, такие как (the и), вносят непропорционально большое сходство между словами. Слова Wᵢ и Wⱼ, которые встречаются в контексте «и», вызывают увеличенную оценку сходства, чем их истинная оценка сходства. Точно так же Wᵢ и Wⱼ, которые не часто встречаются в контексте «и», но имеющие истинное сходство, будут иметь меньшую оценку сходства. Такие методы, как УГОЛЬ [Т. Роде и др.] Преодолевают эту проблему, используя нормализацию матрицы на основе корреляции или энтропии. Когда используется нормализация на основе энтропии, слова, которые встречаются во всех контекстах или документах, такие как «и», будут иметь высокую энтропию. Необработанные подсчеты нормализованы с помощью члена с высокой энтропией, что приводит к уменьшению высоких значений таких членов в матрице. Это решает проблему добавления непропорциональной меры к оценке сходства слов.

1.2 Оконные методы

Эти методы работают с окнами локального контекста, а не используют глобальную статистику корпуса. Модель языка в [Bengio et al.] Обучает нейронную сеть, которая, в свою очередь, обучает векторные представления слов. Эта модель берет прошлую историю N слов и предсказывает следующее слово как цель языкового моделирования. Следовательно, каждый пример в этом методе - это локальное окно слов, которые являются входными, а выходными - следующим словом. Позже модели word2vec [Mikolov et al.], Такие как skip-gram и CBOW, развязали языковое моделирование и обучили нейронную сеть с одним скрытым слоем. Для более детального понимания вы можете прочитать об этом мою предыдущую статью.

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

2. Подробная математика модели перчатки

А вот и раздел, который вы все с нетерпением ждете. Очень важно понимать математику, лежащую в основе любого алгоритма. Это помогает нам понять формулировку алгоритма и понять концепцию. С учетом сказанного, давайте определимся с некоторыми обозначениями.

X - матрица совместной встречаемости (слово-слово), где Xᵢⱼ - количество слов Wⱼ в контексте слова Wᵢ. Что означает контекст для определенного слова? Контекст вокруг слова может быть определен как симметричный контекст, который состоит из прошлых N и будущих N слов. Асимметричный контекст состоит только из последних N слов истории. Для вычисления значений в матрице можно использовать простой подсчет или взвешенные подсчеты. Простой подсчет принимает 1 как количество вхождений. При взвешенном подсчете 1 / d используется как количество вхождений, где d - расстояние от данного слова. Мотивация использования веса - это контекстные слова, которые ближе к данному слову, более важны как значимый контекст, чем отдаленные слова.

В уравнении (1) Xᵢ является суммированием всех слов, которые встречаются в контексте слова Wᵢ.

В уравнении (2) P - вероятность одновременного появления, где Pᵢⱼ - вероятность того, что слово Wⱼ встречается в контексте слова Wᵢ.

GloVe предлагает находить взаимосвязь между двумя словами скорее с точки зрения вероятности, чем с точки зрения грубого подсчета. Связь между двумя словами (Wᵢ и Wⱼ) исследуется путем определения вероятности совпадения с некоторыми пробными словами (Wₖ).

Допустим, у нас есть два слова: Wᵢ как «Ice» и Wⱼ как «Steam» и несколько пробных слов Wₖ как «Solid», «Gas», «Water», 'Мода'. Исходя из базового понимания, мы знаем, что Solid больше связано с Ice (Wᵢ), а Gas больше связано с Steam (Wⱼ), а Fashion не относится как к 'Ice', так и к 'Steam', в то время как вода относится как к 'Ice', так и к 'Steam . 'Теперь наша задача - найти подходящие слова для заданных слов среди пробных слов.

Из таблицы 1 для пробного слова (Wₖ) как «твердый», P (solid | ice), который представляет собой вероятность появления «твердого тела» в контексте «льда», составляет (1,9 * 10 ^ –4), что больше, чем P ( твердый | пар). Отношение P (k | ice) / P (k | steam) составляет ›› 1. Для слова зонда «газ» соотношение равно ‹---------------- 1. Для пробных слов «вода» и «мода» соотношение почти равно 1. Отношение вероятности одновременного появления различает слова (твердое вещество и газ), которые более релевантны данным словам, чем не относящиеся к делу слова (мода и вода). Слова, имеющие отношение, почти равное 1, либо появляются в контексте заданных слов, либо нет, следовательно, не влияют на усвоение взаимосвязи между заданными словами. Это доказывает, что коэффициент вероятности совпадения должен быть отправной точкой для изучения представлений слов.

Отношение вероятности совместного появления Pᵢₖ / Pⱼₖ зависит от трех слов Wᵢ, Wⱼ, Wₖ. Наиболее общий вид функции F может быть определен на словах и векторах контекста, как показано ниже.

где w ∈ Rᵈ - вектор слов, а w˜ ∈ Rᵈ - вектор контекста. Правая часть уравнения (3) - это вероятности, полученные из обучающего корпуса. Хотя F имеет огромное количество функциональных возможностей, он должен кодировать информацию, представленную в Pᵢₖ / Pⱼₖ. Связь между целевыми словами Wᵢ и Wⱼ может быть получена с помощью векторных разностей, поскольку эти векторы взяты из линейных векторных пространств d измерений. Следовательно уравнение становится,

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

Слово и контекстное слово можно поменять местами, так как «твердый» в контексте «лед» эквивалентен «лед» в контексте «твердый». Следовательно, в уравнении (5) можно произвести замену w ↔ w˜ и X ↔ Xᵀ. По сути, мы меняем входные данные на F в левой части, а затем хотим оказать аналогичное влияние на правую часть уравнения (5). Это также называется сохранением структурного сходства между двумя группами (гомоморфная функция). У нас есть группа G в левой части уравнения (5) с вычитанием как групповая операция и группа H в правой части с делением как групповая операция. Теперь, чтобы сохранить структурное сходство при замене w ↔ ​​w˜ и X ↔ Xᵀ, вычитание двух векторов в G должно отражать деление этих двух векторов слов в H. Допустим, X = wᵢᵀwₖ, Y = wⱼᵀwₖ ∈ G и Z = (X −Y). Функция F должна быть гомоморфной между группами (R, -) и (R ›0, ÷). По определению гомоморфизма, если Z = X - Y с вычитанием op в G, то в группе H F (Z) = F (X) ÷ F (y), но Z = X - Y, следовательно, получаем, F (XY) = F (x) ÷ F (y).

Так какой же должна быть функция F? Вы правильно угадали, это должна быть экспоненциальная функция. F (x) = e ˣ. Сравнивая уравнение (5) и уравнение (6), получаем, что F (wᵢᵀ * wₖ) = Pᵢₖ = Xᵢₖ / Xᵢ. Отсюда, логарифмируя обе части, получаем:

Уравнение (7) демонстрирует симметрию с точки зрения слова и контекста, за исключением термина log (Xᵢ). Поскольку этот член не зависит от Wₖ, мы можем рассматривать его как член смещения bᵢ. Добавляя еще один член смещения bₖ, получаем

Поскольку log (x) расходится около 0, мы можем использовать аддитивный сдвиг на log (Xᵢₖ), вводя логарифм всегда ≥1,

Уравнение (9) аналогично факторизации логарифма совпадения матрицы, которая является основной идеей алгоритма LSA. Но в приведенном выше уравнении есть проблема. Если мы определим функцию стоимости с помощью функции квадратичной ошибки, она даст одинаковый вес всем членам матрицы даже для тех редких частотных членов, которые имеют значения, близкие к нулю. Такие термины зашумлены и не несут много информации. Следовательно, взвешенный метод наименьших квадратов можно использовать в качестве функции стоимости для модели GloVe.

Обратите внимание, что аддитивный сдвиг уже выполняется для матрицы X, показанной в уравнении (10). J - функция стоимости, которую мы хотим минимизировать по матрице совместной встречаемости с размером словаря V. f (Xᵢⱼ) дает вес каждому члену в матрице. wᵢ - вектор слов, а wⱼ - вектор контекста. bᵢ и bⱼ - члены смещения для каждого из векторов, а Xᵢⱼ - член в матрице совместной встречаемости.

Теперь вопрос в том, как выбрать функцию f. При этом должны соблюдаться определенные условия. f (0) = 0, f не должно быть убывающим, а f (x) не должно быть очень большим для больших значений x, так как частые слова не должны иметь избыточного веса. Xₘ из уравнения (11) такое же, как Xₘₐₓ из рисунка 1. Подставив уравнение (11) в уравнение (10) для f (Xᵢⱼ), мы получим окончательную функцию стоимости для модели GloVe. Затем модель обучается на пакетах обучающих примеров с помощью оптимизатора, чтобы минимизировать функцию затрат и, следовательно, генерировать векторы слова и контекста для каждого слова.

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

3. Эквивалентность GloVe и Skip-Gram (модель word2vec)

Модель GloVe основана на глобальной матрице совместной встречаемости, в то время как скип-грамма просматривает локальные окна и не принимает во внимание глобальную статистику. Эти два подхода можно рассматривать как две разные школы мышления для обучения векторов слов. В этом разделе выясняется сходство между GloVe и skip-gram, даже если сначала кажется, что оба типа моделей имеют разные интерпретации.

Давайте определим модель скип-граммы, где Qᵢⱼ определяет вероятность появления слова j в контексте слова i. Qᵢⱼ - это распределение вероятностей по контекстным словам, заданным Wⱼ, и его можно рассматривать как функцию softmax.

Здесь wᵢ и wⱼ - векторы контекста и слова соответственно модели скип-граммы. Целью модели skip-gram является максимизация логарифмической вероятности всех сканирований локального окна по обучающему корпусу. Обучение происходит через стохастический / онлайн-процесс на примерах, сгенерированных локальными окнами, но глобальная целевая функция может быть сформулирована для всех локальных сканирований из корпуса как

Чтобы сделать функцию стоимости + ve, добавляется отрицательный знак, поскольку значения Qᵢⱼ находятся в диапазоне от 0 до 1, а логарифм этого диапазона значений равен -ve. Единственная разница между функцией стоимости выше и исходной скип-граммой заключается в том, что первая является глобальной, а вторая - локальной. Выполняя итерацию по каждому локальному окну, мы можем сгруппировать одни и те же пары слово-контекст (Xᵢⱼ) и умножить их непосредственно на термин log (Qᵢⱼ).

Мы знаем, что Pᵢⱼ = Xᵢⱼ / Xᵢ. Следовательно, подставляя Xᵢⱼ, получаем

Xᵢ не зависит от j, поэтому его можно вынести вне суммирования по j. H (Pᵢ, Qᵢ) - это перекрестная энтропия между распределениями вероятностей Pᵢ и Qᵢ. Обратите внимание, что в формуле кросс-энтропии учитывается отрицательный знак. Функция стоимости становится взвешенной суммой кросс-энтропийной ошибки с весами как Xᵢ. Вышеупомянутую целевую функцию можно интерпретировать как глобальную цель скип-граммы. Есть некоторые ограничения на использование кросс-энтропии в качестве меры ошибки. P - это распределение с длинным хвостом с более высокими весами, присвоенными маловероятным / редким событиям, при использовании перекрестной энтропии в качестве метрики ошибок. Кроме того, Q необходимо нормализовать с помощью суммирования по словарю V, что является огромным узким местом при использовании перекрестной энтропии. Следовательно, вместо кросс-энтропии в уравнении (15) можно использовать другую метрику ошибки стоимости, одно из которых является объективным наименьшим квадратом. Членом знаменателя в Q можно пренебречь, просто взяв член числителя Q ^. Новая функция стоимости определяется как,

Здесь p ^ ᵢⱼ = Xᵢⱼ и Q ^ ᵢⱼ = exp (wᵢᵀ * wⱼ) ненормализованные распределения. Xᵢⱼ принимает большие значения по сравнению с Q ^ ᵢⱼ, вызывая большие градиенты и большие шаги в оптимизации, ведущие к нестабильному обучению модели. Следовательно, используется квадрат ошибки логарифма.

Вместо Xᵢ в качестве весовой функции используется f (Xᵢⱼ), как показано на рисунке 1. Члены в квадратной скобке можно поменять местами без изменения знака. Функция стоимости в уравнении (17) эквивалентна функции стоимости модели GloVe в уравнении (10), которая показывает, что модель skip-gram в конечном итоге основана на матрице совместной встречаемости корпуса и имеет сходство с моделью GloVe.

4. Сложность модели GloVe

Сложность модели GloVe можно определить по функции стоимости из уравнения (10). Это зависит от общего количества ненулевых элементов в матрице совместной встречаемости. Суммирование выполняется по i и j с размером словаря V. Сложность модели GloVe не превышает O (| V | ²). Для корпуса, состоящего из нескольких сотен тысяч слов, | V | ² превышает миллиарды. Следовательно, чтобы получить точную сложность модели, можно установить более жесткие ограничения на общее количество ненулевых членов в X. Член в матрице совместной встречаемости Xᵢⱼ может быть смоделирован как степенная функция частотного ранга (rᵢⱼ ) слова j и контекста i.

Общее количество слов в корпусе | C | пропорциональна сумме по всем членам матрицы совместной встречаемости X.

Все элементы в матрице, будь то слово i или контекст j, его частотный ранг можно получить из X, рассматривая все термины (слова, контексты) в матрице вместе. | X | - максимальный ранг любого слова / контекста в матрице, который совпадает с количеством ненулевых элементов в матрице. H ₓ, α - гормональная прогрессия с соотношением как α и количеством элементов как | X |. Максимальное значение частотного ранга r можно получить с помощью уравнения (18), установив для Xᵢⱼ его минимальное значение, равное 1. Отсюда получаем | X | = k ^ (/ α). Используя это в уравнении (19), получаем

Раскладывая член H справа, используя обобщенные гармонические числа (Апостол, 1976), мы получаем,

где ζ (α) - дзета-функция Римана. Когда | X | является большим, только один из двух членов имеет значение, и это зависит от того, α ›1 или α‹ 1. Отсюда окончательно приходим к

Авторы GloVe заметили, что Xᵢⱼ хорошо моделируется, установив α = 1,25. При α ›1 получаем | X | = O (| C | ^ 0,8). Следовательно, общая сложность модели намного лучше, чем O (| V | ²), и немного лучше, чем исходная модель скип-граммы, которая масштабируется с помощью O (| C |).

5. Эксперименты

Обученные векторы слов GloVe тестируются на следующих трех задачах НЛП.

я. Словесная аналогия

Задача состоит в том, чтобы найти слово d, которое отвечает на вопросы типа «a is to b as c is to?». Набор данных содержит как синтаксические, так и семантические вопросы. Чтобы найти слово d, Wᵈ, наиболее близкое к (Wᵇ− Wᵃ + Wᶜ) согласно косинусному сходству, прогнозируется как результат.

ii. Сходство слов

Задача состоит в том, чтобы расположить похожие слова к данному слову в порядке убывания сходства. Ранговая корреляция Спирмена используется для измерения производительности модели.

iii. Распознавание именованных сущностей (NER)

Задача - присвоить тип сущности каждому токену в корпусе. Набор контрольных данных CoNLL-2003 English содержит четыре типа сущностей: человек, местоположение, организация и прочие. Наряду с функциями токена, векторы слов, обученные из модели GloVe, добавляются в качестве входных данных в модель NER для генерации распределения вероятностей по типам сущностей.

6. Подробности обучения модели перчатки

Модель GloVe обучается на пяти различных корпусах: дамп Википедии 2010 года с 1 миллиардом токенов, дамп Википедии 2014 года с 1,6 миллиарда токенов, Gigaword 5 с 4,3 миллиарда токенов, комбинация Gigaword5 + Wikipedia2014 с 6 миллиардами токенов, 42 миллиарда токенов веб-данных из Common Crawl.

Шаги предварительной обработки: - текст корпуса отображается в нижнем регистре. Для токенизации используется Стэнфордский токенизатор. Матрица совместной встречаемости построена с использованием словаря из 400 000 наиболее часто встречающихся слов. Перед построением матрицы необходимо определить контекст для слова. Для вычисления значений матрицы используется уменьшающееся окно взвешивания с весом 1 / d для слов на расстоянии d друг от друга. GloVe исследует эффект асимметричного контекста с использованием левых лексем слова (история), а также симметричный контекст с использованием левых и правых лексем слова (история и будущее).

Ниже приведены значения, установленные при обучении модели GloVe.

Xₘ = 100, α = 3/4 для весовой функции, показанной на рисунке 1.

Оптимизатор - оптимизатор Adagrad (Duchi et al., 2011) с начальной скоростью обучения 0,05 используется для пакета случайно выбранных ненулевых членов из X. Для меньших чем 300-мерный вектор, используется 50 итераций обучающих данных, в то время как для векторных размерностей более 300 используются 100 итераций.

Модель GloVe генерирует два вектора для каждого токена, W (вектор слова) и W ~ (вектор контекста). Сумма двух векторов (W + W ~) используется как конечный вектор.

7. Результаты

я. Словесная аналогия

Результаты эксперимента по аналогии слов для различных моделей представлены в таблице 2. Модель SG обозначает скип-грамм, CBOW обозначает модель непрерывного мешка слов, а SVD обозначает разложение по сингулярным числам. Процентная точность показана для семантической и синтаксической, а также итоговой в таблице 2. Модель GloVe превзошла обе модели word2vec. Модель GloVe, обученная на размере корпуса 1,6B и размерности вектора 300, достигла почти 70% точности, превосходя 61% skip-gram и 36% CBOW. Повышение точности модели очень значительно в моделях word2vec с увеличением размерности вектора с 300 до 1000 и размера корпуса с 1B до 6B, но все еще хуже по сравнению с моделью GloVe с размером вектора 300 и размером корпуса 1,6B. Это показывает, что векторы слов модели GloVe даже с 300 измерениями, обученными на меньшем наборе данных, имеют более значимую информацию, чем 1000 измерений моделей word2vec, обученных на гораздо большем наборе данных. Точность модели GloVe увеличилась незначительно (75%) по сравнению с увеличением размера корпуса (7 раз с 6B до 42B).

Точность модели GloVe относительно симметричного и асимметричного контекста, размера окна и размерности вектора показана на рисунке 2. Все модели обучаются на корпусе 6B. В (а) контекст симметричен с размером окна, равным 10, во всех вариантах размерности вектора. Синтаксическая, семантическая и, следовательно, общая точность постоянно увеличивается с увеличением размерности вектора от 50 до 300, после чего повышение точности незначительно по сравнению с увеличением размерности вектора. В (b) размерность вектора сохраняется равной 100 во всех вариантах размеров окна симметричного контекста. По мере увеличения размера симметричного окна все точности возрастают с резким увеличением семантики по сравнению с синтаксической, которая показывает, что для понимания семантики необходим более широкий контекст, в то время как для синтаксических вопросов достаточно короткого контекста. В (c) размер вектора поддерживается равным 100 для всех моделей асимметричных окон. Подобное поведение замечено в (c) как симметричный контекст из (b). Семантическая точность превосходит синтаксическую точность при размере симметричного окна 3, в то время как в асимметричном окне требуется 5 окон.

На рисунке 3 показана точность модели GloVe на различных корпусах. Во всем обучающем корпусе сохраняется векторная размерность 300. Синтаксическая точность неуклонно возрастает с увеличением размера корпуса, в то время как семантическая точность не показывает такой закономерности. Следовательно, нет значительного улучшения общей точности за счет увеличения размера корпуса с 1B до 6B и 42B.

ii. Сходство слов - для тестирования GloVe 300 используются различные наборы данных (WordSim-353, MC, RG, SCEW и RW). размерные векторы слов наряду с другими моделями. Оценка сходства получается путем нормализации каждого векторного измерения по всем словам в словаре, а затем косинусное сходство используется для нормализованных векторов, чтобы найти первые n слов, похожих на данное слово. Коэффициент ранговой корреляции Спирмена вычисляется на основе рангов из n первых слов, полученных на основе оценки сходства и человеческого суждения.

Результаты различных моделей, протестированных на различных наборах данных задачи сходства слов, показаны в таблице 3. В наборах данных WS353, MC, RG и RW модель GloVe превзошла SVD, CBOW и SG, которые обучаются на том же размере корпуса. Модель GloVe, обученная на корпусе 42B, улучшает ранговую корреляцию Spearman по сравнению с моделью CBOW, обученной на корпусе 100B в наборе данных SCWS.

iii. NER - Модель производительности задачи NER на различных наборах данных (набор для проверки и тестирования CoNLL-2003, ACE и MUC7) показана в таблице. 4.

Все вышеперечисленные модели основаны на CRF с различным набором функций. Дискретная модель использует набор функций из Стэнфордской модели NER, в то время как другие модели используют базовый набор функций вместе с обученными векторами слов в качестве функций. Оценка F1 используется как для проверки, так и для набора тестовых данных CoNLL-2003 вместе с тестовыми данными других наборов данных для сравнения производительности модели. Модель GloVe превзошла все другие модели (дискретную, SVD и обе модели word2vec) в задаче NER по различным наборам данных.

8. Заключение

Модель GloVe рассматривает два класса алгоритмов: на основе подсчета и на основе прогнозирования для изучения распределенного представления слова. Модель GloVe показывает, что эти два класса методов не сильно различаются, и оба в конечном итоге используют матрицу совпадения в качестве базовой концепции для обучения векторов слов. GloVe фиксирует как глобальную статистику, так и линейную подструктуру, присутствующую в данных. Следовательно, GloVe, которая представляет собой глобальную билинейную логарифмическую модель, превосходит оба класса моделей в различных последующих задачах НЛП.

Если вы хотите узнать больше о том, как реализовать модель GloVe с помощью Python, дайте мне знать в комментариях.

9. Ресурсы

[1] Оригинальная исследовательская статья - GloVe: Глобальные векторы для представления слов: https://nlp.stanford.edu/pubs/glove.pdf
[2] Создание многомерных семантических пространств из лексической совместной встречаемости : Https://link.springer.com/article/10.3758/BF03204766
[3] Исследование Введение в латентный семантический анализ: https://mainline.brynmawr.edu/Courses/cs380/fall2006 /intro_to_LSA.pdf
[4] Эффективная оценка представлений слов в векторном пространстве: https://arxiv.org/pdf/1301.3781.pdf

Спасибо, что нашли время прочитать сообщение. Надеюсь, вам понравилось чтение. Пожалуйста, дайте мне знать о своих мыслях в комментариях. Не стесняйтесь обращаться ко мне через LinkedIn и Gmail.