基于句类模型的人机对话系统研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

上海大学2012 ~2013 学年春季学期研究生课程考试
(小论文)
课程名称:机电一体化专题课程编号: 09SAS9004 论文题目: 基于句类模型的人机对话系统研究
研究生姓名: 学号:
论文评语:
成绩: 任课教师:
评阅日期:
基于句类模型的人机对话系统研究
摘要:我国聊天机器人的研究还处于初步阶段,为了解决目前人机对话系统的智能性较低,对话速度受限等问题,分析了聊天系统技术处于领先地位的IPhone的Siri这款软件的关键技术,并通过学习借鉴其他学者的相关研究,设计了面向日常生活常用话题的机器人回复语句库,通过关键词语的替换扩展出更多的语句,从而更广泛的实现日常生活聊天。

最后分析了几点对现有系统的改进想法,对人机对话未来的发展趋势作出了展望。

关键词:人机对话;聊天机器人;语句库;云技术
the Research of Human-computer Dialogue System
Based on Sentence Category Model
Abstract: Research on China's chat robot is still in the preliminary stage, in order to solve the problems that intelligent human-machine dialogue system is low, the dialogue speed is limited and so on, This paper analyzes the key techniques of IPhon Siri's chat system technology. Then design common topic robot reply statement library for daily life through the research of other scholars ,through the replacement of key words to extend more statements, thus more widely implemented daily chat. Finally proposes several improvements to existing this systems, and the prospect of man-machine dialogue are forecasted.
Key words:Human-computer Dialogue ;chat robot;statement library ;cloud service
1.引言
网络技术的发展给人们的生活方式带来了很大的改变,互联网就给人们提供了一种全新的交流方式与联络工具;并以其人性化、方便快捷、功能强大等优势迅速成为一种主流交流模式,使人们对其产生了很大的依赖性。

在这种环境下,能够实现人机对话的聊天机器人越来越受到人们的关注。

一个理想的人机对话系统其目标是使人机对话的过程像人和人聊天一样自然,在这个过程中实现人机聊天的娱乐性、智能性。

聊天机器人的实现通常是把答句放入语句库中,根据分析的输入语句的结果提取库中的语句作为回答[1],所以语句库的完备性是决定聊天机器人回答贴切与否的一个重要因素。

目前大部分的聊天机器人都是面向特定专业领域的,例如文献2是适用于医疗行业,文献3是应用与英语教学,文献9是应用于飞机旅行信息系统。

而用于日常生活交流的不多,而且通过人机交互实践发现很多聊天机器人经常会答非所问,其主要原因之一就在于语句库不够完备、包含的话题不够丰富。

语句库的构建是一项费时费力的工作,而语句库越大,机器人检索处理的时间越长,时间复杂度越高,进而会影响机器人的实时性,降低人们对机器人的满意度[4]。

因此通过研究国内外比较成熟的人机对话系统,进而提出面向日常生活的聊天系统具有重要意义。

2.国内外人机对话系统研究
2.1 聊天机器人的定义
所谓聊天机器人, 是能够模拟人类思维, 在对自然语言进行识别、分析、判断的基础上, 给以近似人类的回答, 可以与人就某一话题进行交流、讨论的智能程序。

聊天机器人以网络
即时通讯( instant mes2 senger) 软件为平台或者嵌于网页之中, 能够实现人、机之间以自然语言方式进行的远程会话、交流等交互功能[5]。

聊天机器人属于人机交互的一个方面,其目标是研制“能听、能说、能理解人类语言的计算机”。

具有一定的人工智能, 在程序运行时, 可以自主地、独立地、用类似人类的方式与人进行聊天。

2.2 人机对话的发展历史[1]
1950 年, 计算机界先驱阿兰.图灵在一篇里程碑式的论文5 Computing Machinery and Intelligence6中预言: 50 年后, 人们将难以区分与之对话的是计算机还是真人, 并给出了著
名的图灵测试方法,通过自然语言问答的方式, 判断机器是否具备人的智能。

此后, 分布于世界各地的计算机研究人员开始因循不同的方向、途径设计软件, 设法通过图灵测试。

(1)人机对话始于60年代在麻省理工学院(MIT)的Joseph Weizenbaum开发Eliza,它被认为是第一个聊天机器人。

它采用的是基于匹配模式的系统,这种系统模式在后续的几十年中都依旧被普遍使用。

(2)1978,Michael Mauldin是试图将推理引入聊天机器人的第一人,他创造的PET聊天机器人能设想新信息。

除了加入动画和合成语音,有能力探索收集一个虚拟世界的信息(如:网站),并在对话中使用收集的信息。

从这个意义上讲,Mauldin试图打开一条模式匹配方式的出路,从而实现从外部获得知识,而不是象ELIZA那样采用预格式化的数据文档。

Mauldin在1994年还发明了术语——聊天机器人(人工会话实体的同义词)。

(3)聊天机器人历史中另一个重要人物是Richard Wallace,A.L.I.C.E(人工语言互联网计算机实体)的创始人。

他回归到一种纯模式匹配的方法,为具体说明启发式的会话规则,他创造了一个名为AIML(人工智能标记语言)的XML Schema语言。

容易地在一个AIML文档中创建和共享知识,以及把多个AIML文档加载到一起组成一个“更聪明的”机器人。

可以说,在聊天机器人的发展史上众多学者、科学家在基于模式匹配的聊天机器人的工作方面付诸了大量的时间和金钱。

2.3 国内人机对话发展情况
国内的聊天机器人发展近几年来发展也十分迅速,并且取得了长足的进步,例如网络聊天机器人小i、腾讯的小q以及中国移动的飞信助手等,都是目前比较活跃的网络聊天机器人,并且都得到了很好的应用[4]。

以小i聊天机器人为例,它包含有(1)小i聊天室——小i聊天室操作起来非常简单,只要在对话框中输入“chat”命令,即可进入聊天室,根据不同的人的爱好,有六种不同兴趣侧重的聊天室可供大家选择。

(2)娱乐天地——小i可以提供笑话、聊天室、奇闻趣事、电影、电视、歌曲等,为娱乐生活提供不错的帮助和选择。

(3)信息查询等个人助理——小i机器人聪明、智能还体现在它可以随时方便地对天气、火车、公交、城市信息、医院、酒店、手机归属地等信息进行查询;同时还提供强大的个人工具,记事本、计算器、词典等功能。

2.4人机对话典型案例—IPhone手机Siri的分析
随着苹果iphone5的发布,其中的Siri语音助理无疑成为了其中的一大亮点。

作为人工智能技术的一种现实应用,Siri实现了人机对话、信息检索、语音识别等只有在科幻电影里才出现的场景。

Siri是一个语音助理,和Alice等聊天机器人类似,是一个可以实现和人交流程序。

从技术角度来看,Alice采用一种叫做人工智能标记语言(AIML)的语言,来组织自己的语料数据。

通过大量的预制模版,实现对用户问题的作答。

Siri和Alice的机制基本相同,首先会根据用户输入的信息在数据库里选择匹配的内容,然后经过一定算法处理以后返回给用
户。

这里主要涉及以下技术:语音识别技术,负责将语音转化为文本;数据库,负责组织一定形式的数据,便于机器人提取知识;对于Siri来说,它的数据库并不在本地,而是分布式的云端,通过云计算技术(以google为代表的网页搜索技术;②以 Wolfram Alpha 为代表的知识搜索技术;③以Wikipedia 为代表的知识库技术(包括其他百科,如电影百科等);④以Yelp 为代表的问答以及推荐技术。

),实现数据的整合和提取。

Siri会结合上下文结构去理解,它还会从人类语言史的角度出发,利用人工智能系统去分析,并在绝大多数情况下领会你的意思。

3.基于句类模型的人机对话系统的设计与实现
基于句类模型的人机对话系统的设计主要是参考文献1和文献4,是一个验证性试验。

文献1的设计思路是“逐级匹配”的思想,即根据问题中的关键单词和句子到库中寻找匹配的,如果找不到就找退而求其次,这种方法可能会找到几个相关的回答,文献1的做法是随机选择一个进行回答而没有选择最优的。

文献4的设计思路是“句型分类和逐级匹配”相结合的思想,即首先将日常生活用于根据情景进行分类建立语句库,然后将语句库的语句分成日常用语、规则语句、后备语句三个等级,根据问题逐级匹配。

以上分析在实际设计实现过程中都要尽量考虑。

总体设计思路如图1所示:
图1 总体设计思路
Fig.1the overall design ideas
3.1相关概念的确定
1句类模型
人工智能一个不可或缺的环节就是自然语言处理[6],在自然语言的表述和处理模式方面,源于印欧语系的语法学和句法分析一直居于主导地位[7]。

处理的内容主要包括分词和词性标注等,但是分词的准确性有待提高,并且分词的错误会直接影响后面分析的准确性。

句法分析一般就是分析句子成分或者是句子结构,例如动宾还是主谓,但是分析准确度仍然受限。

不同于根据句法结构或语义结构进行自然语言分析的方法,本研究在构建聊天机器人语句库时采用句类进行句子分析。

根据句子的表达用途以及句子传达信息时的主题情形把句子分别分成了9类3级,本研究结合日常生活中聊天机器人的实际,把句子分成9类:叙述句、描记句、诠释句、评议句、祈使句、疑问句、选择比较、礼貌用语、口语。

其中诠释句又分为判断句和领有,评议句又分为个人看法、是非和赞同反对,祈使句又分为祝福类、劝告类和请求类。

2语句库
语句库是聊天机器人系统不可或缺的组成部分,语句库的建立过程分为4步。

步骤1确定机器人日常对话话题分类;
本研究所要建立的是面向日常生活中常用话题的机器人语句库。

确定话题范围的资料来源主要有4个方面:《新版英语900句》、与网络机器人小i等的聊天记录、现实聊天记录。

从而确定了28个话题分类,每类话题下还有细分,基本上可以覆盖日常生活聊天常见内容。

步骤2建立基于句类模型和话题分类的人机对话语句库;
语句库的语句在构建过程中遵循以下原则:
a.语句库中的语句少而精。

在保证语句库完备的前提下,尽量避免语句库中语句的冗余,减少语句数量,从而做到少而;
b.语句库中的语句具有可扩展性。

语句库中的语句是以句类为模型得到的,这样可以通过语句中个别关键词的替换得到更多的语句,使得900句的语句库可以扩展成上千句;
c.机器人回答更智能。

要使与机器人聊天的过程更真实,就要使机器人的回答更智能、更巧妙,因此构建语句库的过程中加入反问句或者是一些可以转移话题的句子,进一步明确用户所表达的意思,使得交互过程更加友好,机器人更加智能,回复更加多样化。

步骤3通过调研和测试数据分析得到语句使用频率;
步骤4确定900句机器人语句库。

3 分词处理
所谓分词,就是把一个句子分割成几个具有明确意义的词汇。

分词的方法目前主要有:字符串匹配分词(正向最大匹配法、逆向最大匹配法、最少切分、双向最大匹配法)、理解分词方法、统计分词算法[8]。

分词中最大的难点是歧义词和未登录词的处理。

对于未登录词的处理,理论上我们可以利用机器学习技术加以消除。

3.2系统的实现
在实现过程中,首先把语句库中的语句分成3级:第1级为常用语句,第2级为规则语句,第3级为后备语句。

第1级常用语句主要包括了常用问候类语句、礼貌用语以及口语化的语句。

例如“hello”、“Thanks”等。

第2级规则语句是语句库的主体,包含了全部针对28类常用话题的回复语句。

第3级后备语句主要包括了识别不出给出的回答语句。

当由于输入语句不在28类话题范围内或者是输入处理错误而造成机器人无法识别,进而无法给出正确的回答时,就调用第3级后备语句。

后备回复语句是比较通用型的语句,是对前面2级语句的一个补充。

后备语句的回答可能不是最令人满意的回答,但是可以做到不答非所问,通过反问、主动提问、转移话题等方式进行进一步的交互,可以提高机器人的智能性,得到较高的满意度。

本研究采用基于关键词匹配的自然语言处理方法来验证所建立的语句库的完备性和回答语句的满意度,取得了较好的实验结果。

系统流程为首先输入自然语言,匹配第1级语句,若成功则返回库中语句输出,若匹配失败则进入第2级匹配。

在第2级匹配过程中,根据规则对输入语句进行多重匹配,这样可以提高回答的准确性,提高智能性。

若第2级匹配成功,则返回库中语句输出,若匹配失败则进入第3级匹配,根据关键词匹配结果返回库中语句作为输出。

3.3实验结果演示
在此,命名本实验的聊天机器人为Q_Fish,它可对英语环境下的日常用语与人进行交流。

图2 Q_Fish对话框显示
Fig.2 the display of Q_Fishi dialog box
图3 Q_Fish人机对话演示
Fig.3 the interactive demo of Q _Fish
4.对句类模型的人机对话系统的改进和展望
本实验总结了面向日常生活的常用28类话题,并以句类为模型构建了人机对话常用语句库。

而且语句库具有良好的可扩展性,可用于广泛领域的人机对话领域,提高了语句库的完善性以及机器人的智能性,同时降低了人工构建语句库的工作量,并且确保了系统实现的实时性,使得人机交互更加友好。

但同时,系统也有许多需要改进的地方:
1. 该系统没有对机器人所回复的信息进行记录和管理,结果导致对于一个问题可能会出现相同的回答,这一点文献1的方法可以借鉴,给每一条回复的信息一个ID,每次回答检索当前回答是否和前述问题ID重复,这样就可以避免重复回答的现象。

2. 由于系统实现过程采用了基于关键词匹配的算法,因此还须要改进对输入语句的自然语言处理算法,增加语义分析,提高机器人的识别能力。

3. 该系统对在已知语句库中找不到合适答案的情况的处理需要进一步优化,目前是采用转换话题的方式避免没有任何输出的尴尬情况,但是毕竟给人答非所问的嫌疑。

4.该系统是脱网的情况下开发使用的,因而没有利用互联网强大的信息资源,进一步开发过程中可以结合云技术。

云技术基于云计算并结合网络技术、信息技术、整合技术、管理平
台技术、应用技术等多项技术,可以组成资源池,按需所用,灵活便利[10]。

这方面IPhone 的Siri已经很成熟了,可以参考其开发经验,具体包括资源整合,高效服务和多方共赢等特点。

5. 此外,还需要加强机器人在上下文关联和输出控制方面的机制,这样我们的机器人才能更聪明,才能更好的为我们服务。

不难发现,未来机器学习和云技术的应用将会是人机对话的主要发展方向。

致谢:在此感谢宋进老师一学期来的指导,包括知识的扩充和对科研的态度,这些收获在我今后的学习和工作中都会受用!
参考文献:
[1]BART KUIJPERS. An Intelligent Man-Machine Dialogue System Based on AI Planning[J]. Applied Intelligence 8, 235–245 (1998).
[2]Jeanne Villaneau ,Jean-Yves Antoine. Deeper spoken language understanding for man-machine dialogue on broader application domains: a logical alternative to concept spotting[J]. Proceedings of EACL 2009 Workshop on Semantic Representation of Spoken Language - SRSL 2009, pages 50–57. [3]Kevin Jepson. CONVERSATIONS -- AND NEGOTIATED INTERACTION --IN TEXT AND VOICE CHAT ROOMS[J]. Language Learning & Technology, September 2005, Volume 9, Number 3: pp. 79-98.
[4] 梁子琳,丁润伟,刘宏.基于句类模型的人机对话系统语句库设计[J]. 华中科技大学学报(自然科学版), 2011年11月第39卷增刊Ⅱ:316-319.
[5] 李锦峰, 滕福星. 从技术伦理视角审视人机聊天[J]. 自然辩证法研究, 2008年9月第24卷第9期:38-41.
[6] Tur G,Hakkani-Tur D,Heck L. What is left to be understood in ATIS [J]. Spoken Language Technology Workshop(SLT). Berlin:Springer-Verlag,2010:19-24.
[7] 黄曾阳.HNC理论概要[J].中文信息学报,1997(4):11-20.
[8] Salto Martínez Rodrigo, Jacques García Fausto Abraham. Development and Implementation of a Chat Bot in a Social Network[J]. 2012 Ninth International Conference on Information Technology- New Generations:751-755
[9] Tur G,Hakkani-Tur D,Heck L. What is left to be understood in ATIS [J]. Spoken Language Technology Workshop(SLT). Berlin:Springer-Verlag,2010:19-24.
[10]马翠霞, 任磊, 滕东兴, 王宏安, 戴国忠. 云制造环境下的普适人机交互技术[J]. 2011年3月,第17 卷第3期:504.
[11] 白玉. 基于ASP的网络聊天室的设计与实现[D]. 吉林:吉林大学,2012年6月.。

相关文档
最新文档