Я пытаюсь связать упоминания сущности с базой знаний, например DBpedia или Wikidata.Как создать Викициту/Связывание объектов на основе EntityMentionsAnnotator?
В конце концов, я хочу обогатить выход JSON произвольной онтологией и настоящим предоставить некоторую семантику. Но в качестве первого шага он должен просто выглядеть примерно так:
{
"index": 1,
"mention": "Barack Obama",
"characterOffsetBegin": 0,
"characterOffsetEnd": 12,
"ner": "PERSON",
"before": "",
"after": " "
"uri": "http://dbpedia.org/page/Barack_Obama"
}
Есть ли способ сделать это с уже предусмотрены инструментами Стэнфордского CoreNLP? Я видела WikitictAnnotator на GitHub, но, к сожалению, нет никакой документации или вообще о том, что это такое и как ее использовать соответственно.
Помимо этого, какие существуют другие возможности? Должен ли я использовать сторонний инструмент, например, DBpedia Spotlight в сочетании со справочником Stanford NE Recognizer, чтобы реализовать связывание объектов?
Заранее благодарен!
Вы можете использовать http://dbpedia.org/sparql api для запроса dbpedia. например SELECT разный? Uri? Label WHERE { ? Uri rdfs: этикетка? Этикетка. FILTER regex (str (? Label), «Barack Obama», «i») } – Anish
Ваш предложенный подход слишком прямолинейный, я думаю. Что делать, если есть неоднозначные сущности, например, «Джордж Буш»? Это может относиться как к Джорджу Бушу. и Джордж Буш-младший. Я знаю, что существуют сторонние инструменты для связывания ссылок, которые могут быть неоднозначными, но возможно ли это сделать и с CoreNLP? Если нет, какой API или инструмент следует использовать в сочетании с CoreNLP? – phly