Как получить похожие слова в предварительно обученном встраивании ELMO? - PullRequest
1 голос
/ 17 апреля 2019

Как получить подобное слово для данного слова в предварительно обученном ELMO Embedding?Например: в Glove у нас есть glove_model.most_simil (), чтобы найти наиболее похожее слово и его вложение для любого данного слова.Точно так же у нас есть что-нибудь в ELMO?

1 Ответ

0 голосов
/ 17 апреля 2019

В отличие от GloVe, который имеет отдельную запись для каждого слова из ограниченного словаря, ELMo вычисляет вложения слов динамически, используя символьный CNN, поэтому теоретически ELMo должен иметь возможность обрабатывать неограниченный словарный запас. На практике он работает только со словами, с которыми он столкнулся во время обучения, и со словами, похожими на них, но он все же может получить вектор или произвольную строку.

Так что нет смысла иметь метод, как у GloVe. Однако вы можете предварительно рассчитать векторы для интересующего вас словаря и выполнить поиск ближайших соседей самостоятельно, например, используя scipy.spatial.cKDTree.

...