1.4 人机对话交互基础概念(2)

查看完整系列文章点击这里:https://www.jianshu.com/p/43e93bfd0895

设计一个对话交互系统之前,需要了解几个语音交互系统中的核心概念:BOT(或 Skills),意图(Intent),槽位(Slot),槽位类型(Slot-Type)。

1.4 人机对话交互基础概念(2)_第1张图片
图1 概念范围

1 Bot(or Skills)

定义:Bot这个概念主要针对开发者,是一个具有对话能力的模块,针对用户表达返回自己逻辑中定义的回复,最终满足用户特定需求。Skills这个概念主要针对用户,是一个解决特定需求的能力,例如天气Skills,帮助用户查询天气,音乐Skills帮助用户播放音乐。

我们以 Amazon Alexa 为例说明一下这两者的关系,Alexa 有一个平台叫做 ASK(Alexa Skills Kit) ,这个平台允许第三方开发者将自己开发的BOT接入 Alexa 生态,开发者在这个平台上给自己的BOT增加名称、图标、简介信息后申请在 Alexa 的 Skills Store 上线,最终呈现给用户的,就是一个 Skills。

一个Bot的核心的是针对用户表达的处理逻辑,当用户说一句话到对话系统中时,通过NLU(Natural Language Generation)解析出了意图后,再由中央控制模块,将该 “用户表达” 分发给那些声明可以处理该意图的BOT,由这些BOT返回自己处理完毕的结果,如果用户需要多轮的对话交互,则会在确定一个BOT承接用户的需求后,持续由该BOT进行处理,直到处理完毕。

2 意图(Intent)

定义:意图(Intent)是指,我们识别用户这句表达,具体是想做什么,根本来说意图是一个分类器,将用户需求划分为某个类型。

意图主要是为任务导向型的对话系统准备的,这类对话系统是为解决用户特定需求而存在的,我们会选择意图明确的需求进行满足,因此意图是可以在特定场景下,不断提升准确度和召回率的,只有当意图的效果达到很好的时候,我们才会将它封装成一个BOT,接入对话系统,面对用户。

对于一个BOT来说可能包含多个意图,也就是说一个BOT可以处理多种意图的用户表达。可以说意图识别就是对话的起点。

3 槽位(Slot)与槽位类型(Slot-Type)

定义:槽位(Slot)是针对用户表达中,关键信息的定义,例如在订机票的表达中,我们的槽位有 “起飞时间”、“起始地”、“目的地”,这三个关键信息需要在 NLU(Natural Language Generation) 的时候被识别出来,而能够准确识别槽位,需要用到槽位类型(Slot-Type),依然举上面的例子,如果你想精确的识别出“起飞时间”、“起始地”、“目的地”这三个槽位,就需要有背后对应的槽位类型,分别是“时间”,“城市名称”,我们给这里所说的槽位类型(Slot-Type)一个定义,就是特定知识的结构化知识库,用以识别和转化用户口语化表达的槽位信息。

从编程语言的角度来类比理解,intent+slot可以看成是用一个函数来描述用户的需求,其中"intent对应函数"、"slot对应的是函数的参数","slot_type对应参数的类型"。

这里所说的槽位类型可以分为两类:系统槽位类型和普通的槽位类型。其中系统级别槽位类型包含了一些固定不变,概念清晰的通用知识,例如地点-国家(POI.Country),时间(Date_Time);普通的槽位类型,主要指特定垂类需求中个性化的槽位,如音乐垂类中的歌手(Singer_Name)。

以上是对话交互中比较特殊又非常核心的概念,智能君尽量用通俗的语言讲解清楚,后续的文章我们会将重心转移到对话交互上来,再会。

查看完整系列文章点击这里:https://www.jianshu.com/p/43e93bfd0895

你可能感兴趣的:(1.4 人机对话交互基础概念(2))