Closed symbios-zi closed 6 years ago
Как указано в разделе о предобработке корпусов, в наших моделях слова снабжены частеречными тэгами. То есть, должно быть не "депутат
", а "депутат_NOUN
".
@akutuzov спасибо большое, у меня получилось. Еще один вопрос, как можно подбирать синонимы учитывая падеж искомого слова? Пример: для слова "автомобилю" найти синонимы в том же падеже: "транспорту", "машине"?
как я понимал все слова в модели приведены в именительный падеж? И существует ли такая возможность в принципе?
Решил что я могу анализировать слово, приводить его в нормальную форму, а потом обратно. Нашел для этого библиотеку pymorphy2
@symbios-zi Да, в моделях на RusVectores все слова лемматизированы, поэтому словоизменительных форм там быть не должно (разве что по ошибке). Это семантические, а не морфосинтаксические модели. Для того, чтобы привести лемму в ту или иную словообразовательную форму, есть много хороших библиотек.
Здравствуйте, пытаюсь использовать ваши модели в связке gensim,
все достаточно просто, на на выходе я получаю ошибку
Traceback (most recent call last): File "/Users/avorontsov/projects/python/gensim/main.py", line 8, in <module> for word, score in w2v.most_similar(positive=["депутат"], topn=5): File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/gensim/models/keyedvectors.py", line 531, in most_similar mean.append(weight * self.word_vec(word, use_norm=True)) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/gensim/models/keyedvectors.py", line 452, in word_vec raise KeyError("word '%s' not in vocabulary" % word) KeyError: "word 'депутат' not in vocabulary"
но если я меняю словарь на один из этих http://panchenko.me/data/dsl-backup/w2v-ru/
то начинает находить. Что я делаю неправильно?