Оценка модели Glove путем нахождения линейной алгебраической структуры слов

Я построил модель Glove на моем текстовом корпусе, используя приложение c после этой реализации https://github.com/stanfordnlp/GloVe/tree/master/src. Я хочу найти слово вложения таким образом, чтобы

Если A относится к B, а C относится к D, то A-C+B должен быть равен D. Например, векторная арифметика встраивания "Австралия"-"Канберра"+"Индия" должна быть равна встраиванию "Нью-Дели".

Я хочу оценить эти вложения в Python.

1 ответ

Этапы оценки для любого A B C D:

  1. Рассчитать векторное представление D' с D' = A-C+B,
  2. Для всего слова вектор v в обученном GloV, вычислите косинусное сходство v а также D',
  3. Проверьте, наиболее ли похож вектор на D' на самом деле предназначенное слово D,

Такие результаты можно рассматривать как @top1 как оценку поиска информации. Вы можете изменить третий шаг, чтобы получить @top k,

Другие вопросы по тегам