在词匹配的情况下,是否有模糊的选择,或者忽略了一些特殊情况。
前任:
STRINGLIST AMIMALLIST = {"LION","TIGER","MONKEY"};
DECLARE ANIMAL;
Document {-> MARKFAST(ANIMAL, AMIMALLIST, true)};我需要把单词和列表匹配起来,以防我遇到一些特殊的角色,比如
Tiger-或猴子$
根据文档,有不同的评价器,知道如何使用吗?或者我可以使用SCORE或MARKSCORE
发布于 2017-08-25 20:45:58
这里有几个方面需要考虑。一般来说,UIMA Ruta不支持字典查找中的模糊性。SCORE和MARKSCORE是语言元素,可以用来在顺序规则中引入一些启发式评分(不是真正的模糊性)。在你在问题中给出的例子中,你真的不需要模糊匹配。
UIMA中的字典查找工作在RutaBasic注释上。这些注释由UIMA Ruta自己自动创建和维护(其他分析引擎或规则不应直接更改)。RutaBasic注释表示注释所引用的最小片段。默认情况下,RutaEngine的种子程序为单词(W -> CW、SW、CAP)和许多其他标记创建注释,比如SPECIAL for -或$。这意味着也有一个RutaBasic注释,并且字典查找可以在这些标记之间展开。因此,应该对、Tiger和Monkey进行注释,您的问题中的示例实际上应该可以运行(我测试了它)。您可能需要进行一些后期处理,以便将SPECIAL包含在ANIMAL中。
我必须指出,在字典查找(多树词列表,TRIE)中也有使用编辑距离的功能。然而,这个功能已经有几年没有得到维护了。它还应支持对特定替代物的不同权重。我不知道这算不算模糊。
免责声明:我是UIMA Ruta的开发人员
https://stackoverflow.com/questions/45708526
复制相似问题