首页> 中国专利> 一种基于Java Map的人机语音交互系统及方法

一种基于Java Map的人机语音交互系统及方法

摘要

本发明提出了一种基于Java?Map的人机语音交互系统及方法,所述系统包含:语音识别模块,用于接收用户输入的语音信息,并将语音信息识别为文本数据;口语理解模块,用于对文本数据进行语义挖掘,并且转换为机器能够识别的形式,其中语义挖掘中基于Java?Map的上下文关键语义要素的存储与利用策略将会对用户输入的上下文信息进行整合,且所述语义挖掘为将识别的文本进行语义关键要素的抽取;对话管理模块,用于控制人机交互的对话流程;语言生成模块,用于将零碎的答案进行整合,得到通顺、符合人的逻辑语言表示形式的文本;语音合成模块,用于将生成的答案文本转化为语音信息,并将语音信息播报给用户。

著录项

  • 公开/公告号CN104571485A

    专利类型发明专利

  • 公开/公告日2015-04-29

    原文格式PDF

  • 申请/专利号CN201310517226.4

  • 发明设计人 张艳;马成龙;潘接林;颜永红;

    申请日2013-10-28

  • 分类号G06F3/01(20060101);G06F17/27(20060101);G10L15/26(20060101);G10L13/08(20130101);

  • 代理机构11318 北京法思腾知识产权代理有限公司;

  • 代理人杨小蓉;王敬波

  • 地址 100190 北京市海淀区北四环西路21号

  • 入库时间 2023-12-18 08:20:29

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-11-03

    未缴年费专利权终止 IPC(主分类):G06F 3/01 专利号:ZL2013105172264 申请日:20131028 授权公告日:20171212

    专利权的终止

  • 2017-12-12

    授权

    授权

  • 2015-05-27

    实质审查的生效 IPC(主分类):G06F3/01 申请日:20131028

    实质审查的生效

  • 2015-04-29

    公开

    公开

说明书

技术领域

本发明涉及如何在人机交互中有效地利用用户所提出的上下文信息的计算方 法,主要针对利用Java Map对人机交互过程中上下文关键语义要素的存储与利用, 具体涉及一种基于Java Map的人机语音交互系统及方法。

背景技术

人机语音交互系统是指用户通过语音控制机器,机器真正地听懂了用户所说的 内容并与用户进行交互,真正实现了“君子动口不动手”。典型的人机语音交互系统 包括:语音识别、口语理解、对话管理和语音合成四个部分组成。口语理解部分是 将语音识别后的文本进行理解,转化成机器能够读懂的机器语言即进行语义挖掘。 然而,口语理解通常会遇到这样的问题,有时用户提出的查询并不是一个完整的句 子或者用户说的内容需要好几句才能表达完整,这就需要口语理解模块对上下文的 语义要素进行保存和整理,进行综合处理。如何能够控制上下文的语义要素并且有 效利用它们成为是否能够完整理解用户信息的关键,通常人机语音交互系统是针对 某一领域的,并且该领域内的语义要素是可穷举的,针对这种情况,我们提出了基 于Java Map的上下文关键语义要素的存储与利用算法。

发明内容

本发明的目的在于,为克服上述技术缺陷,本发明提供一种基于Java Map的人 机语音交互系统及方法。

为实现上述目的,本发明提供一种基于Java Map的人机语音交互系统,所述系 统包含:

语音识别模块,用于接收用户输入的语音信息,并将语音信息识别为文本数据;

口语理解模块,用于对文本数据进行语义挖掘,并且转换为机器能够识别的形 式,其中语义挖掘中基于Java Map的上下文关键语义要素的存储与利用策略将会对 用户输入的上下文信息进行整合,且所述语义挖掘为将识别的文本进行语义关键要 素的抽取;

对话管理模块,用于控制人机交互的对话流程;

语言生成模块,用于将零碎的答案进行整合,得到通顺、符合人的逻辑语言表 示形式的文本;

语音合成模块,用于将生成的答案文本转化为语音信息,并将语音信息播报给 用户。

上述Java Map的上下文关键语义要素的存储与利用策略具体采用如下子模块实 现:

领域识别子模块,用于识别输入语句所属的领域;

关键语义要素提炼子模块,用于根据用户提出的语句,构建出关键语义要素, 并将提取的语义要素存储为Java Map格式;

Java Map语义控制子模块,用于启动两个线程,其中,第一线程实时遍历Java Map 中存储的信息,查看存储的信息是否过期,如果过期则进行清空否则跳过继续执行; 第二个线程用于关键语义要素提炼子模块输入的Map形式信息进行替换还是合并处 理。

上述合并处理采用Java Map语义要素控制器实现,该Java Map语义要素控制器 进一步包含:

第一查询模块,基于用户的id编号查找该用户在收到最新的语义要素之前所存 储的语义要素,如果该用户之前没有存储相关的语义要素,则启动存储模块;如果 已经存储了该最新的语义要素,则启动合并模块;

存储模块,用于将最新的语义要素进行存储;和

合并模块,用于对最新输入的语义要素和之前存储的语义要素进行合并;其中, 当语义合并的时候,如果最新输入的语义要素与之前存储的语义要素属于同一领域 的,则进行关键语义要素的补充和替换;如果最新输入的语义要素与之前存储的语 义要素属于不同的领域,则对之前的语义要素进行清空,并存储最新的语义要素。

此外,本发明还提供了一种基于Java Map的人机语音交互方法,所述方法包含:

步骤101)接收用户输入的语音信息,并将语音信息识别成文本数据;

步骤102)利用口语理解技术将识别的文本数据进行语义挖掘,所述语义挖掘为 将识别的文本转化成机器能够读懂的机器语言;

步骤103)基于Java Map的上下文关键语义要素的存储与利用策略将上述得到 的关键语义要素进行合并或替换;

步骤104)将关键语义要素送入对话管理模块,控制对话流程;

步骤105)将对话管理模块得到的文本答案片段进行语言生成,并以语音的形式 进行播报。

上述Java Map的上下文关键语义要素的存储与利用策略进一步包含如下步骤:

步骤201)根据用户输入的语句进行领域判别,得到该语句所属的领域信息;

步骤202)对输入的语句进行理解,并将关键语义要素采用Map形式进行存储;

步骤203采用第一线程实时遍历Map中存储的信息,查看存储的信息是否过期, 如果过期则进行清空否则跳过继续执行;采用第二个线程用于决策对领域识别子模 块输入的Map形式信息进行替换还是合并处理。

上述合并处理具体为:

基于用户的id编号查找该用户在收到最新的语义要素之前所存储的语义要素, 如果该用户之前没有存储相关的语义要素,将最新的语义要素进行存储;如果已经 存储了该最新的语义要素,则对最新输入的语义要素和之前存储的语义要素进行合 并;

其中,当语义合并的时候,如果最新输入的语义要素与之前存储的语义要素属于 同一领域的,则进行关键语义要素的补充和替换;如果最新输入的语义要素与之前 存储的语义要素属于不同的领域,则对之前的语义要素进行清空,并存储最新的语 义要素。

与现有技术相比,本发明的技术优势在于:

1、实现方法简单,能够更好地利用上下文信息。

2、便于对语义要素进行控制和管理。

3、对于不同用户的语义要素的保存时间可以根据用户的对话时间间隔习惯进行 定制。

附图说明

图1是本发明的系统组成示意图。

图2是本发明提供的一个实施例的实现流程图,该图所属的领域是天气查询, 时间是2013年10月26,询问类型是下雨吗。

具体实施方式

下面结合附图和实施例对本发明所述方法进行详细说明。

请结合权利要求的步骤增加一个很具体的实施例!

1、根据领域知识,构建出该领域的关键语义要素。例如,天气领域内,需要知 道询问时间、感兴趣的城市和询问类型(有雨吗、温度如何、用带伞吗、PM2.5是多 少等)。

2、当用户通过语音输入,识别成文本送入到理解服务器,理解服务器首先对其 进行领域判别和理解,例如用户输入“明天下雨吗”,理解服务器对其进行领域识 别为天气查询领域,该语句包含的语义关键要素包含“明天”、“下雨吗”。

3、将第二步得到的结果送入Java Map语义要素控制器,由于每个用户的id编号 是唯一的,首先查找该用户之前存储的语义要素,如果没有,则将新的语义要素进 行存储,如果有,则对其进行合并。语义合并的时候,如果是同一领域,则进行关 键语义要素的补充和替换,如果是不同的领域,则对之前的语义要素进行清空,将 新的语义要素存储进去。

4、通过第三步则对该用户的真正意图进行了理解,送入给下一步应用。

5、Java Map语义控制随系统启动时分为两个线程,第一个线程实时遍历该Map 中存储的信息,查看存储的信息是否过期,如果过期则进行清空否则跳过继续执行。 第二个线程便是处理理解服务器送进来的信息进行替换还是合并。

由于每个用户说话习惯不同,有的用户上下语句之间停顿时间长,有的用户则短, 并且和用户当前进行的操作有关,有时用户需要对智能语音人机交互系统返回的结 果进行查看,这无疑增加了上下语句之间的停顿时间。因此,这个过期时间是由多 种因素决定的,需要进行综合判断,对其进行定制。本发明提供的方法面向的研究 领域涉及到对天气预报、公交线路查询等语义要素可穷举的领域。其中天气领域内 的关键语义要素有时间、地点和天气询问词(例如有雨吗、温度多少啊等),如图2 所示。公交线路查询领域内的关键语义要素有起始地、目的地、出行方式(例如步 行、公交、驾车等)和询问方式(例如多长时间、距离多远、打车费用等)。

为了更好的理解本方法在整个人机交互系统中的应用,系统框图为图1。

用户通过语音输入,自动语音识别服务器将语音识别为文本送入理解服务器, 理解服务器会对该语句进行理解,存储成Map形式,然后再送入Java Map中,查找 该用户之前的语义信息,进行判断和整合,最后输出结果。同时,Java Map语义控 制器会对存储在Map里的信息进行刷新,如果该用户的语义信息存储时间过长,则 进行清空,这个控制时间是根据每个用户对话习惯间隔进行特殊指定的。

总之,本发明采用一种基于Java Map的控制上下文语义要素的算法,即利用Java  Map的键值唯一性,对每一位用户提出的语义要素进行存储,当用户新的语义要素 到来时,与之前的语义要素进行比对,如果属于同一领域则进行语义要素之间的判 断融合,如果不是同一个领域则进行重写。同时,如果用户长时间不进行操作,则 对该用户之前的语义要素进行另存和清空,以便留出内存空间供给其他用户使用, 并且这个等待时间是根据用户的口语交互习惯进行量身定制的。

最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管 参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明 的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均 应涵盖在本发明的权利要求范围当中。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号