перчатка, наиболее похожая на несколько слов - PullRequest
0 голосов
/ 13 ноября 2018

Я должен выполнять некоторые упражнения с перчаткой питона, большинство из них не доставляет мне никаких проблем, но теперь я должен найти 5 самых похожих слов на «норвегия - война + мир» из «перчатки-вики»"Гигаворд-100"Но когда я запускаю свой код, он просто говорит, что «слово» отсутствует в словаре.Теперь я предполагаю, что это какое-то форматирование, но я не знаю, как его использовать.

import gensim.downloader as api
model = api.load("glove-wiki-gigaword-100")  # download the model and return as object ready for use

bests = model.most_similar("norway - war + peace", topn= 5)

print("5 most similar words to 'norway - war + peace':")

for best in bests:
    print(best)

1 Ответ

0 голосов
/ 13 ноября 2018

Модель Gensim word2vec имеет дело только с ранее увиденными словами.Здесь вы даете полное предложение ... То, что вы хотите сделать, это:

  1. получить векторы v1, v2 и v3 для соотв.слова "Норвегия", "война" и "мир".
  2. Вычислите математику: v = v1 -v2 + v3.
  3. получите самые_подобные слова для v.

Для этого вам понадобятся следующие функции: model.wv.most_similar() и model.wv.similar_by_vector().Обратите внимание, что model.wv.most_similar() делает нечто похожее на эти три шага, но более сложным способом, используя набор положительных слов и набор отрицательных слов.Подробнее см. документацию .

...