【发布时间】:2015-01-17 17:24:05
【问题描述】:
我想用 JAVA 制作一个词性标注器和分块器。但我无法弄清楚我应该从哪里开始。所有库都需要什么?
【问题讨论】:
标签: machine-learning pos-tagger
我想用 JAVA 制作一个词性标注器和分块器。但我无法弄清楚我应该从哪里开始。所有库都需要什么?
【问题讨论】:
标签: machine-learning pos-tagger
你可以使用各种库
我在我的项目中使用了 OpenNLP。我认为这些说明将帮助您了解 OpenNLP 库。关注这个document
Tokenizer 模型将句子分解为标记。然后将这些令牌传递给 POS Tagger。代码示例
加载模型
InputStream modelIn = null;
try {
modelIn = new FileInputStream("en-pos-maxent.bin");
POSModel model = new POSModel(modelIn);
}
catch (IOException e) {
// Model loading failed, handle the error
e.printStackTrace();
}
finally {
if (modelIn != null) {
try {
modelIn.close();
}
catch (IOException e) {
}
}
}
实例化 POSTaggerME
POSTaggerME tagger = new POSTaggerME(model);
生成标签
String sent[] = new String[]{"Most", "large", "cities", "in", "the", "US", "had",
"morning", "and", "afternoon", "newspapers", "."};
//This is manual String tokens of a sentence. To Generate word token use [Tokenizer Model][6]
String tags[] = tagger.tag(sent);
链接
【讨论】:
我认为您应该阅读文章或报告以了解他们做了什么。我正在处理越南语,不知道图书馆用什么英文。但我在使用越南语标记库时看到了斯坦福 nlp。 我认为语法和词汇非常重要。 这是 NLP 斯坦福,试试这个。 http://nlp.stanford.edu/software/tagger.shtml
【讨论】: