很多人都有这样的想法:若能开发属于自己的人工智能该有多棒啊!但是这并不容易,有很多需要避免的错误。本文将讨论初学者刚制造机器人时每一阶段所会犯的常见或严重错误。我们开始吧!

  制造一个机器人并非始于编码。早在概念建立阶段,这个过程就开始了。

  第一步,定义聊天机器人的用途是非常重要的——是为了解决什么问题?是为了应付什么业务需求?经常有人说:“我想要能做这些那些的机器人。”可是通过深入探讨后,就会发现其实另一个机器人或许能更有效地解决这个问题。如果你希望制造一个负责回答客户关于退货条例的问题,但是之后却发现有关问题其实只占你整体问题量的2%,那或许换另一个切入点比较好。因此,先确定好要解决的业务问题再出发。

  确立好现实生活的业务需求后,机器人的对话流该如何解决呢?通常可以拿出画板,把所有的对话流从头到尾画出来。把所有潜在可能列出来有助于确保覆盖到所有主题,也能让开发人员对需要做的事项有个大概了解。这也是创造用户体验的第一步,下文会详谈。现在,需要注意的是每段对话不应该超过3-4次来回。

  在这一步,别忘了用户:谁将会是和机器人对话的终端用户?制作时必须把他们考虑在内。

  也别忘了在概念阶段放入一些“闲谈”词语。所有的聊天机器人都应该明白并且会回复一些与它们任务无关的话题,如笑话、天气问题、“你好吗?”甚至“你要嫁给我吗?”等等。想要确保用户有个满意的体验,就要把这些包括在内。

  制造机器人时这一阶段该避免事项:

  · 认为这阶段不重要。

  · 要做的并非你真正需要的。

  · 没弄清楚聊天机器人的终端用户,而设计了一个牛头不对马嘴的体验流程。

  · 没包括“闲谈“或者其它常见问题等词语。

  训练机器人是决定机器人性能的最重要因素。训练若没做好,无可避免将会导致聊天机器人性能很差,让用户感到困扰。

  根据概念阶段所创造的对话流,训练阶段包括创造“意图”,并填上“表达”。

  每个“意图”的“表达”量至关重要。5个并不足够,应该做超过50个。SAP Conversational AI可以很好地运行小数据集,但是依然需要更多资料。这些句子应该多样化,而且应该向终端用户搜集。千万不要只和开发团队和项目团队训练机器人,因为他们太了解科技领域的常用语,无法准确地代表机器人的实际用户。

  标记“实体”也有一些规则。“实体”是句子中的关键词,用以提取信息(重点是“提取信息”)。不需要每一句都标记所有的名词、形容词或字眼。“实体”的主要目的是提取可以用在代码中的相关信息。只需要标记这些。但是,要避免标记只由一个字组成的句子(如“Paris”为一个句子)。这样的“实体”可被任意一个“意图”探测到,会导致探测问题。

  


  对于大型机器人,常见的最佳做法就是一起使用“意图”和“实体”。比起创造特定“意图”,创造一个通用“意图”,再通过“实体”制定用户需求会比较好。因为特定“意图”在重叠时会导致分类器混淆。

  


  上例中,通用“意图”为“Troubleshooting”,但是“实体”探测的是哪些产品无法运作。

  制造机器人时这一阶段该避免事项:

  · 每个“意图”的“表达”不超过50个。

  · 训练机器人的人不是终端用户。

  · 把句子里每个字标记为“实体”。

  · 把不需要的被提取信息的字,标记为“实体”。

  · 只有“实体”的“表达”(如“Paris”)。

  · 创造很特定的“意图”而非使用“实体”来理解主题。

  多数人认为研发机器人的过程只需要构建对话流。那是最有趣的部分啊!是一切事物开始运作的部分。但是,这也是个雷点重重的过程。

  首先要理解的是:使用多种“技能”完成一个任务是可以接受的。不一定要一项“技能”等于一个完整的过程。也许更好的方法就是创建一个“超级技能”,由它将用户输入分配到正确的“技能”去。

  


  在前文提到的troubleshooting (ts) 例子中,一个“超级技能”重定位成了管理特定过程的各种“技能”。

  如果有触发器相重叠的“技能”,上面的方法也可以解决这个问题。如果有什么东西无法操作了,可以从侦错控制板里的记录查找问题根源。

  


  制造机器人时这一阶段该避免事项:

  · 坚持“一个技能 = 一个任务”的思维。

  · 没有充分利用平台里的侦错工具。

  当给机器人连线时,需要决定用户可以在哪里用到它,也因此,这一阶段得考虑到用户体验 (UX) 。要提供一个令人满意的UX,需要注意几个事项。第一,机器人外表必须好看。一个外表好看的机器人装有许多按钮,富含图形元素、高清图片、颜色和独特的个性,这让它显得与众不同。但这该怎么做到呢?

  首先,在选择频道时要考虑到用户。如果目标用户是50-65岁的人群,也许就不用把机器人放在Kik(通讯软件)上了。不要试图把用户吸引到一个他们不适用的频道,即使它更好。相反的,应该将机器人放入用户已经使用的频道上。

  接着,要记住聊天机器人是一个对话界面。对话是以交互式交换进行的。因此,要制作的机器人不应该长篇大论地进行回复(超过60个字符就已经很长了)。将回复信息分成几段,使用图像、按钮、列表或者所使用频道的其它UX部件,让对话变得更生动。创造有趣的对话也很重要:你的机器人可不是FBI特工。没人想在得到答案前被提问20个问题。相反的,制造对话流和UX时设定每3-4次交流就提供一个答案,以此吸引用户。

  除了机器人制造工具,我们也提供一个强大的自然语言处理API。这样用户就会倾向于通过语言来做任何事情。虽然这并非坏事,但我们也鼓励将机器人多样化:使用卡片、按钮和其他图形元素,让你的机器人更有交流性,也便于利用。但仍然要确保整个对话流可以使用自然语言完成,这样用户才能知道你的机器人是货真价实的。

  


  给聊天机器人设定个性是至关重要的,然而,必须找到正确的平衡点。让用户知道他们在和机器人对谈,这叫做期望管理!当某人与另一个人对谈的话,将会期望有最高水平的互动,而将某人和机器人对谈时,他就会理解并不会随意提问。当然,也不要把它弄得太机械化:给它取名字、一个图像,并使用笑脸和特定语气,让它更显为独特。

  制造机器人时这一阶段该避免事项:

  · 错误识别用户正在使用的频道。

  · 创建对话时,设定用户必须回答四个或以上问题才能得到答案。

  · 发送长篇大论的回复(超过60个字符)。

  · 只专注在文字,不适用所有UX部件(按钮、卡片、列表等)。

  · 让用户认为你的机器人是人类。

  · 不给机器人设定一个可以吸引用户的独特个性。

  当机器人投入使用后,不要就觉得完事了!要确保长期成功,维修机器人可是很关键的一部分。这主要包括对训练进行微调,管控用户所说内容,用来改进对话流或创建新用例。

  训练时要谨慎。虽然通过记录内容添加新的用户语句很重要,但是要小心别因此而破坏之前已经创建的有效训练的平衡。不要把所有的新“表达“添加进去而把“意图”淹没,只加需要的就好。要记得所有的“意图”都必须经过相同数量的训练!如果一个“意图”有一百个“表达”而另一个只有十个,那是不行的。所以,在分配新“表达”时要作定期检查。

  最后,你可以在记录日志中得知用户谈论的话题。是否观察到用户一直提起的问题,而机器人还无法处理?那你可以把它添加进入对话流中。这是向你的用户端展示他们所使用的机器人一直都在努力改善,以提供一个更好的用户体验。

  制造机器人时这一阶段该避免事项:

  · 认为机器人投入使用后就完工了。

  · 将新的用户“表达”淹没“意图”,扰乱现有训练。

  · “意图”大小制造不平等。

  · 不关注用户如何使用机器人。

  掌握了以上的内容,你就可以动手制作酷炫机器人了!大连钢结构设计http://dljunxiang.com/