我是 opennlp 新手,需要帮助来自定义解析器
我已经使用带有预训练模型 en-pos-maxtent.bin 的 opennlp 解析器来标记新的原始英语句子和相应的语音部分,现在我想自定义标签。
例句:狗跳过墙。
在使用 en-pos-maxtent.bin 进行 POS 标记后,结果将是
狗 - NNP
跳跃 - VBD
过 - 在
-DT
墙 - NN
但我想训练我自己的模型并用我的自定义标签标记单词,比如
狗 - PERP
跳了 - ACT
超过 - OTH
-OTH
墙 - OBJ
其中 PERP、ACT、OTH、OBJ 是适合我需要的标签。这可能吗 ?
我检查了他们文档的部分,他们已经给出了训练模型并在以后使用它的代码,代码是这样的
try {
dataIn = new FileInputStream("en-pos.train");
ObjectStream<String> lineStream = new PlainTextByLineStream(dataIn, "UTF-8");
ObjectStream<POSSample> sampleStream = new WordTagSampleStream(lineStream);
model = POSTaggerME.train("en", sampleStream, TrainingParameters.defaultParams(), null, null);
}
catch (IOException e) {
// Failed to read or parse training data, training failed
e.printStackTrace();
}
我无法理解这个“en-pos.train”是什么?
这个文件的格式是什么?我们可以在这里指定自定义标签还是这个文件到底是什么?
任何帮助,将不胜感激
谢谢