问题
I'm using the Stanford Tagger for determining the Parts of Speech. However, I want to get more information out of the text. Is there a possibility to get further information like the tense of the sentence or if it is in active/passive?
So far, I'm using the very basic PoS-Tagging approach:
List<List<TaggedWord>> taggedUnits = new ArrayList<List<TaggedWord>>();
String input = "This sentence is going to be future. The door was opened.";
for (List<HasWord> sentence : MaxentTagger.tokenizeText(new StringReader(input)))
{
taggedUnits.add(tagger.tagSentence(sentence));
}
回答1:
You can get tense information from the various penn tags:
27. VB Verb, base form
28. VBD Verb, past tense
29. VBG Verb, gerund or present participle
30. VBN Verb, past participle
31. VBP Verb, non-3rd person singular present
32. VBZ Verb, 3rd person singular present
About the active/passive aspect, you can use typed dependencies included in Stanford Core NLP.
- If the sentence is in active voice, a 'nsubj' dependecy should exist.
- If the sentence is in passive voice a 'nsubjpass' dependency should exist
Hope this helps.
来源:https://stackoverflow.com/questions/19495967/getting-additional-information-active-passive-tenses-from-a-tagger