UNIT划重点—快速掌握对话系统技术原理

作者: 佚名 2019-01-04 09:12:01

人工智能时代的交互特色用一个词来概括就是“对话”,用人类最自然的交互方式,或者是语音或者是文字,给机器发送指令,与机器进行交互。当然,人机对话系统早在传统计算机时代就已经出现了,只是在人工智能时代,特别是由于各种机器学习技术尤其是深度学习技术的出现,使我们的系统实用性取得了质的飞跃。

对话系统种类繁多,划分方式多种多样。可根据用途分为任务型、问答型、闲聊型对话系统;也可根据场景分为封闭域、开放域对话系统;还可根据使用方法分为检索式、生成式对话系统。UINT平台能够帮助大家方便地构建任务型多轮对话系统。我们重点看任务型多轮对话系统。

任务型人机对话系统

在对话过程中,机器人需执行的操作分为口语理解、对话管理、执行命令、语言生成四个过程。如下图所示对话系统的基本操作流程:

首先,对话系统需理解用户的自然语言请求,根据用户给出的查询输入先后经过口语理解、对话管理,然后决定进行语言生成还是指令执行,***给出系统答复。其中,核心模块为口语理解和对话管理。

口语理解

口语理解的功能为理解用户请求所包含的语义信息,用于信息查询或指令执行。其任务难点为自然语言的歧义性,表达方法的多样性及叙述风格的口语化。那么该如何攻破口语理解的任务难点呢?

UNIT平台提供两种经典模式解决:基于语义解析的口语理解模式,基于语义匹配的口语理解模式。

基于语义解析的口语理解模式,是将用户请求解析为所包含语义信息的结构化表达。其中,最典型的结构化表达是意图(描述用户的核心诉求)+ 词槽(描述意图的关键信息)的模式。常用方法有基于知识规则的方法,基于机器学习的方法,以及基于融合策略的方法。

基于语义匹配的口语理解模式,不需要解析出具体的语义格式化信息,而是需要寻找与其具有***语义匹配程度的问答对。

对话管理

对话管理的功能为基于对话状态实施对话策略,从而实现多轮对话逻辑。其任务难点为状态计算的不确定性及不确定环境下的策略选择。相应的,对话管理存在两大核心任务:对话状态跟踪、对话策略选择。如下图为对话管理在整个对话流程中的位置,及状态位置和对话管理之间相互配合的关系。

对话状态跟踪,即根据对话历史计算当前对话状态,管理并更新对话历史。其常用方法为:基于人工规则的方法,基于机器学习的方法。通过建立映射,输入会话历史,然后输出当前对话状态。

对话策略选择,即根据当前对话状态,选择接下来最恰当的操作。其常用方法为:基于人工规则的方法,基于机器学习的方法,以及基于强化学习的方法。同样是通过建模映射的过程,输入当前对话状态,输出系统回复和指令执行。

对话系统如何搭建

简单介绍一下系统搭建的流程,以及每个流程当中开发者需要做什么,以及UINT平台为大家提供了什么。搭建流程如下:

1)首先定义对话系统。就是说这个对话系统包含哪些意图,这个意图的关键信息是什么。

2)富集数据资源。就是收集、标注、扩充数据资源,包括需要哪些词典,标注哪些规则,需要写多少模板,需要标注多少样本。

3)配置对话逻辑。这个过程可以很方便的用UINT进行搭建,只要把这个对话系统按照UINT提供的方式配置到UINT平台中,把富集的数据资源输入到UINT中,点几个按钮就可以进行系统的搭建训练了。

4)训练模型,效果优化。可以在UNIT平台进行对话效果的调优。之后可以不断的重复一个小的循环过程。上线之后,大量的用户进来使用对话机器人,贡献了更多数据的样本,拿到这些样本之后,根据这些样本所产生的错误等等情况进行分析,再一次富集我们的资源对系统进行改进,使得效果不断变好。

在这个搭建的过程中,UNIT平台提供了很多能力,为开发者降低了开发成本。

  • 预置技能:分析用户需求,定义对话系统阶段,UNIT平台直接推出多个场景的预置技能,也有富含资源的技能,开发者可以一键获取,不需再进行富集数据和模型训练的工作。
  • 系统词槽:UNIT平台预置的词槽,包括人名、地名、时间、地点等22个大类的词槽词典值,开发者可以直接勾选复用,不需富集人名表、地名表和时间等等这些信息。
  • 模板配置:UNIT提供了一套科学的对话理解模板的编撰机制,通过这种对话模板,可以快速实现对话的泛化效果。
  • 推荐样本:UNIT平台提供了大量的推荐样本,减少开发者样本富集的工作,根据开发者提供的样本,能够推荐出一些相似的、可以复用的样本出来。
  • 日志分析:UINT提供了数据回流的机制,数据存储的机制,数据服务加工的机制等,以及日志分析工具,帮助开发者优化对话效果。

系统评估

评估方法分为两大类:

1. 对单个系统的精度给出量化的指标数据,用于单个系统的精度评估

由于口语理解精度直接影响对话管理运行,进而影响对话系统效果,因此可以通过评估口语理解来评估对话系统。其中有三个指标:准确率(Precision),召回率(Recall),F 值(F-measure)

准确率 = 预测结果中正确的数量 / 预测结果中总的数量

召回率 = 预测结果中正确的数量 / 测试集中应该被识别的数量

2.  对两个系统的精度对比给出量化的指标数据,用于系统迭代时给出精度对比。

针对系统迭代需求,比较基线系统 X 和对比系统 Y 的优势。其中两个系统的定量对比涉及的指标:

  • Diff 面:同一条 query 解析结果不一致的情况在抽样集合中的占比
  • G(变好):针对同一条 query,Y 的结果比 X 好
  • S(相同):针对同一条 query,Y 的结果与 X 差不多
  • B(变差):针对同一条 query,Y 的结果比 X 差

如果 Y 要替换 X,至少 G>B;同时如果 Diff 面过大,则还需要考虑用户体验的波动。

系统 人工智能 数据
上一篇:VGG卷积神经网络模型解析 下一篇:私藏UNIT学习笔记—轻松入门对话系统搭建
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

人工智能辅助下社交媒体营销人员的十大戒律

如果我告诉你,在社交媒体中使用人工智能工具(并正确地使用)能够增强每名用户的消费者旅程,从而留下更多的用户,且留存时间更长,会怎么样呢?

读芯术 ·  13h前
2020~2030:人工智能将占据主导地位的十年

AntWorks预测,在未来十年中,很难找到一个没有利用AI来智能地自动化业务流程的行业。在所有行业中都有无数的AI用例,这是我们对2020年及以后的预测。

CDA数据分析师 ·  1天前
用机器学习备忘单解决艰巨问题,你行吗?

在本文中,我们将介绍如何使用备忘单简化机器学习方法,你可以使用该备忘单选择适合解决问题的正确算法。

读芯术 ·  1天前
没有数据就没有自动驾驶的未来:自动驾驶汽车为何需要大数据

大数据使自动驾驶的未来成为可能。自动驾驶是汽车制造商的一个热门话题。提供高度自主性的技术对于未来的汽车发展至关重要。随着物联网的发展,我们的汽车可以看到、听到甚至预测未来

佚名 ·  2天前
AI人工智能在2020年的7个发展趋势

随着对其他AI应用程序需求的增长,企业将需要投资有助于其加快数据科学流程的技术。然而:实施和优化机器学习模型只是数据科学挑战的一部分。

CDA数据分析师 ·  2天前
疫情后的自动驾驶,发展有了更明确的方向!

疫情给了自动驾驶向大众介绍自己的机会,同时也让自己更加看清了自己的发展。那么在看清之后,行业将朝着怎样的方向前进呢?

林中易木 ·  2天前
人脸识别技术应用的法律规制

如何促进、保障和规范新兴技术的发展及其在商业、公益、社会治理等领域的应用,是推进国家治理体系和治理能力现代化进程中的关键议题,某种程度上决定着这一政治进程的成效。

中国社会科学网 ·  2天前
物联网和机器人如何协同工作

很显然,机器人和物联网是两个完全不同的领域。但是,毫无疑问,它们正在协同工作,因为彼此都在帮助对方发展和创新。

iothome ·  2天前
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载