Mycroft-core: “说”总是触发说话技巧

创建于 2016-08-02  ·  4评论  ·  资料来源: MycroftAI/mycroft-core

“嘿,迈克罗夫特,维基百科对亚伯拉罕林肯的评价如何”

迈克罗夫特回应:“关于亚伯拉罕林肯”

Bug - complex

所有4条评论

我会认为这是适应的问题。 相反,它可能应该根据正则表达式的长度返回每个匹配项的置信度,以便what does wikepedia say将始终覆盖say

我同意; 去年,我尝试为相对较小的一组操作制作一个类似 mycroft 的意图解析系统(也在 python 中),并出于同样的原因将此权重添加到匹配置信度中。
它工作得很好,尽管我还根据它们与短语开头的接近程度对匹配进行了加权(或者实际上,基于下一组未解析的单词从接收到的单词开始的位置)。 每个技能都会处理它的短语并在最后返回任何剩余的单词,以便在需要时重新解析,特别是如果它是一个子句的一部分,例如。 “和”或“然后”。

注意:我确实尝试将“听起来像”单词列表添加到 TTS 有时会作为替代返回的每个“技能”单词集以提高匹配率,然后进行最佳匹配并适当地按比例评估置信度,但它即使使用有限的功能集来满足作为业余项目返回的所有公认版本,也变得太难了。

Adapt 会按照“话语的最大覆盖范围”的顺序产生解析结果,这不一定是最高置信度的顺序。 在计算置信度时,正则表达式会根据其不准确度获得较低的权重,并且所有匹配项(正则表达式或实体文字)都具有基于所表示的话语百分比的置信度。 最新版本的 Adapt (v0.3.0) 将有选择地公开解析结果中各个标签的置信度。

{u'ArticleTitle': u'say about foobar', 'intent_type': u'WikipediaIntent', 'confidence': 0.375, 'target': None, u'WikipediaKeyword': u'wikipedia'}

在调试器中逐步执行此操作,我可以看到从 Adapt 产生的第 4 次或第 5 次解析结果确实比说话意图具有更高的置信度,并触发维基百科意图。 解析结果是垃圾(查询:比如 abraham lincoln),但 Adapt 不太擅长从自然语言文本中解析自由文本搜索查询。 虽然正则表达式在这里是一种必要的邪恶,但它们已被严重滥用,并且使用它们的技能越多,发生此类冲突的可能性就越大。

至少对我来说,这个错误是由https://github.com/MycroftAI/mycroft-core/commit/4d6defd126c0a0b091718f8e15f8b033a84f9aa1修复的

此错误似乎已修复。

此页面是否有帮助?
0 / 5 - 0 等级