Как связать NE с зависимостью? - PullRequest
0 голосов
/ 08 октября 2018

Мне нужно извлечь описания мест из текста.На данный момент я пытаюсь найти местоположение с его модификатором прилагательного.
Например, из

В компактном Дареме вам не нужен транспорт, чтобы передвигаться.

Я хочу получить

компактный Дарем

У меня есть CoreEntityMention и SemanticGraph моего предложения.Я могу получить индекс токена NE, чтобы найти IndexedWord в SemanticGraph, но NE может содержать более одного токена, поэтому я не знаю, как создать ссылку.Я видел этот похожий вопрос , но не понял предложенного решения.Нужно ли мне проверять зависимость для каждого токена?
Вот мой подход, написанный на Kotlin (без большой разницы с Java):

    val dependencies = mutableListOf<String>()
    val depGraph = entityMention.sentence().dependencyParse()

    for (token in entityMention.tokens()) {
        val node = depGraph.getNodeByIndex(token.index())
        for (dependence in depGraph.childPairs(node)) {
            if (dependence.first.shortName == "amod") {
                dependencies.add(dependence.second.toString())
            }
        }
    }

Это правильный и самый простой способ?

1 Ответ

0 голосов
/ 11 октября 2018

Да, в настоящий момент я думаю, что лучшее, что вы можете сделать, - это перебрать токены упомянутой сущности, поскольку между токенами существуют зависимости.

Я отмечу этот вопрос, и, возможно, мы можем добавить несколькокод, чтобы сделать это легче в будущем.

...