一个餐馆推荐机器人的设计与实现

 2022-07-15 14:23:50

论文总字数:31956字

摘 要

近年来机器学习领域有了飞速的发展,与之相关的领域也都因此有了长足进步。Natural Language Processing(自然语言处理,简称NLP)作为与机器学习算法有着紧密联系的领域,也因此有了很大的发展。但截至目前,市场上仍很少有对其最近的发展进行应用的实例。故本论文将应用近期NLP领域新的发展与成果,构建一个可以跟踪对话状态的向用户推荐餐馆的对话机器人,以此来探究NLP领域新的发展的实际应用效果,也为之后的程序开发人员构建相关应用打开思路。

本论文的主要工作可以概括为以下四点:

1. 数据收集

编写爬虫收集餐馆数据和相关领域的文本数据,分别用于向用户进行推荐和训练Rasa NLU(后面将会进行详细介绍)后端模型。

2. 训练Rasa NLU

将第一步得到的相关领域的文本数据用于训练Rasa NLU的MITIE后端模型。而后人工编写并标注训练数据,完成整个Rasa NLU的训练。

3. 训练Rasa Core,并为其编写相关的回复模板及动作代码。

人工编写加互动学习生成stories.md训练数据文件,用以训练Rasa Core。规定Rasa NLU与Rasa Core之间的接口,并为Rasa Core的接口编写回复模板,以及动作代码(Python 3, MySQL)。

4. 将Rasa NLU及Rasa Core组合,构成聊天机器人,并进行互动学习。

将第二第三步训练好的Rasa NLU及Rasa Core组合,运行聊天机器人,通过人机互动学习,丰富stories.md训练数据,不断提高聊天机器人表现。

关键词:对话机器人,自然语言理解,Rasa,机器学习

Abstract

In recent years, there has been rapid development in the field of machine learning, and related fields have also made great progress because of it. Natural Language Processing (NLP) is a field closely related to machine learning algorithms, and has therefore been greatly developed. However, for now, there are still few examples of the application of its recent development in the market. Therefore, this paper will apply new developments and achievements in the recent NLP field to build a dialogue robot that can track the dialogue state and recommend restaurants to users, in order to explore the practical application effects of new developments in the field of NLP, and also for subsequent program developers to build related applications.

The main work of this paper can be summarized to 4 points: data collection, Rasa NLU training, Rasa Core training, Rasa NLU and Rasa Core combination.

Keywords: Chatbot, Natural Language Understanding, Rasa, Machine Learning

目录

摘要-----------------------------------------------------------------------------------------------3

Abstract-------------------------------------------------------------------------------------------3

第一章 引言--------------------------------------------------------------------------------------5

1.1 研究背景与意义-------------------------------------------------------------------------5

1.2 相关研究现状----------------------------------------------------------------------------6

1.3 论文主要工作内容----------------------------------------------------------------------7

1.3.1 模型设计-----------------------------------------------------------------------------7

1.3.2 具体实现步骤-----------------------------------------------------------------------7

1.4 论文组织结构----------------------------------------------------------------------------8

第二章 相关理论与技术-----------------------------------------------------------------------9

2.1 使用的技术框架与工具----------------------------------------------------------------9

2.2 相关技术及工具简介-------------------------------------------------------------------9

2.2.1 Selenium与Requests---------------------------------------------------------------9

2.2.2 jieba-----------------------------------------------------------------------------------9

2.2.3 Rasa NLU---------------------------------------------------------------------------10

2.2.4 Rasa Core---------------------------------------------------------------------------11

2.3 训练数据示例---------------------------------------------------------------------------12

2.4 互动学习---------------------------------------------------------------------------------14

2.5 对话流程可视化------------------------------------------------------------------------16

第三章 需求分析-------------------------------------------------------------------------------16

3.1 功能需求分析----------------------------------------------------------------------------16

3.2 非功能需求分析-------------------------------------------------------------------------17

3.3 本章小结----------------------------------------------------------------------------------17

第四章 总体设计与详细设计---------------------------------------------------------------17

4.1 总体设计----------------------------------------------------------------------------------17

4.2 详细设计----------------------------------------------------------------------------------18

4.2.1 Rasa NLU与Rasa Core间接口设计---------------------------------------------18

4.2.2 对话状态转换路径设计-------------------------------------------------------------21

4.3 本章小结----------------------------------------------------------------------------------23

第五章 实现与测试----------------------------------------------------------------------------24

5.1 开发工具和环境-------------------------------------------------------------------------24

5.2 Rasa Core部分action代码分析-------------------------------------------------------24

5.3 测试----------------------------------------------------------------------------------------25

5.3.1 功能测试-------------------------------------------------------------------------------25

5.3.2 非功能测试----------------------------------------------------------------------------28

5.4 本章小结----------------------------------------------------------------------------------28

第六章 总结与展望----------------------------------------------------------------------------29

6.1 总结----------------------------------------------------------------------------------------29

6.2 展望----------------------------------------------------------------------------------------29

致谢----------------------------------------------------------------------------------------------30

参考文献----------------------------------------------------------------------------------------31

第一章 引言

剩余内容已隐藏,请支付后下载全文,论文总字数:31956字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;