我可能需要为OpenNLP创建一个自定义训练集,这需要我手动注释很多条目。
为了简化操作,GUI解决方案可能是最好的想法(手动编写注释标签并不酷),我刚刚发现了看起来像我需要的BRAT。
BRAT可以导出带注释的文件(.ann),但我在OpenNLP's manual中找不到对此文件类型的任何引用,我不确定这是否可行。
我想做的是从BRAT导出这个带注释的文件并用它来训练OpenNLP的模型,我真的不在乎是否可以使用代码或CLI来完成。
有人能指出我正确的方向吗?
答案 0 :(得分:2)
OpenNLP本身支持BRAT格式,用于培训和评估名称查找器。目前不支持其他组件。添加对其他组件的支持可能并不困难,如果您感兴趣,您应该在opennlp-dev列表中请求它。
CLI可用于训练带有小子的模型,这里的命令将显示用法:
以下参数是训练模型所必需的:
名称查找器需要将其输入切换为句子和标记。默认情况下,它假定每行一个句子并应用空格标记化。可以使用ruleBasedTokenizer或tokenizerModel参数调整此行为。另外,可以通过sentenceDetector Model参数使用自定义句子检测器模型。
要评估您的模型,可以通过将.brat附加到其名称来以相似的方式使用交叉验证和评估工具。
要加快注释项目,可以使用opennlp-brat-annotator。它可以加载Name Finder模型并与BRAT集成以自动注释您的文档。这可以加快您的注释工作。您可以在opennlp沙箱中找到该组件。