基于History Attention的LSTM对话管理算法及其应用之软件工程分析

论文价格:0元/篇 论文用途:仅供参考 编辑:论文网 点击次数:0
论文字数:**** 论文编号:lw202329934 日期:2023-07-22 来源:论文网
本文是一篇软件工程论文,本文利用 Word2Vec 模型对对话状态进行预训练,将用户意图和系统动作映射到同一语义空间,得到它们的特征向量,同时借鉴 REDP 算法,设计出基于 History Attention 的 LSTM 对话策略模型,经过多次对比试验,模型改进,最终的模型在测试数据上表现不俗,基本达到了与 REDP 算法的同 一测试水平。

第 1 章 绪论

1.1 前言
随着计算机科学技术的发展,人与计算机的交互方式也发生着变化,从通过键盘输入命令行到使用鼠标点击图标,再到手指直接操控屏幕,人机交互正变得越来越便捷。毋庸置疑,与人交流最自然、方便的媒介是自然语言,设计一种采用语言对话方式的人机交互界面,将极大改善人在使用计算机过程中的体验,使计算机更高效更人性化地为用户服务。口语对话系统便提供了这样的交互界面,并受到了研究人员的广泛关注。

早在计算机出现伊始,人们就幻想与机器进行自然地交流。人机对话系统可以追溯到 20 世纪 50 年代,图灵在其论文《计算机器与智能》中提出了著名的“图灵测试”[1],在“图灵测试”中,人类测试者与一个未知的对象展开对话,他通过对话内容来判断这个对象是人还是机器,如果机器骗过了人类,让他做出了错误的判断,那么就证明这台机器具有智能。在这里,图灵把与人进行语言交流的能力,看作人类智能的一个评价指标,可见这种能力在当时科学家心目的地位。实际上,为设计一个真正的对话系统,当时的研究人员也付出了种种努力。ELIZA就是一个最早的人机对话系统,它采用人工构建的正则表达完成文字匹配,模仿心理医生的用语习惯,与病人耐心地对答,来缓解他们的痛苦和焦虑。之后,研究领域中又出现了几个不同应用场景下的对话系统,然而囿于技术条件的限制,尤其是语音识别技术发展的滞后,对话系统的研究没有得到进一步发展。到了 20世纪 80 年代,基于统计方法的语音识别技术大大提升了识别准确率,加上早期科研人员在自然语言处理领域积累的经验,口语对话系统的研究随之兴起。90 年代,大量高校和研究机构开始涉足该领域,并推出了各自的口语对话系统。

..............................

1.2 口语对话系统的组成模块
根据对话方式的不同,可以将对话系统分为口语对话系统和文本对话系统。现在普遍认为,二者的区别仅在于前者比后者增加了语音处理部分,而其余的组成部分则完全相同。从功能上来看,对话系统可分为聊天机器人和任务导向型对话系统,其中,聊天机器人是广义的对话系统,是指能在任何语境下,针对任何主题与人交流的机器人,它的实现往往依托于大量的问答对和信息检索能力,但由于设计上的难度,导致最终的对话效果一般;而任务导向型对话系统规定了对话发生的场景,缩小了对话内容的范围,从而降低理解自然语言的难度,更容易实现预设的目标。由于技术局限以及历史原因,口语对话系统往往属于任务导向型对话系统,因此,本文所述的口语对话系统与任务导向型对话系统概念等同。

口语对话系统的基本框架如图 1.1 所示,它包括自动语音识别,自然语言理解,对话管理,自然语言生成和语音合成等 5 个模块,以下分别对各个功能模块进行介绍。
..............................

第 2 章 口语对话系统的理论基础和开发框架

2.1 口语对话系统的关键技术
口语对话系统是一个复杂的应用系统,它依托着自然语言处理领域中的关键技术,如单词层面的自动分词、命名实体识别与词性标注,句子层面的句法分析、语法分析等技术。在语音识别技术突飞猛进之前,自然语言处理领域的基础技术就已经在信息检索和问答系统中得到了深入而广泛的研究,语音识别技术获得突破后,尽管口语对话系统渐渐成为一个新的研究领域,但它的发展依然深受问答系统相关技术的影响,直至今日,二者大有相互融合之势。与问答系统过度依赖信息检索技术不同,口语对话系统有着自己特有的技术支撑,其中最具代表性的就是对话管理。对话管理技术的完善,会使口语对话系统变得更加成熟,自然语言理解这个基本问题也将得到进一步解决。下面主要针对自然语言理解模块和对话管理模块所涉及到的基础技术进行探讨。

2.1.1 自然语言理解模块
如前所述,自然语言理解模块的作用是将用户的文字内容转换成 IF 中间表示,提取出用户的意图,这基本属于文本分类问题。下面首先介绍 IF 中间表示和语义组块这两个基本概念。
1)IF 中间表示:
If 表达式包括说话者、对话动作、概念和具体参数对四个部分[10]。说话者表示说话人的身份,口语对话系统中只有两类说话者,分别为用户说话者和系统说话者;对话动作代表语句的各种意图,比如“提供信息、申请查询”等意图;概念显示了句子涉及到的主要领域,如违章、记分、车辆等概念,概念与概念间可以组合成复杂的概念,如“违章+车辆“表示“违章车辆”;具体参数表示句子中包含的具体信息。例如车辆类型,车牌号等信息,其中每个参数都有属性值,属性值也有不同类型。

................................

2.2 Rasa 开源对话系统开发框架
Rasa 开源对话系统开发框架是一个成熟的聊天机器人开发平台,许多公司包括医疗公司、汽车生产商在该平台上开发出了令人满意的产品。Rasa 主要由两个部分组成,Rasa NLU 和 Rasa Core,其中,Rasa NLU 相当于口语对话系统中的自然语言理解模块,它可以将用户的输入形式化,转化成用户的意图;rasa core对应于口语对话系统中的对话管理和自然语言生成模块,它主要完成对话状态追踪和实现对话策略,而自然语言生成的功能由基于模板的方法和使用固定话术来 实现。

本文设计的大连交警助手就是在 Rasa 上开发的一个任务导向型的对话系统,它使用了 Rasa NLU 和 Rasa Core 两部分,同时在默认对话策略的基础上进行了改进,加入了神经网络对话策略,显著提升了对话系统的性能。

2.2.1 Rasa nlu Nlu
模块主要识别用户语句的意图,并检测出句子中的实体。Rasa NLU 中的意图就是一种用 IF 中间表示,而实体是 Rasa core 存储模块需要记忆的信息。下面简单介绍意图识别与实体检测的概念,同时对各个组成部分的连接形式进行说明。
1)意图识别
Rasa NLU 将接收到的所有句子划分到已定义的意图类别中。例如,“你好”会被解析为“greet”意图;而句子“b1789b 有没有违章?”对应的意图为:“request_weiz” + “inform_weiz”。
2)实体检测
Rasa NLU 将特定词汇标记为已定义的语义实体。如在“b1789b 有没有违章?”这个句子中,实体检测模块会将“b1789b“标记为 “licence_no”实体。
....................................

第 3 章 语料准备与系统结构设计 .......................... 21
3.1 语料收集、制作与标记 ..................................... 21
3.1.1 基础数据 ................................. 21
3.1.2 人工构造数据 ....................... 21
第 4 章 对话管理算法 ...................... 29
4.1 使用 WORD2VECTOR 对对话向量进行编码 ................................... 30
4.2 对话策略建模 ............................... 31
4.3 本章小结 ................................ 35
第 5 章 实验.................................. 36
5.1 系统性能评价 ................................. 36
5.1.1 自然语言理解模块的评价 ............................. 36
5.1.2 对话管理模块的评价 .................................. 36

第 5 章 实验

5.1 系统性能评价
本文分别对自然语言理解模块和对话管理模块进行评价。Rasa 开发平台为系统提供了两种不同的评价方式,利用测试集或者采用交叉验证的方式,本文选择测试集评价的方式。自然语言理解模块最主要的任务是用户意图识别,因此该模块的评价指标为意图识别准确率,由于 Rasa 在该模块的测试中并没有提供标准的语料,所以本文采用了上述内容中构建的交通领域对话语料。评价对话管理模块的性能,主要是对比不同对话策略的效果,这里使用 Rasa 提供的比较标准的酒店与餐厅领域的对话语料。
本文的自然语言理解模块选取了 Rasa NLU 内置的 MITIE 命名识别模型和Sklearn SVM 线性分类模型,除此之外添加了自定义的 fasttext 分类器,处理这种多分类问题采用的策略是 o2o,增加命名实体的正则表达式验证功能,用正则表达式进行验证,以提高命名实体检测准确率。
..........................

第 6 章 结论与展望

6.1 结论
1、实验结果表明,基于 History Attention 的 LSTM 对话管理算法只需要少量数据就可以实现对话策略,它的对话状态编码能力和任务领域表示能力比普通LSTM 模型要强大。
2、构建出的交通领域对话机器人能基本实现违章查询和记分查询功能,但要应用于实际场景,还需收集更多真实对话语料。
3、本文通过 Word2Vec 模型得到用户意图和系统动作预训练向量,作为神经网络的输入,在普通 LSTM 模型上,预训练向量的使用极大改善了该模型的测试结果。
4、传统认为,基于 POMDP 的对话管理方法是开发对话系统的最优算法,通过本文的介绍,可以看出,神经网络在实现对话策略上同样表现非凡,它要比POMDP 在设计上更加简单。
参考文献(略)
如果您有论文相关需求,可以通过下面的方式联系我们
客服微信:371975100
QQ 909091757 微信 371975100