Я новичок в NLP, NLTK и Python. Я использую wordnet, чтобы получить синонимы для слова в данном предложении. Я использую приведенный ниже код, чтобы получить имена синонимов и лемм этих слов.
synonyms = wordnet.synsets(w,pos)
lemmas.append(list( set(chain.from_iterable([w.lemma_names() for w in synonyms]))))
например: wordnet.synsets ("получить", 'v')
Lemma_names для этого слова "get" возвращает много вещей, которые мне не важны.
Моя строка поиска: «Ошибка при получении отчета». В lemma_names есть даже такие фразы, как «вылетает», «лезет под кожу», что не соответствует моему утверждению.
Так есть ли способ получить синонимы, относящиеся к заявлению? есть ли какая-нибудь концепция или алгоритмы, которые я могу проверить?
так есть ли другой пакет, который дает это?
Задайте себе вопрос (как лингвист / человек), имеют ли сами слова значение вне концепции? Допустим, у нас с вами есть коробка с жуком. Я говорю, что у меня есть жук в коробке, и вы его не видите, мой жук не такой, как ваш, но действительно ли мы думаем, что то, что находится в коробке, является таким же жуком?






См. stackoverflow.com/questions/19348973/… По иронии судьбы, wordnet индексируется "синсетами" / концепциями, а не словами. Таким образом, словесные отношения (синонимы, гипер- / гипонимы и т. д.) Напрямую не кодируются в Wordnet. Только отношения между концепциями доступны напрямую через ворднет.