【《聊天机器人的相关技术介绍综述》4200字】_第1页
【《聊天机器人的相关技术介绍综述》4200字】_第2页
【《聊天机器人的相关技术介绍综述》4200字】_第3页
【《聊天机器人的相关技术介绍综述》4200字】_第4页
【《聊天机器人的相关技术介绍综述》4200字】_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

聊天机器人的相关技术介绍综述目录TOC\o"1-3"\h\u25380聊天机器人的相关技术介绍综述 1115571.1聊天机器人的关键技术 193801.2中文处理相关技术 2258151.2.1中文分词 2313891.2.2句法分析 258491.2.3计算短文本相似度 3182811.2.4词义消岐 531021.2.5停用词的删除与结构性词语 61.1聊天机器人的关键技术聊天机器人系统结构如图1.1所示,共有四个模块语音模块、语言理解模块、对话模块、语言生成模块。图2-1chatbot的系统框架语音合成模块和语音识别模块这两个模块不在本文讨论的范围内,这里就不再详述了。借助自NLP技术,自然语言处理模块获取到用户的想法后,通过数据的方式表达出来,转化为具体的语义数据,然后交给下一个对话管理模块。由于多个模块之间可能存在作业冲突,操作会话管理模块必须提前做好准备,并保留会话管理模块来负责用户和聊天机器人之间的聊天过程。[7]本文研究的重点是自然语言生成模块,该模块利用多种自然语言生成技术对自然语言进行响应。目前,检索对话和生成对话是两种主要模式。以下部分将深入讨论自然语言解释、对话控制和自然语言生成模块。(1)自然语言理解模块将用户的意思以数据的形式转换为具体的语义数据。自然语言理解模块最关键的目的是将用户的语言转换成计算机可以理解的数据[8]。(2)对话管理模块负责组织自然语言解释和生成模块的工作,其关键技术有对话补偿、强化学习和对话状态识别等。(3)自然语言生成模块主要负责生成用户回复。聊天机器人通常使用生成方法或基于检索的方法部署。生成模型可以引起更合适的反应,否则在语料库中会被忽略。当前Seq2Seq对话系统的一个最困难的问题是,它们经常生成不相关或不清楚的、通用的、几乎无用的答案。这些回答通常包括一些无意义的短语,比如“我不知道”或“我很好”。另一方面,检索模型有大量的数据和平滑的响应。消息-响应匹配是高级检索过程的秘密,匹配算法必须在消息和应答之间架起语义距离的桥梁。各种深度学习模型的应用,如RNN模型、LSTM模型、注意力模型等,是新一代技术的核心。1.2中文处理相关技术1.2.1中文分词中文分词是将中文文本序列分割为若干独立词语的技术。把多个独立的字序列按一定规则分成一组的过程称为分词过程[9]。当前较为成熟的分词技术主要有三种,下面对这三种分词技术进行详细介绍。(1)基于字符串匹配的分词技术也称为机械分词技术,它根据某些规则将用户输入的待处理文本与一个通常规模很大的字典进行对比,假设在字典中找到了与字典相同的文本,那么就可以根据此规则对该文本进行分词。(2)语法和语义子系统以及分词子系统构成了基于理解的分词框架。基于综合的分词方案的目的是消除歧义,利用原语料库文本中的语法和语义知识解释句法,即模拟人脑思维。然而,中文信息有些复杂和难以理解,它不能完美地翻译成机器的数据格式[10]。(3)利用统计分词系统,利用训练模型和学习原理实现汉语不规则序列的分词。如最大似然分词和最大熵分词是目前应用最广泛的两种分词技术[11]。随着汉语语料库的建立和深度学习的研究和发展,越来越多的学者选择基于统计的汉语分词方法。1.2.2句法分析句子分析是与自然语言处理相关的核心基础技术之一,句子分析可分为句法结构分析和依赖分析两种[12]。在对句子进行句法分析时,确定同时划分句子中的“主谓宾定状补”,如下图1.2所示,确定每两个词之间进行语法关系。从图1.2里面可以看出,“吃”与“粉”形成动态关系,其中吃是v(动词)表示动作,粉是n(名词),“一”是表示数量的量词,ATT表示动态关系,在对句子进行分析之后,可以回答诸如“我吃了什么?”,“我吃了多少碗粉?”这样的问题,让聊天机器人能够更聪明地与人交谈。把句法结构分析和依赖分析结合起来,可以理解用户输入语句的依赖关系和语义[13]。一是让电脑能够理解句子的意思,从而找到到最完美的答案,第二个是如果互相依赖在此之前已经生成,分析它们的语义,还可以通过可信度匹配也能生成聊天回答。

图2-2句子依存关系图句子结构分析的目的在于判断一篇文章是否符合相应语言的语法要求,然后根据语法规范来分析一篇文章,首先要判断一篇文章是否属于某一语言范畴,其次,进行词义消歧。第三,分析文章的句法结构、语境和句法关系。作为一种强大的句法分析工具,它通常需要解决两个问题:一是句法形式的表达,二是词条信息的描述[14]。由于通用依赖树的出现,依赖解析的研究重点已经从通用依赖树转向更复杂的数据集标注。数据集的标注结果可用于体态识别或词性标注,并可作为不同任务的评价数据,因此得到广泛应用;第二,句法结构分析的语法集由固定语法集和僵化语法集组成,固定语法集和僵化语法集比较多;第三,依赖解析树易于标注,具有较高的解析精度。现有的依赖分析方法主要有PCFG、词法PCFG、基于转换的依赖分析等主流的依赖分析方法(基于贪婪决策行为的装配语法树)。1.2.3计算短文本相似度就当前而言,短文本相似度计算是NLP技术中的核心技术,即如何表达两个或多个短文本之间的相似度,即短文本之间有很高的相似度。语篇之间语义和语法结构的相似性越高,反之就越低[15]。目前,短文本相似度计算主要采用三种算法,第一是基于语料库的TF-IDF算法、第二是最小编辑距离算法,第三是短文本相似度计算算法。目前业界研究语料库的短文本相似度时,多数都是选用上下文的统计描述方法,因为上下文可以提供充分的语义信息更好的为词语的定义。词向量空间模型(VSM)是一种广泛应用的基于统计的词相似度计算方法。算法复杂度较低,模型易于实现。(1)VSM提前选取一组特征词,然后计算特征词集和每个词之间的关联(通常是根据在实际大型语料库中上下文中出现的频率来衡量)。所以每一个词都有一个相同的词向量的维度,然后多个词之间的相似度就由这个公式得到,如公式(2-1)所示。(2-1)NDG的中文翻译为,谷歌的标准距离越大代表越相似,范围从0到1。在这些词中,(x)、(y)(分别表示含有单词x,y的网页数量)、((x,y)、(n,y)(同时包含单词x,y)和(N,google引用的网页总数)。距离法用于计算文本序列的相似性,其原理如下:目前有两个短文本序列A和B,其中B是参考序列,执行以下步骤:序列A删除单词;序列A增加单词;序列A替换单词。循环执行,序列A完全转换为序列B,且中间的操作次数记为E-D(A,B)。一个二维数组E-D[i][j]是表示转换为短文本序列B的前j个字符由短文本序列A的前i个单词转换而成所需要的最小操作数。因此,E-D[i][j]的递推式如下:(2-2)(2-3)编辑距离越小,得到更加相似的两个字符串。相反,它越不一样。(3)词频-反向文件频率,即(TermFrequency-InverseDocumentFrequency)。termFrequency指的是某个单词的词频[16]。与此同时,为了避免对长文档的倾斜,最后的数字通常会归一化,也就是说,最后的数字在0到1之间。在公式1.4中,TF-IDF算法解决了哪一个词最具代表性的问题,并给出了计算公式。(2-4)Tw表示文件中的总字数,s

(2-5)c指文集中的文件数,c指含有w词语的文件数量。在中文里经常使用回复,如“收到”、“嗨”等,每一篇文章中都可能含有他们,而且更经常出现在每一篇文章中,这时TF-IDF就变小了。所以,TF-IDF会删除掉常用词,留下具有更高重要性的词。TF−IDF=TF∗IDF(2-6)1.2.4词义消岐在NLP技术中,消除词语的歧义是一个需要解决的重要问题。与其他语言相比,一词多义是汉语难以理解的原因之一。由于汉语言传承了中华文明上下500]多年,词义可以是经常变化的。随着时间的推移,单词在不同的上下文中会有不同的含义[17]。例如,在汉语中,“负担”这个词根据上下文有不同的含义。目前使用的深度学习消歧算法有两种:有监督的词义消歧和无监督的词义消歧。下面的部分将深入讨论这两种算法。(1)有一些技术用于监督词义消歧。利用共享知识的词义消歧过程,可以将两种语言关联起来,并采用基于大量双语语料库的教学模式进行词义消歧。基于贝叶斯分类器的消歧工具。下面的语境与条件机会、语境和一些多义解释有关。两者都基于一个前提,即一个随机变量持有另一个随机变量的信息。假设两个随机变量Y和X的概率分别为p(Y),P(X),联合分布概率的代数式为p(X,Y),那么计算公式为:Ix;y不断重复迭代训练的语料中,I(X;Y)继续减少,而I(X;Y)不再减少小时结束训练的次数。在机器翻译系统中,基于互信息的词义消歧是最有效的方法。不管是两种不同语言语料的局限性,还是多种语言语料能够识别歧义的情况,都是有限的。采用Bayes分类器词义消岐方法的主要思想是,在词义消岐的应用中,所有多义词的语义都与其所处的环境和所处的语境有关,贝叶斯定理用于估计某些情况下发生事件的可能性。语境和意义一般都是实现词义歧义的环境和语境。其根本原因在于中文多义词的意义都与该词所处的环境和所处的语境有关[18]。多义语义确定方法是根据词义语料库计算该多义语料库在当前环境和当前语境下的所有语义项目的概率,将概率最高的语义项目视为该多义语料库在当前环境和当前语境下的意义,假设语境记c,语义记s,多义词记w,而多义词记w在语境c下具有语义s概率p(s|c)。psc在p(s|c)中,语义的最大似然是S,而P(c)是定值的,此计算只需要考虑分子的最大值,因为上下文c由几个词v组成,所以可以将p(c|s)视为一个p(v|s),也就是说,要求最大的p(s|c),即求一个p(v|s)的最大值,而当文本数据很多时,常采用极大似然概率法来求p(s)。(2)无请注意解读单词含义的技巧。无监督词义识别是可行的,因为无监督词义消歧困难,且词义不需要标注。贝叶斯分类器常用于无监督词义消歧。然而,与基于贝叶斯的监督词义消歧方法不同的是,该方法只对训练语料的一部分进行标注。参数在训练过程中随机初始化,然后对参数所用的概率值进行重新估计,常用的算法是最大期望法,这里的参数估计不是基于有标注的训练预料,而是先随机初始化参数p(v|s),然后重新估计这个概率值,也就是对w的每一个上下文c计算p(c|s),这样可以得到真实数据的似然值,回过来再重新估计p(v

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论