Выбор подходящего смысла слова из wordnet
Я использую Wordnet для поиска синонимов понятий онтологии. Как я могу найти выбрать соответствующий смысл для моей концепции онтологии. например, существует концепция онтологии "конференция", в которой есть следующие синтаксисы в wordnet. Существительное конференции имеет 3 значения (первые 3 из теговых текстов)
- (12) конференция - (заранее организованное совещание для консультации или обмена информацией или обсуждения (особенно с официальной повесткой дня))
- (2) лига, конференция - (ассоциация спортивных команд, которая организует матчи для своих членов)
- (2) конференция, групповая дискуссия - (дискуссия между участниками, у которых есть согласованная (серьезная) тема), теперь 1-й и 3-й наборы имеют смысл для моей концепции онтологии. Как я могу выбрать только эти два из Wordnet?
3 ответа
Технология, которую вы ищете, направлена на семантическое устранение неоднозначности / представление.
Наиболее "традиционный подход" - это устранение неоднозначности в смысле слова (WSD), взгляните на
- https://en.wikipedia.org/wiki/Word-sense_disambiguation
- https://stackru.com/questions/tagged/word-sense-disambiguation
- Кто-нибудь знает о хорошем программном обеспечении для устранения неоднозначности Word Sense?
Затем следует следующее поколение индукции Word Sense / Моделирование тем / Представление знаний:
- https://en.wikipedia.org/wiki/Word-sense_induction
- https://en.wikipedia.org/wiki/Topic_model
- https://en.wikipedia.org/wiki/Knowledge_representation_and_reasoning
Затем идет самая последняя реклама:
- Вложения слов, модели векторного пространства, нейронные сети
Иногда люди пропускают семантическое представление и переходят непосредственно к текстовому подобию и сравнивая пары предложений, различия / сходства, прежде чем достичь конечной цели обработки текста.
Взгляните на нормализацию рейтинга с весами, чтобы получить список работ, связанных с STS.
На другом направлении есть
- создание онтологий (Cyc, Yago, Freebase и др.)
- семантическая сеть ( https://en.wikipedia.org/wiki/Semantic_Web)
- семантические лексические ресурсы (WordNet, Open Multilingual WordNet и т. д.)
- База знаний населения ( http://www.nist.gov/tac/2014/KBP/)
Есть также недавняя задача по индукции / расширению онтологии:
- http://alt.qcri.org/semeval2015/task17/
- http://alt.qcri.org/semeval2016/task13/
- http://alt.qcri.org/semeval2016/task14/
В зависимости от конечной задачи может быть полезна любая из вышеуказанных технологий.
Взгляните на этот список: 100 Best GitHub: устранение неоднозначности в Word и поиск по WordNet - есть несколько подходящих библиотек.
Я не использовал ни одного из них, но этот кажется многообещающим, потому что он основан на классической, но эффективной идее (а именно, алгоритме Леска), обновленной с помощью современных методов вложения слов. На самом деле, прежде чем найти его, я собирался предложить попробовать почти те же идеи.
Также обратите внимание, что все методы пытаются найти значение (в вашем случае sysnet WordNet), которое наиболее похоже на контекст текущего слова / словосочетания, поэтому очень важно иметь контекст слов, которые вы пытаетесь устранить неоднозначность. Например, слова могут происходить из некоторого текста, и большинство библиотек полагаются на это.
Вы также можете попробовать Babelfy, который обеспечивает устранение неоднозначности Word Sense и устранение неоднозначности именованных объектов.
Демо: http://babelfy.org/