我目前正在使用此处提供的 Twitter POS 标记器将推文标记到 Penn-Tree Bank 标签中。
这是该代码:
import java.util.List;
import cmu.arktweetnlp.Tagger;
import cmu.arktweetnlp.Tagger.TaggedToken;
/* Tags the tweet text */
List<TaggedToken> tagTweet(String text) throws IOException {
// Loads Penn Treebank POS tags
tagger.loadModel("res/model.ritter_ptb_alldata_fixed.txt");
// Tags the tweet text
taggedTokens = tagger.tokenizeAndTag(text);
return taggedTokens;
}
现在我需要确定直接对象在这些标签中的位置。经过一番搜索,我发现 Stanford Parser 可以通过 Stanford Typed Dependencies 做到这一点(在线示例)。通过使用 dobj() 调用,我应该能够得到我需要的东西。
但是,我还没有找到任何关于如何将已标记的句子输入此工具的好的文档。据我了解,在使用 Dependency Parser 之前,我需要从句子的标记/标签创建一棵树。这是怎么做到的?我找不到任何示例代码。
Twitter POS Tagger 包含一个 Stanford NLP Tools 的实例,所以我离得不远,但是我对 Stanford 工具不够熟悉,无法将我的 POS 标记文本输入到其中以使依赖项解析器正常工作. 常见问题解答确实提到了这个功能,但是没有任何示例代码可以关闭,我有点卡住了。