我正在开发一个使用wit ai作为服务的应用程序。现在,我在训练它时遇到了问题。在我的应用程序中,我有3个意图:
以下是我的示例培训:
Call this number 072839485 and text this number 0623744758 and send picture to this number 0834952849.
Call this number 072839485, 0834952849 and 0623744758
在我的第一次训练我标记的那句话与所有3和意图,并072839485与角色to_call_phone_number,0623744758与角色to_text_phone_number PHONE_NUMBER并0834952849与角色to_send_pic_phone_number PHONE_NUMBER PHONE_NUMBER。
在我的第二次训练中,我将所有3个数字标记为具有to_call_phone_number角色的phone_number。
经过多次训练后,机智仍然输出错误的标签。当这句话像这样:
Call this number 072637464, 07263485 and 0273847584
机智说072637464是to_call_phone_number但是07263485和0273847584是to_send_pic_phone_number。
我没有正确训练吗?有人可以给我一些关于训练机智的最佳做法的建议吗?
答案 0 :(得分:2)
目前没有很多关于wit.ai培训的最佳实践,但是考虑到这个特殊的例子,我会推荐以下内容:
除了值之外,还要注意实体的类型。如果您选择自由文本或关键字,您将从机智引擎获得不同的响应。例如:在您的培训中,如果数字是关键字,它会将特定数字与意图/角色而不是位置相关联。这可能是您的培训无法正常工作的原因。
一个好的做法是首先用特定的例子训练您的机器人,这将为机器人提供更多信息(例如用户提供关键字“照片”和数字),然后是适用于更多情况的一般示例(比如你的第二个例子)。
考虑用户的观点以及他们看起来自然的东西。首先使用这些培训示例。生成可能的培训示例列表,将它们从一般标记到特定,然后根据这些示例训练意图/角色/实体,而不是首先考虑意图和角色。