多轮对话(一):概述(意图识别+槽填充)

这篇具有很好参考价值的文章主要介绍了多轮对话(一):概述(意图识别+槽填充)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、对话系统

多轮对话,NLP,人工智能,自然语言处理,深度学习

基于流水线的面向任务的对话系统包含了四个关键部分:

  • 语言理解。它被称为自然语言理解(NLU),它把用户话语解析为预定义的语义槽。
  • 对话状态跟踪器。它管理每一轮的输入与对话历史,输出当前对话状态。
  • 对话策略学习。它根据当前对话状态学习下一步动作。
  • 自然语言生成(NLG)。它将选择的动作映射到其表层,生成回复。

因为我现在做的是意图识别,所以我这里只介绍NLU相关内容,其余部分可以参考第四篇参考文献和第五篇参考文献,里面还有案例,非常容易理解。

多轮对话,NLP,人工智能,自然语言处理,深度学习

NLU:把自然语言转换成机器可以处理的领域(domain)/意图(intention)和槽植对(slot-value pairs)。它的输入Xn是用户的Utterance,输出Un=(In, Zn), In是intention,Zn是槽植对。In=f(Xn) , 就是意图分类,一般分类方法都行。Zn=f(Xn),Zn = { 1, 2, 3…},是序列标注问题(槽填充),传统的CRF、HMM都行,RNN、LSTM、GRU等也可以。

对话系统按功能来划分的话,分为闲聊型、任务型、知识问答型和推荐型。在不同类型的聊天系统中,NLU也不尽相同。

  • 闲聊型对话中的NLU就是根据上下文进行意图识别、情感分析等, 并作为对话管理(DM)的输入。
  • 任务型对话中的NLU就是领域分类和意图识别、槽填充。他的输入是用户的输入Utterance,输出是Un=(In, Zn), In是intention,Zn是槽植对。
  • 知识问答型对话中的NLU主要是根据用户的问题,进行问句类型识别与问题分类,以便于更精准的进行信息检索或文本匹配而生成用户需要的知识(知识、实体、片段等)。
  • 推荐型对话系统中的NLU就是根据用户各种行为数据和爱好进行兴趣匹配,以便于找到更精准的推荐候选集。

二、多轮对话的定义

多轮对话的目的是将初步用户意图转化为明确用户指令。

多轮对话是一种,在人机对话中,初步明确用户意图之后,获取必要信息以最终得到明确用户指令的方式。多轮对话与一件事情的处理相对应。

将“识别用户意图之后,为了获取必要信息,与用户进行的有目的的多轮对话”称为封闭域多轮对话,区别于识别用户意图之前,为了利用上文信息,所采用的『上下文替换』、『主体补全』等技术,也即开放域多轮对话

封闭域对话有很明显的两个特征:

  • 输入和输出是可枚举的
    即对于用户的某特定意图,必须填充指定数量的槽位后,才能完成回答。
  • 对话有明确的目的,且有流程
    当有槽位缺失时,需要使用澄清话术。即当用户的需求中缺乏一些「必要信息」时,需要对话系统主动发问,引导用户将「必要信息」填充完整。

三、槽的定义

  • 理解一段文字的一种方法是标记那些对句子有意义的单词或记号。在自然语言处理领域,这个问题被称为语义槽填充。
  • 从大规模的语料库中抽取给定实体(query)的被明确定义的属性(slot types)的值(slot fillers)。槽可以理解为:实体已明确定义的属性。
  • 填槽指的是为了让用户意图转化为用户明确的指令而补全信息的过程。

槽是多轮对话过程中将初步用户意图转化为明确用户指令所需要补全的信息。一个槽与一件事情的处理中所需要获取的一种信息相对应。

将“利用用户话中关键词填写的槽”叫做词槽,“利用用户画像以及其他场景信息填写的槽”叫做接口槽

我将可能包含多种填槽方式的称为槽组(对应着一种信息),槽组下面可能存在任意多个槽位,也即任意多种填槽方式,而每个槽位又都对应着『词槽』与『接口槽』两种槽位类型之一。

槽组(也即与一种信息)平级的概念还有一个,叫做澄清话术。澄清话术是对话机器人希望获取某种信息时所使用的问句。比如『目的地』对应的澄清话术就是『您想从哪出发呢?』。

上文将多轮对话定义为一件事情的处理,槽组/槽定义为一种信息的获取,槽位定义为信息的一种获取方式。这里我倾向于将多轮对话树结构中的一个节点定义为处理事情的一个步骤

一件事情的处理包含多个步骤,每个步骤中需要补全一种或多种信息,每种信息存在一种或多种获取方式。

多轮对话,NLP,人工智能,自然语言处理,深度学习

完整的多轮对话过程通常会以树的形式存在,树中包含多个节点,代表处理这件事情的一个步骤。而每个节点,都应当有其特别的准入条件。树的根节点往往需要限制 NLU 模块的输出,也即明确什么样的用户意图将会由该棵多轮对话树来处理;树的中间及叶子节点往往需要根据前序槽组的填槽结果以及其他背景信息进行条件限制。

从一个开放域转入到封闭域,或者从一个封闭域转入到另一个封闭域,中间的跳转是需要逻辑判断的,而这个逻辑判断就是准入条件

填槽的意义:结合上文,我们需要了解到,填槽的意义有两个:作条件分支多轮对话作信息补全用户意图。换言之,填槽不仅是补全用户意图的方式,而且前序槽位的填写还会起到指导后续信息补全走向的作用。

四、论文介绍

纯意图识别的论文不是很多,而且大多是比较早期的,主要是RNN、LSTM等模型,详情可以参考总结|对话系统中的口语理解技术(SLU)(一)。

纯槽填充的论文也不是很多,大多也很古老,主要是CRF、RNN等模型。

随后,越来越多的研究开始将意图识别和槽填充结合起来,逐渐成为主流,详情可以参考总结|对话系统中的口语理解技术(SLU)(二)。

Awesome-SLU-Survey资源库

参考文献:
填槽与多轮对话 | AI产品经理需要了解的AI技术概念
AI说 | 你接触的各种机器人,他们是怎么和你聊上天的?
槽填充(Slot Filling)的定义、用途、意义及其他
任务型对话系统公式建模&&实例说明
对话系统综述:新进展新前沿
近期任务型对话系统综述以及百度UNIT,理论和实践,我全都要!
新分类!全总结!最新Awesome-SLU-Survey资源库开源!文章来源地址https://www.toymoban.com/news/detail-790855.html

到了这里,关于多轮对话(一):概述(意图识别+槽填充)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 走近人工智能|NLP的语言革命

    前言: 自然语言处理(NLP)是指使用计算机处理和理解人类语言的技术。 自然语言处理(Natural Language Processing,NLP)是人工智能领域中一门研究如何让计算机理解和处理人类语言的技术。 它的目标是使计算机能够读取、理解、解释和生成自然语言文本,从而实现与人类的自

    2024年02月08日
    浏览(33)
  • 发现最优秀的人工智能对话体验

    Tomchat:点击传送 支持gpt4 / gpt-3.5 / claude 支持 AI绘画 每天十次免费使用机会 无需魔法 wuguokai 这个网站是设计模式老师推荐的,不强制用户。并且满足毫秒级响应。 https://chat.wuguokai.cn AIDuTu 无需登录,直接使用,挺好的 https://chat.jubianxingqiu.com/

    2024年02月15日
    浏览(28)
  • 对话人工智能 |新时代AI如何“落地“

    前言: Comate代码助手推出,现场生成了贪吃蛇游戏,我们距离AI自动编程还有多远? 在过去的几十年里,AI的发展取得了显著的进展,尤其是在机器学习和深度学习领域。然而,将AI应用于自动编程这一复杂任务依然面临着挑战。 AI自动编程的实现需要解决多个难题。首先,

    2024年02月08日
    浏览(44)
  • 【探索人工智能】我与讯飞星火认知大模型的对话

    这是讯飞星火认知大模型的地址: [讯飞星火认知大模型](https://xinghuo.xfyun.cn/desk) 我们必须清晰的认知到作为大模型其实是没有一个确切的\\\"发展历程\\\"。 那么它是怎么进行技术的更新,怎么能回答你详细的问题呢? 它的知识和能力是基于大量文本数据进行训练的,这些数据来

    2024年02月16日
    浏览(43)
  • 【人工智能业务概述】—人工智能的技术框架

    人工智能的技术框架按照产业生态通常可以划分为基础层、技术层、应用层三大板块。其中,基础层提供了支撑人工智能应用的基础设施和技术,包括存储和处理大规模数据的能力,以及高性能的计算和通信基础设施;技术层提供了各种人工智能技术和算法,用于处理和分析

    2024年02月02日
    浏览(37)
  • ChatGPT人工智能对话系统源码 附完整的搭建教程

    人工智能技术的快速发展,对话系统成为了人们与计算机交互的重要方式之一。ChatGPT是一种基于深度学习的大型语言模型,其源码系统可以用于构建各种自然语言处理应用,如聊天机器人、智能客服、语音助手等。 以下是部分代码示例: 系统特色功能一览:     1.语言理解

    2024年01月22日
    浏览(34)
  • 人工智能时代,如何借助新技术实现突破?| 圆桌对话

    继上篇介绍完干货满满的议题分享后,更精彩的圆桌论坛衔尾相随。本次圆桌对话以“人工智能时代,如何借助新技术实现突破?”为主题,由华锐技术机构市场团队负责人-高媛主持,邀请了AMD中国区数据中心事业部资深架构师-梁朝军,火山引擎证券行业解决方案负责人-陈

    2024年02月19日
    浏览(33)
  • 发现最优秀的类似chatgpt的人工智能对话体验

    Tomchat:点击传送 支持gpt4 / gpt-3.5 / claude 支持 AI绘画 每天十次免费使用机会 无需魔法 wuguokai 这个网站是设计模式老师推荐的,不强制用户。并且满足毫秒级响应。 https://chat.wuguokai.cn AIDuTu 无需登录,直接使用,挺好的 https://chat.jubianxingqiu.com/

    2024年02月14日
    浏览(33)
  • 人工智能学习与实训笔记(五):神经网络之NLP进阶—词向量模型及NLP实战

    人工智能专栏文章汇总:人工智能学习专栏文章汇总-CSDN博客 本篇目录 一、词向量处理 1.01 词袋模型(Bag-of-words model) 1.02 simtext 1.03 百度飞桨(paddlenlp.embeddings) 1.04 百度千帆SDK(qianfan.Embedding)  1.2 SentenceTransformers(资源国内可访问) 1.2.1 句向量生成(SentenceTransformer)

    2024年02月19日
    浏览(31)
  • 人工智能与大数据面试指南——自然语言处理(NLP)

    分类目录:《人工智能与大数据面试指南》总目录 《人工智能与大数据面试指南》系列下的内容会 持续更新 ,有需要的读者可以 收藏 文章,以及时获取文章的最新内容。 自然语言处理(NLP)领域有哪些常见任务? 基础任务 中文分词:将一串连续的字符构成的句子分割成

    2024年02月11日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包