如何在DKPro Core中训练多个文件中的一个模型?
在WebAnno中注释许多文档并以XMI格式导出后,我尝试使用以下代码创建模型:
File model = new File("/tmp/", "model.bin");
SimplePipeline.runPipeline(CollectionReaderFactory.createReaderDescription(XmiReader.class,
ResourceCollectionReaderBase.PARAM_SOURCE_LOCATION, "/tmp/",
ResourceCollectionReaderBase.PARAM_PATTERNS, ResourceCollectionReaderBase.INCLUDE_PREFIX + "*.xmi"),
AnalysisEngineFactory.createEngineDescription(OpenNlpNamedEntityRecognizerTrainer.class,
OpenNlpNamedEntityRecognizerTrainer.PARAM_TARGET_LOCATION, model,
OpenNlpNamedEntityRecognizerTrainer.PARAM_LANGUAGE, "pt"));
}
问题在于虽然它确实打开了多个带注释的文件,但只训练了一个文件。
答案 0 :(得分:0)
阅读器将打开所有文件,并将它们一个一个地发送给培训师。培训师从所有这些人那里学习,并产生一个单一的输出模型。因此,您只能看到一个输出文件。
如果您要为每个输入文件创建一个模型,则必须创建一个循环,将文件逐一传递给读取器。