【对话系统】对话系统核心技术概要

article/2025/10/19 16:21:21

概述

人机交互备受学术界的关注,人机对话是人机交互的核心。

对话系统是模拟人与人交流的计算机系统。

对话系统有很多分类方法。按照应用场景的不同,可分为开放域(闲聊式)和封闭域(检索式、知识问答式、任务式)

闲聊式对话系统的关键技术

代表:微软小冰

闲聊式对话系统是一种针对开放域的生成式对话系统,目前主流的技术是seq2seq+attention。

现有的API:微软小冰、图灵、腾讯、青云客等;成熟的开源项目:chatterBot。

这类对话系统的难点在于聊天属于开放域,没有标准答案,评估难,需依赖人工评定;对话需上下文,对话的内容中隐含了说话人的属性。

 

检索式对话系统的关键技术

代表:智能客服 阿里小蜜

主要思想:检索出与当前输入最相近的FAQ库语句,如下图。

1)如何表征文本?

① 基于频次的词袋模型

优:简单易用 缺点:未考虑次序,会丢失重要信息

② TF-IDF

优:简单易用 缺点:无上下文重要信息

③ 句向量均值模型、IDF加权平均、SIF加权平均、基于幂均值

④ 算法:word2vec、Glove、FastText

⑤ skip-Thought(seq2seq,通过当前句预测文章当前句的上一句和下一句)、Quick-Thought(将skip-Thought的预测问题转换为分类问题)

2)如何计算文本间距离?

WMD 词移距离(来源于EMD 运输问题),文档1转化为文档2付出的总代价,词与词之间的移动代价由语义距离决定。

优:无监督、无须调参、有全局最优

缺:无语序信息、否定词能力偏差

3)如何快速计算?(粗排)

BOW、TF-IDF、编辑距离(删除、加入、替代)、倒排列表、BM25

 

BM25:每个单词的权重、搜索query中每个单词与文档d之间的相关性、单词与query之间的相关性

 

知识回答式对话系统的关键技术

代表:基于知识图谱、知识库(珠峰有多高、昊然的新电影)

示例:基于医疗知识图谱的问答系统

问答类型定义流程:问句输入、意图解析、关键信息解析、查询语句、知识图谱查询、结构化答案、自然语言答案

任务式对话系统的关键技术

代表:订票系统(多轮对话)

主要实现方式:管道和端到端

pipeline四部分:

NLU(自然语言理解)识别用户意图 词槽填充

DST(对话状态跟踪)保存更新对话状态(历史信息、当前词槽填充、数据库等)

DPL(对话策略学习)基于当前的对话状态,用户输入做出合适的反馈

NLG(自然语言生成)反馈转化成自然语言

词槽:用户话中的关键词(平级槽、依赖槽)

接口槽:用户画像

 

 


http://chatgpt.dhexx.cn/article/WfZvhp1J.shtml

相关文章

UNITY 对话系统

1. 准备工作 创建一个画布(Canvas),画布中创建一个面板(Panel),面板中放个文本框(TEXT)和两个按钮(Button)(一个用于直接关闭,另一个…

最新对话系统综述

前言 首先介绍一篇对话系统领域综述最新的paper,写的非常好 2021年南洋理工大学发表的论文: https://arxiv.org/pdf/2105.04387.pdf 第一章:简要介绍对话系统和深度学习。 第二章:讨论现代对话系统中流行的神经模型及其相关工…

前沿重器[25] | 聊聊对话系统:多轮对话

前沿重器 栏目主要给大家分享各种大厂、顶会的论文和分享,从中抽取关键精华的部分和大家分享,和大家一起把握前沿技术。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。 近期,我再次总结了我的历史文章…

智能对话系统之多轮对话

序言 以一周前的一条微博作为开始。一周前我讲:相对的,自然语言解析技术已经逐渐不再成为各家广义智能助理产品的核心竞争力,识别用户意图之后所提供的服务开始成为对话机器人差异化的核心。 百度:对话系统的组成 对于一个对话系…

对话系统 | (1) 任务导向型对话系统 -- 对话管理模型研究最新进展

原文链接 作者丨戴音培、虞晖华、蒋溢轩、唐呈光、李永彬、孙健 单位丨阿里巴巴-达摩院-小蜜Conversational AI团队,康奈尔大学 1. 对话管理模型背景 从人工智能研究的初期开始,人们就致力于开发高度智能化的人机对话系统。艾伦图灵(Alan …

对话系统笔记

原文链接:https://www.jiqizhixin.com/articles/2020-01-31-7 对话系统一般分为两种:任务型对话系统和闲聊型对话系统。本文主要讨论前者。 任务型对话系统,也称目标导向型对话系统,多用于垂直领域业务助理系统,如微…

深入浅出对话系统——任务型对话系统技术框架

任务型对话系统架构 比如,这是一个任务型订票系统的对话例子。 如果要我们实现一个这样的对话系统,其中有三个最大的难点:理解用户输入、记住对话历史信息、知道要问什么。 首先是要能理解用户的输入,知道用户想什么&#xff1b…

一文读懂智能对话系统

来源:机器学习算法全栈工程师 作者:蒙康 编辑:王抒伟 本文共6050字,建议阅读10分钟。本文带大家理解智能对话系统的研究方法以及未来趋势。 笔者在最近的研究中发现了一篇非常好的有关对话系统的论文,《A Survey on Di…

对话系统 | (8) 任务型对话系统概述

本篇博客主要参考/节选中科院自动化所王唯康博士的博士论文《任务型对话系统中对话管理方法研究》。 文章目录 1. 概述2. 基于管道的任务型对话系统2.1 语言理解模块2.2 对话管理模块2.3 语言生成模块 3. 端到端的任务型对话系统3.1 基于检索的任务型对话系统3.2 基于生成的任务…

对话系统 | (4) 任务型对话系统基础

本篇博客内容主要来自第十四届中国中文信息学会暑期学校暨中国中文信息学会《前沿技术讲习班》— 张伟男、车万翔《任务型对话系统》 PPT下载链接 文章目录 1. 任务型对话系统概述2. 任务型对话系统关键技术自然语言理解对话管理对话状态追踪对话策略优化 自然语言生成端到端…

前沿重器[21] | 聊聊对话系统:概述

前沿重器 栏目主要给大家分享各种大厂、顶会的论文和分享,从中抽取关键精华的部分和大家分享,和大家一起把握前沿技术。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。 近期,我再次总结了我的历史文章…

Xenko C#开源游戏引擎

Xenko是一款用于渲染和 VR 的开源 C# 游戏引擎。该引擎具有高度模块化,旨在为游戏制作者提供更大的开发灵活性。Xenko 附带一个编辑器,允许您以直观和直观的方式创建和管理游戏或应用程序的内容。 官方网站:https://xenko.com/ g…

开源游戏引擎整合

2D: Allegro.cc - Main http://www.allegro.cc/ 老牌子了,和SDL同时是很经典两个EG开发组件,最近貌似在和PY进行联合? ClanLib - ClanLib Game SDK http://www.clanlib.org/ CLANLIB是以前听过最复杂最丰富的SDK,看看链接 http://…

开源游戏java引擎_基于Java的开源3D游戏引擎jMonkeyEngine

jMonkeyEngine简介 jMonkeyEngine是一款纯Java语言编写的游戏引擎,继承了Java应用跨平台的特性,而且是开放源代码的,遵循BSD开源协议,BSD开源协议用一句简单的话概括就是你可以用它做任何你想做的事情而不必担心版权问题。 这款游戏引擎在商业游戏中使用的不多,但是笔者觉…

<2021SC@SDUSC> 开源游戏引擎 Overload 代码模块分析 之 OvTools(七)—— 终篇总结

2021SCSDUSC 开源游戏引擎 Overload 代码模块分析 之 OvTools(七)—— 终篇总结 目录 前言回顾1、Eventing2、Filesystem3、Time4、Utils 总结下一个计划 前言 本篇是开源游戏引擎 Overload 模块 OvTools 的最后一篇了。本篇,笔者将对 OvToo…

<2021SC@SDUSC> 开源游戏引擎 Overload 代码模块分析 之 OvGame (一)—— 概况与 .rc 文件

2021SCSDUSC 开源游戏引擎 Overload 代码模块分析 之 OvGame(一)—— 概况与 .rc 文件 目录 前言OvGame 模块大纲.rc 文件 计划 前言 上一篇,笔者对 Overload 的 OvTools 分析总结完毕,想了解的可前往总结与链接集合自选查看。而…

开源游戏引擎详解

2D: Allegro.cc - Main http://www.allegro.cc/ 老牌子了,和SDL同时是很经典两个EG开发组件,最近貌似在和PY进行联合? ClanLib - ClanLib Game SDK http://www.clanlib.org/ CLANLIB是以前听过最复杂最丰富的SDK,看看链接 http://…

<2021SC@SDUSC> 开源游戏引擎 Overload 代码模块分析 之 OvGame(八)—— 终篇总结

2021SCSDUSC 开源游戏引擎 Overload 代码模块分析 之 OvGame(八)—— 终篇总结 目录 前言回顾1、.rc2、Utils3、Debug4、Core5、Main.cpp 总结 前言 本篇是开源游戏引擎 Overload 模块 OvGame 的最后一篇了。本篇,笔者将对 OvGame 做一个简单…

WickedEngine 开源游戏引擎

GitHub:https://github.com/turanszkij/WickedEngine WordEngEnter是开源跨平台C游戏引擎,支持DX12和Vulkan渲染器的光线跟踪和路径跟踪。Wicked engine既可以作为构建自己游戏引擎的底层框架,也可以作为自己的完全功能引擎,它增强…

Storm-Engine 基于 C++ 的开源游戏引擎

Storm Engine 是《海狗》和《加勒比海盗》等游戏背后的游戏引擎,该游戏引擎已在 GPLv3 许可下开源。源代码仅包括游戏引擎,并不包括上述游戏的源代码 支持的游戏 海狗加勒比海盗海盗时代 构建项目 需要安装 Conan 并将其添加到%PATH%环境变量中。此外…