Как найти слово, встречающееся в Place численно, используя Stanford Parser API? - PullRequest
0 голосов
/ 16 июля 2011

В типизированной зависимости Stanford Parser также показывает место, где происходит слово, например, "Любовь-2". Теперь это показывает, что «любовь» в «2» месте.

nsubj(love-2, I-1)
poss(country-4, my-3)
dobj(love-2, country-4)

Теперь, как я могу найти место слова программно, используя Stanford Parser API? Есть ли в API фанукция?

Ответы [ 3 ]

1 голос
/ 22 июля 2012

Если вы хотите получить индекс конкретного слова в предложении, вы можете выбрать прямую его маркировку и получить место как indexOf (token) +1Формат TypedDependency >>> abbreviated_form_reln (регулятор, зависимый)Если вы хотите получить доступ к индексу определенного слова в TypedDependency (или любом другом атрибуте), просто используйте APIНапример:Скажем, TypedDepency td представляет nsubj (любовь-2, I-1)

    td.gov();    //gives the governer (of type TreeGraphNode)
    td.dep();    //gives the dependent (")
    td.reln();   //gives the relation (of type GrammaticalRelation)

Затем вы можете использовать методы TreeGraphNode для получения дополнительной информации.Скажем, TreeGraphNode tgn = td.gov ();

    tgn.index(); //yields the required index (for the above case, 2)

Не стесняйтесь ссылаться на Javadoc http://nlp.stanford.edu/nlp/javadoc/javanlp/

0 голосов
/ 26 августа 2011

Вы делаете что-то вроде ниже. WordIndex - это то, что вы хотите.

import edu.stanford.nlp.ling.CoreAnnotations.IndexAnnotation;

...

GrammaticalStructure gs = gsf.newGrammaticalStructure(parse);
List<TypedDependency> tdl = gs.typedDependenciesCCprocessed();
TypedDependency td = tdl.get(0);
CoreLabel cl = td.dep().label();
int wordIndex = cl.get(IndexAnnotation.class);
0 голосов
/ 16 июля 2011

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

Если вы вместо этого пытаетесь понять, почему у вас есть несколько зависимостей, упоминающих одно и то же слово, то это потому, что слова могут распространяться от одной зависимости к другой.

...