UIMA/dkpro: получить тип соединения
Я использую UIMA в сочетании с UIMAfit и dkpro и StanfordParser для разбора английских предложений.
Я могу построить деревья зависимостей без проблем. Для "и"/"или" союзов я получаю аннотацию с классом CONJ
, который является подклассом Dependency
, На данный момент я не выяснил, как проверить, является ли найденное соединение "И" или "ИЛИ".
Кто-нибудь знает, как это решить? Я видел примеры, где отображаются зависимости "coe_and" и "coe_or", но я не вижу, откуда они берутся. http://nlp.stanford.edu/software/dependencies_manual.pdf
заранее спасибо
Некоторый код для визуализации:
// CONJ a;
// StringBuilder sb
Token dependent = a.getDependent();
Token governor = a.getGovernor();
sb.append("Dependent: ");
sb.append(dependent);
sb.append(", ");
sb.append("Governor: ");
sb.append(governor);
// How to check type conj_and/conj_or?
1 ответ
Метод для получения метки отношения зависимости называется
getDependencyType()
Имейте ввиду, что conj_or
это "свернутая зависимость". Если вы хотите получить их, вы должны явно установить режим зависимости при вызове компонента DKPro Core StanfordParser, например, используя COLLAPSED
или, может быть CC_PROPAGATED
:
AnalysisEngineFactory.createEngineDescription(StanfordParser.class,
StanfordParser.PARAM_MODE, StanfordParser.DependenciesMode.COLLAPSED)
Настройка по умолчанию для этого параметра TREE
,
Смотрите также:
- DKPro Core Stanford.Parser.DEpendenciesMode Javadoc
- Stanford CoreNLP Грамматическая структура Javadoc
Раскрытие информации: я являюсь членом основной команды DKPro.