Ibm cloud IBM Watson Assistant-排除特定的实体值,以使其永远不匹配

Ibm cloud IBM Watson Assistant-排除特定的实体值,以使其永远不匹配,ibm-cloud,watson-assistant,Ibm Cloud,Watson Assistant,这可能是一个简单的问题,我还没有找到,但我正试图排除一个单独的值(“女朋友”)作为我正在构建的聊天机器人中的一个实体。实体列表当前为“狗、猫、宠物、妈妈、马”,每个实体都有相关的同义词 沃森不断挑选“女朋友”,并将其作为一个实体进行匹配,尽管它不在其中,这会在对话中塞满逻辑 有没有一种方法可以阻止Watson在实体列表中识别超出列表内容的类似单词?我曾尝试过关闭模糊匹配,但这只是错过了拼写错误 请注意,这不是一个意向培训问题,而是专门询问实体标识 谢谢你的帮助 -T-您的问题并不完全清楚,但您可

这可能是一个简单的问题,我还没有找到,但我正试图排除一个单独的值(“女朋友”)作为我正在构建的聊天机器人中的一个实体。实体列表当前为“狗、猫、宠物、妈妈、马”,每个实体都有相关的同义词

沃森不断挑选“女朋友”,并将其作为一个实体进行匹配,尽管它不在其中,这会在对话中塞满逻辑

有没有一种方法可以阻止Watson在实体列表中识别超出列表内容的类似单词?我曾尝试过关闭模糊匹配,但这只是错过了拼写错误

请注意,这不是一个意向培训问题,而是专门询问实体标识

谢谢你的帮助


-T-

您的问题并不完全清楚,但您可能想看一看。因为Watson Assistant是建立在人工智能技术之上的,所以学习是关键


您可以通过返回对话并用正确的对话纠正错误的匹配来“教导”Watson Assistant。Watson助手将拾取此信息,然后重新训练对话框。这将导致排除“女友”。

不清楚您是如何创建实体列表的。如果是通过上下文实体,那么Watson可能会将“女友”视为与其他实体属于同一个“家庭”,并将其添加到实体列表中。如果实体列表与同义词一起是硬编码的,那么我猜你的同义词中有一个与女友、女孩或朋友的拼写相同。通过模糊逻辑匹配实体,但置信度较低。 要修复此问题,您可以创建一个新的实体列表,并具有一个看起来与实体列表1匹配的条件,但与实体列表2(1)不匹配

或者,您可以在实体列表上设置条件,并且实体置信水平>0.8-但是您可能会错过一些拼写错误。(选择一个略高于为女朋友报告的置信水平)

我也有类似的问题。我的机器人一直选择自己的名字作为用户名,我希望它忽略自己的名字,即使用户键入它(例如,Hello Robot,我是Jill),我希望它响应“Jill”,而不是“Robot”,但它一直没有响应。后来我意识到我创建的上下文变量的值与用户名相似。所以我所做的就是创建一个变量@bot name,只给它一个值(Robot),没有同义词,没有模糊匹配,没有注释。然后再试一次,机器人识别出它自己的名字,忽略它,并正确地选择第二个名字作为用户名。因此,当我重复“你好,机器人,我是吉尔”这句话时,它识别出@entity:bot name和@entity:user name,然后只响应用户名。您可以尝试类似的方法。

我不能说这是否是一个解决方案,但我更愿意称之为一种变通方法,因为它在我的情况下对我有效

非上下文情况:

  • 创建一个
    新实体
    并添加
    女朋友
    作为值。因此,它永远不会干扰对话框流中的当前实体
上下文案例:

  • 用示例训练意图,包括
    女友
    ,并用新实体对其进行注释

在30年的职业生涯中,我已经开发了100种NLP解决方案,但这是我第一次使用Watson,所以我觉得我缺少了一件简单的事情(不像你建议的那么简单-再培训)。这不是意图识别,而是添加了一个不在实体列表中的单词,并将其标记为该实体。这个词不在实体列表中,我不希望它在实体列表中,如何将其从实体列表中排除?再培训是不可能的,因为它是一个实体,而不是一个意图。你能为你的问题添加细节吗?或者加入这个Slack社区,与Watson开发人员讨论:您的实体是否启用了模糊匹配?试着把它关掉。