model - 如何在 UIMA Ruta 中为外部分析引擎设置模型
问题描述
我正在尝试将 StanfordNamedEntityRecognizer 用于德语。我从 dkpro 加载了一个模型。不幸的是,模型无法识别。相反,NER 尝试使用不同的模型,该模型在任何地方都没有提供。
我如何告诉 AE 使用哪个模型?例如,使用“model-ner-de-Person”代替“model-ner-de-nemgp”。
这是我的主要 ruta 文件:
PACKAGE org.apache.uima.ruta.novel;
IMPORT PACKAGE de.tudarmstadt.ukp.dkpro.core.api.lexmorph.type.pos FROM desc.type.POS AS pos;
IMPORT PACKAGE de.tudarmstadt.ukp.dkpro.core.api.segmentation.type.Sentence FROM desc.type.LexicalUnits AS sentence;
IMPORT PACKAGE de.tudarmstadt.ukp.dkpro.core.api.ner.type.NamedEntity FROM desc.type.NamedEntity;
UIMAFIT de.tudarmstadt.ukp.dkpro.core.opennlp.OpenNlpSegmenter;
UIMAFIT de.tudarmstadt.ukp.dkpro.core.stanfordnlp.StanfordPosTagger;
UIMAFIT de.tudarmstadt.ukp.dkpro.core.stanfordnlp.StanfordParser;
UIMAFIT de.tudarmstadt.ukp.dkpro.core.stanfordnlp.StanfordNamedEntityRecognizer;
uima.tcas.DocumentAnnotation{-CONTAINS(pos.POS)} -> {
uima.tcas.DocumentAnnotation{-> SETFEATURE("language", "de")};
EXEC(OpenNlpSegmenter);
EXEC(StanfordPosTagger, {pos.POS});
EXEC(StanfordNamedEntityRecognizer);
};
解决方案
检查相应的descriptor.xml,我找到了配置参数“modelVariant”。我在我的 Ruta 脚本中添加了以下几行,它解决了我的请求。
这会将 StanfordNamedEntityRecognizer 的 modelVariant 设置为我喜欢的名为“germeval2014.hgc_175m_600.crf”的模型。
Document{-> CONFIGURE(StanfordNamedEntityRecognizer, "modelVariant" = "germeval2014.hgc_175m_600.crf")};
推荐阅读
- appium - 如何在 BitRise 和 Browserstack 上为 iOS 和 Android ReactNativeApps 设置 Appium-webdriverIO-mocha 测试
- python - 在处理第 10 帧时使用 OpenCV 读取 9 帧视频
- c++ - 过滤堆跟踪数据的大小
- r - sidebarLayout 参数
- r - 具有组合数据和条件的数据框
- java - JOOQ 如何根据其他列值转换 JSON?
- javascript - JQuery 遍历具有特定名称的几个/所有 HTML 元素
- haskell - 在servant中捕获IO异常
- java - 禁用正在进行的按钮
- html - Angular/ng-bootstrap - 轮播箭头自定义