Как найти синоним слова или перефразирования из нескольких слов с помощью инструментария gensim

Загрузив предварительно обученную модель word2vec с помощью инструментария gensim, я хотел бы найти синоним слова с учетом контекста, такого как интеллектуальный, для "она - яркий человек".

1 ответ

Решение

Есть метод [most_similar()][1] это сообщит слова ближайших векторов, по косинусному подобию в координатах модели, данному слову. Например:

similars = loaded_w2v_model.most_similar('bright')

Тем не менее, Word2vec не найдет строго синонимов - просто слова, которые были связаны с контекстом в его учебном корпусе. Они часто похожи на синонимы, но также могут быть похожими в других отношениях - например, используются в одних и тех же тематических областях или могут функционально заменять друг друга. (В этом последнем отношении иногда очень похожие векторы слов относятся к антонимам, потому что такие слова, как "горячий" и "холодный", появляются в одних и тех же местах, ссылаясь на один и тот же аспект чего-либо.)

Обычный word2vec также не имеет дело с многозначностью (то есть, что токен типа "яркий" - это и слово "хорошо освещенный", и слово "умный"). Таким образом, список наиболее похожих слов для "яркого" будет включать смесь его альтернативных значений.

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