Ibm watson对话的模糊匹配功能,因为它的最新更新是错误地匹配单词。例如。 “what”被选为实体“chatbot”,而chatbot实体中没有任何同义词甚至接近于什么。 我的问题是,有没有办法从模糊匹配中排除单词,同时保持实体的ON。或解决此问题的任何其他解决方案。
由于
答案 0 :(得分:2)
我假设你在chatbot中有一个实体用于'聊天机器人',它在聊天中获得部分匹配,然后从'聊天'到'什么'进行模糊匹配,因为它只有一个字符差异,可能是拼写错误。 您可以关闭模糊匹配,但目前无法将任何特定单词列入黑名单。您还可以尝试通过对话框设计来保护自己,因为您只是在某些点上寻找@chatbot,所以它不应该经常中断
答案 1 :(得分:2)
我知道你的意思,我们需要使用模糊匹配,但它有时会造成更多麻烦。我们已经收集了许多单词并报告为不同的单词。我们用来删除一些问题的方法是查看为错误拼写“what”而给出的置信度值,然后将其作为附加条件使用。
即如果“what”报告置信度值为0.6,则将您的条件设置为0.7 ..实体['chatbot']?。置信度> 0.7
对于每个单独的“实体”类,可以打开或关闭模糊逻辑,即上述示例中的“chatbot”或许多文档示例中的“城市”。
我不相信你可以设置一个全局条件来检查所有实体的置信度值,所以你需要检查类级别的置信度。如上所示。
此外,目前你不能将单个单词列入黑名单以阻止模糊逻辑检查它们,例如你的例子中的“什么”。
答案 2 :(得分:1)
是的,你绝对可以检查置信度值。我关注的一个问题是你不知道你接收了多少个实体,所以你必须编写一些相当复杂的逻辑,但如果你只有一个实体,那么它非常简单。当我们检测到实体时,我们会返回:
"entities": [
{
"entity": "appliance",
"location": [
23,
29
],
"value": "wipers",
"confidence": 1
},
{
"entity": "appliance",
"location": [
11,
18
],
"value": "lights",
"confidence": 0.87
}
]
因此,为了获得实体的信心,你会做实体[0] .confidence>对话框触发器中的0.x.