Я хочу создавать вложения слов для документов с помощью инструмента word2vec. Я знаю, как найти векторное вложение, соответствующее одному слову (униграмме). Теперь я хочу найти вектор для биграммы. Можно ли сделать с помощью word2vec? Если да, то как?
Биграмма в вектор
comment
если данный ответ обеспечивает решение вашей проблемы, пожалуйста, примите его, чтобы закрыть проблему или прокомментировать, почему не работает!
- person eliasah   schedule 27.05.2016
Ответы (1)
Следующий фрагмент даст вам векторное представление биграммы. Обратите внимание, что биграмма, которую вы хотите преобразовать в вектор, должна иметь подчеркивание вместо пробела между словами, например. bigram2vec(unigrams, "this report")
неправильно, должно быть bigram2vec(unigrams, "this_report")
. Дополнительные сведения о создании униграмм см. в разделе gensim.models.word2vec.Word2Vec
класса здесь.
from gensim.models import word2vec
def bigram2vec(unigrams, bigram_to_search):
bigrams = Phrases(unigrams)
model = word2vec.Word2Vec(bigrams[unigrams])
if bigram_to_search in model.vocab.keys():
return model[bigram_to_search]
else:
return None
person
Hamman Samuel
schedule
10.03.2016