基于自然语言的人机交互方法及系统与流程

文档序号:12364115阅读:828来源:国知局
基于自然语言的人机交互方法及系统与流程

本发明实施例涉及软件技术,尤其涉及一种基于自然语言的人机交互方法及系统。



背景技术:

随着手机端上使用基于自然语言的人机交互来进行道路导航、通讯录查找等应用的兴起,基于自然语言的人机交互在更多的应用领域崭露头角。比如,在寓教于乐中,智能终端(如机器人、或平板电脑等)通过识别来自用户的自然语言,来搜索语音应答。这种对话仅限于一问一答,智能终端无法在连续的问答之间构建关联搜索,从而导致智能终端在进行关键词匹配时,产生低效率、低匹配率的问题。

因此,需要对现有技术进行改进。



技术实现要素:

本发明提供一种基于自然语言的人机交互方法及系统,以解决在连续的人机交互方面,现有的智能终端无法提供高效应答的问题。

第一方面,本发明实施例提供了一种基于自然语言的人机交互方法,用于接收并应答基于自然语言的语音信息;包括:预设多等级的语音指令模板,以及对应各等级的语音应答模板;其中,所述语音应答模板中包含应答关键词搜索方式和应答格式;将所述语音信息与各等级的语音指令模板进行匹配,并根据匹配结果确定相应等级的语音应答模板;根据所确定的语音应答模板中的应答关键词搜索方式,搜索用于应答的关键词;将搜索到的用于应答的关键词填入相应应答格式中形成语音应答。

第二方面,本发明实施例还提供了一种基于自然语言的人机交互系统,用于接收并应答基于自然语言的语音信息;包括:存储单元,用于预设多等级的语音指令模板,以及对应各等级的语音应答模板;其中,所述语音应答模板中包含应答关键词搜索方式和应答格式;匹配单元,用于将所述语音信息与各等级的语音指令模板进行匹配,并根据匹配结果确定相应等级所对应的语音应答模板;应答关键词确定单元,用于根据所确定的语音应答模板中的应答关键词搜索方式,搜索用于应答的关键词;语音应答形成单元,用于将搜索到的用于应答的关键词填入相应应答格式中形成语音应答。

本发明通过设置多等级的语音指令模板及对应的包含诱导用户说出下一级语音指令的语音应答模板,为人机多级对话提供了对话模式;同时,通过将搜索到的应答关键词填入语音应答模板的方式,实现了基于自然语言的人机连续对话。

附图说明

图1是本发明实施例一中的基于自然语言的人机交互方法的流程图;

图2是本发明实施例二中的基于自然语言的人机交互系统的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的基于自然语言的人机交互方法的流程图,本实施例可适用于用户与智能终端进行多级对话的情况,该方法可以由交互系统来执行,其中,所述交互系统主要由智能终端来执行,但不排除通过智能终端与服务端的通信来呈现交互过程的方式。所述交互方法用于接收并应答基于自然语言的语音信息,以及执行如下步骤:

步骤S110、预设多等级的语音指令模板,以及对应各等级的语音应答模板;其中,所述语音应答模板中包含应答关键词搜索方式和应答格式。

其中,各所述语音指令模板和语音应答模板配对的设置在不同等级中。每个等级中的语音应答模版中包含的应答格式可以是能够诱导用户说出与下一等级语音指令模板相匹配的语音指令的句式,以及嵌入在句式中的对应应答关键词搜索方式的搜索结果。其中,所述语音指令模板和语音应答模板均未文本格式。

另外,所述语音指令模板可以是预先存储的语音指令。或者,所述语音指令模板是包含指令关键词搜索方式的文本文件。

例如,第一等级中的语音指令模板包括:“我想学唐诗”、和“我想学宋词”。第一等级中的语音应答模板包括:“你想学%应答关键词搜索方式B1%”吗、和“跟我学%应答关键词搜索方式B2%”吧。其中,应答关键词搜索方式B1为指定搜索数据库中的诗人人名的搜索语句。应答关键词搜索方式B2为指定搜索数据库中的词人人名的搜索语句。第二等级的语音指令模板包括:“我想学%指令关键词搜索方式A1%”、和%指令关键词搜索方式A2%。第二级中的语音应答模板包括:“你想学%应答关键词搜索方式B3%吗”、和“跟我学%应答关键词搜索方式B4%吧”。其中,指令关键词搜索方式A1为指定搜索数据库中诗人的搜索语句,指令关键词搜索方式A2为指定搜索数据库中词人的搜索语句。应答关键词搜索方式B3为指定搜索数据库中的唐诗名称的搜索语句。应答关键词搜索方式B2为指定搜索数据库中的宋词名称的搜索语句。

其中,本实施例中所述的唐诗、宋词仅为举例,并非对本发明的限制。与唐诗和宋词对应的数据库中所保存的内容也不限于相应朝代的作品和作者,可泛指古诗和古词。

在此,所述应答关键词搜索方式中还可包含同一级指令关键词搜索方式、上一级指令关键词搜索方式、和上一级应答关键词搜索方式中至少一种搜索方式。以便增加对话的关联性。例如,第二等级中的应答关键词搜索方式中包含:搜索第一级应答关键词搜索方式中的人名搜索语句、和第二等级中增加的诗词名称搜索语句。

各指令关键词搜索方式和应答关键词搜索方式还可以单独的保存在文本文件(如配置文件)中。其中,每个语音指令模板和指令关键词搜索方式可为一一对应关系。每个语音应答模板和应答关键词搜索方式可为一一对应关系。其中,所述指令关键词搜索方式和应答关键词搜索方式中可包含一条或多条搜索语句。例如,对应等级1的应答关键词搜索方式为:#b1=应答关键词搜索式B1,对应等级1的语音应答模板为“你想学#b1吗”。其中,“#b1”为用于匹配的标注标记。

其中,所述指令关键词搜索方式和应答关键词搜索方式中涉及数据库中的至少一个数据表。所述数据表包括:指令数据表、和语义数据表;其中,所述语义数据表包括以下至少一种:诗词作者数据表、诗词名称数据表、和诗词内容数据表。所述指令数据表包括:肯定指令数据表、否定指令数据表、或自定义指令数据表。例如,肯定指令数据表中包括:“好的”、“想学”等肯定指令关键词。否定指令数据表中包括:“不好”、“不想学”等否定指令关键词。自定义指令数据表中包括:“随便”、“你说了算”等不确定指令关键词。

在此,所述指令关键词搜索方式和应答关键词搜索方式共用数据库中的至少一个数据表。

步骤S120、将所接收的基于自然语言的语音信息与各等级的语音指令模板进行匹配,并根据匹配结果确定相应等级所对应的语音应答模板。

具体地,所述交互系统通过智能终端的语音输入模块(如麦克风)接收用户发出的语音信号,并将语音信号转成文本格式的语音信息。通过将所转成文本格式的语音信息与各语音指令模板进行匹配,来确定所接收的语音信息的等级和语音应答模板。

一种可选方案为,各等级的语音指令模板中预设有包含指令关键词搜索方式。所述步骤S120对应的包括:步骤S121、S122、S123。

步骤S121、从所接收的基于自然语言的语音信息中提取关键词,并利用各指令关键词搜索方式判断所提取的关键词是否属于数据库中的关键词,若是,执行步骤S122,若否,执行步骤S123。

步骤S122、确定所接收的语音信息对应的语音指令模板以及语音应答模板。

步骤S123、更换语音指令模板中的指令关键词搜索方式,直至全部搜索完毕或确定相应的语音指令模板以及语音应答模板。

具体地,所述交互系统通过对文本中的词性、助词等将语音指令将语音信息进行分割以得到多个关键词。接着,按照预设的搜索顺序,将关键词逐个代入指令关键词搜索方式进行匹配查找,直到搜到关键词,如此确定搜到相应关键词的指令关键词搜索方式所在的语音指令模板,以及相应的语音应答模板。

例如,所述交互系统将所接收的语音信息为:“我想学李白的诗”。所述交互系统通过对语音信息的分割,得到包含“我想学”、“李白”和“诗”的关键词。所述交互系统按照关键词的数量从语音指令模板中选择包含相应数量指令关键词搜索方式的语音指令模板。再通过将各关键词放在所选择的语音指令模板中的各指令关键词搜索方式进行搜索匹配,得到能搜到包含“我想学”、“李白”和“诗”的搜索匹配结果,并得到符合该搜索匹配结果的语音指令模板,以及相应的语音应答模板。

在另一种可选方案中,各等级的语音指令模板中预设有包含指令关键词搜索方式。当在播放了语音应答之后,再次接收基于自然语言的语音信息时,所述步骤S120包括:步骤S124、S125。

步骤S124、从所接收的基于自然语言的语音信息中提取关键词。

步骤S125、从所播放的语音应答所在等级的下一级语音指令模板中的指令关键词搜索方式开始,搜索所提取的关键词,直至确定所述语音信息所对应的语音指令模板以及语音应答模板。

其中,步骤S124与前述步骤S121中提取关键词的方式相同,在此不再赘述。

由于所播放的语音应答具有诱导用户给出下一等级语音指令的信息,故而所述交互系统在播放语音应答时,保存所播放的语音应答的等级。在播放完语音应答,并接收到新的语音信息时,所述交互系统先按照所保存等级的下一级语音指令模板中的指令关键词搜索方式,将所接收的语音信息中的关键词进行搜索匹配。若能搜到相匹配的关键词,则确定所述语音信息所对应的语音指令模板以及语音应答模板。反之,再按照预设的语音指令模板顺序,逐个进行搜索匹配,直到确定所述语音信息所对应的语音指令模板以及语音应答模板。

其中,为了防止无法确定语音应答模板的情况,所述交互系统中预设的最低等级的语音应答模板,以便应对实际人机对话情况。例如,等级最低的语音应答模板为“我没听懂”、或“抱歉,请再说一遍”等。若所接收的语音指令无法与各语音指令模板相匹配,则将等级最低的语音应答模板予以播放。

步骤S130、根据所确定的语音应答模板中的应答关键词搜索方式,搜索用于应答的关键词。

具体地,所述交互系统按照应答关键词搜索方式所提供的数据库语言,搜索用于应答的关键词。其中,所述用于应答的关键词可以是字、词、短语、诗歌、歌词、和短文等。

步骤S140、将搜索到的用于应答的关键词填入相应应答格式中形成语音应答。

在此,所述交互系统按照应答格式中的应答关键词搜索方式得到应答关键词,并按照应答关键词搜索方式在应答格式中的位置,用相应应答关键词替换对应的应答关键词搜索方式,如此,得到相应的语音应答,并将所得到的语音应答转成语音信号并进行播放。

当搜索到的用于应答的关键词为多个时,所述步骤S140包括:按照相应应答格式中的应答关键词数量,从搜索到的各应答关键词中随机选择相应数量的应答关键词,并将所选择的各应答关键词填入相应应答格式中。

例如,所述应答格式为“你想学%应答关键词搜索式B1%中的哪一个?”,其中,%应答关键词搜索式B1%中包含随机检出数量不超过3个的应答关键词的数据库搜索语句。所述交互系统通过执行应答关键词搜索式B1,从所得到的各应答关键词中随机选择3个应答关键词,并将所选择的各应答关键词填入相应应答格式中。

一种可选方案为,在播放语音应答的同时,还包括:播放与所述语音应答对应的多媒体文件;和/或发出与所述语音应答所对应的、用于控制机器人肢体变化的控制指令。

其中,语音应答模板可与多媒体文件预先对应。或者,应答关键词可与多媒体文件、和/或控制指令预先对应。其中,所述多媒体文件可作为背景音乐和/或背景视频,能有效提高用户互动兴致。所述控制指令为用于控制机器人肢体变化的指令。例如,在播放静夜思诗文的同时,播放对应的动画视频,以及向机器人发出能够让其舞蹈的控制指令。

综合上述各可选方案的一种人机交互方法举例如下:

交互系统中预存有语音指令模板依等级由高到低的顺序依次为:“我想学唐诗”、“我想学%诗人关键词搜索方式%”、“我想学%诗名关键词搜索方式%”、和“我想学%诗词内容关键词搜索方式%”。对应各等级的语音应答模板依次为:{“我们学习%诗人应答关键词搜索方式%的诗,好吗”,“我们学习%诗名应答关键词搜索方式%,好吗”,“请听%诗词内容应答关键词搜索方式%”}。所述交互系统当接收到语音信息时,通过匹配语音指令模板确定语音指令为“我想学唐诗”,由此确定相匹配的语音指令模板的等级为第一级,以及第一级所对应的语音应答模板为“我们学习%诗人应答关键词搜索方式%的诗,好吗”。接着,所述交互系统按照%诗人应答关键词搜索方式%中的数据库搜索语句在诗人数据表中搜索预设数量的诗人人名,并替换%诗人应答关键词搜索方式%位置处的搜索语句,以得到语音应答为“我们学习李白、白居易、杜甫的诗,好吗”。与此同时,所述交互系统还暂存该语音应答的等级(即第一级)。接着,所述交互系统在接收到新的语音信息后,优先按照第二等级的语音指令模板“我想学%诗人关键词搜索方式%”中诗人关键词搜索方式的数据库搜索语句来匹配语音信息中是否包含诗人人名的关键词。若否,则继续搜索匹配第三等级的语音指令模板。若是,则确定语音应答模板为“我们学习%诗名应答关键词搜索方式%,好吗”,并将执行完诗名应答关键词搜索方式的搜索结果填入语音应答模板中,以得到语音应答并予以播放。其中,诗名应答关键词搜索方式中的数据库搜索语句中包含当前等级中语音指令模板的诗人指令关键词。以此类推,当所述交互系统播放“请听静夜思:床前明月光,…,低头思故乡”时,还播放与所述静夜思相对应的多媒体文件,以增加诗歌的播放效果。

需要说明的是,上述各语音指令模板和语音应答模板中的句型仅为举例,而非对本发明的限制。

本实施例通过设置多等级的语音指令模板及对应的包含诱导用户说出下一级语音指令的语音应答模板,为人机多级对话提供了对话模式;同时,通过将搜索到的应答关键词填入语音应答模板的方式,实现了基于自然语言的人机对话信息。另外,在播放了具有诱导性的语音应答后,优先按照下一级语音指令模板进行关键词搜索,能有效提高搜索效率的速度和准确度。

实施例二

图2为本发明实施例二提供的基于自然语言的人机交互系统的结构示意图,本实施例可适用于用户与智能终端进行多级对话的情况。所述交互系统主要由智能终端来执行,但不排除通过智能终端与服务端的通信来呈现搜索结果的方式。所述交互系统用于接收并应答基于自然语言的语音信息。具体地,所述交互系统1包括:存储单元11、匹配单元12、应答关键词确定单元13、和语音应答形成单元14。

所述存储单元11用于预设多等级的语音指令模板,以及对应各等级的语音应答模板;其中,所述语音应答模板中包含应答关键词搜索方式和应答格式。

其中,各所述语音指令模板和语音应答模板配对的设置在不同等级中。每个等级中的语音应答模版中包含的应答格式可以是能够诱导用户说出与下一等级语音指令模板相匹配的语音指令的句式,以及嵌入在句式中的对应应答关键词搜索方式的搜索结果。其中,所述语音指令模板和语音应答模板均未文本格式。

另外,所述语音指令模板可以是预先存储的语音指令。或者,所述语音指令模板是包含指令关键词搜索方式的文本文件。

例如,第一等级中的语音指令模板包括:“我想学唐诗”、和“我想学宋词”。第一等级中的语音应答模板包括:“你想学%应答关键词搜索方式B1%”吗、和“跟我学%应答关键词搜索方式B2%”吧。其中,应答关键词搜索方式B1为指定搜索数据库中的诗人人名的搜索语句。应答关键词搜索方式B2为指定搜索数据库中的词人人名的搜索语句。第二等级的语音指令模板包括:“我想学%指令关键词搜索方式A1%”、和%指令关键词搜索方式A2%。第二级中的语音应答模板包括:“你想学%应答关键词搜索方式B3%吗”、和“跟我学%应答关键词搜索方式B4%吧”。其中,指令关键词搜索方式A1为指定搜索数据库中诗人的搜索语句,指令关键词搜索方式A2为指定搜索数据库中词人的搜索语句。应答关键词搜索方式B3为指定搜索数据库中的唐诗名称的搜索语句。应答关键词搜索方式B2为指定搜索数据库中的宋词名称的搜索语句。

其中,本实施例中所述的唐诗、宋词仅为举例,并非对本发明的限制。与唐诗和宋词对应的数据库中所保存的内容也不限于相应朝代的作品和作者,可泛指古诗和古词。

在此,所述应答关键词搜索方式中还可包含同一级指令关键词搜索方式、上一级指令关键词搜索方式、和上一级应答关键词搜索方式中至少一种搜索方式。以便增加对话的关联性。例如,第二等级中的应答关键词搜索方式中包含:搜索第一级应答关键词搜索方式中的人名搜索语句、和第二等级中增加的诗词名称搜索语句。

各指令关键词搜索方式和应答关键词搜索方式还可以单独的保存在文本文件(如配置文件)中。其中,每个语音指令模板和指令关键词搜索方式可为一一对应关系。每个语音应答模板和应答关键词搜索方式可为一一对应关系。其中,所述指令关键词搜索方式和应答关键词搜索方式中可包含一条或多条搜索语句。例如,对应等级1的应答关键词搜索方式为:#b1=应答关键词搜索式B1,对应等级1的语音应答模板为“你想学#b1吗”。其中,“#b1”为用于匹配的标注标记。

其中,所述指令关键词搜索方式和应答关键词搜索方式中涉及数据库中的至少一个数据表。所述数据表包括:指令数据表、和语义数据表;其中,所述语义数据表包括以下至少一种:诗词作者数据表、诗词名称数据表、和诗词内容数据表。所述指令数据表包括:肯定指令数据表、否定指令数据表、或自定义指令数据表。例如,肯定指令数据表中包括:“好的”、“想学”等肯定指令关键词。否定指令数据表中包括:“不好”、“不想学”等否定指令关键词。自定义指令数据表中包括:“随便”、“你说了算”等不确定指令关键词。

在此,所述指令关键词搜索方式和应答关键词搜索方式共用数据库中的至少一个数据表。

匹配单元12用于将所接收的基于自然语言的语音信息与各等级的语音指令模板进行匹配,并根据匹配结果确定相应等级所对应的语音应答模板。

具体地,所述匹配单元12通过智能终端的语音输入模块(如麦克风)接收用户发出的语音信号,并将语音信号转成文本格式的语音信息。通过将所转成文本格式的语音信息与各语音指令模板进行匹配,来确定所接收的语音信息的等级和语音应答模板。

一种可选方案为,各等级的语音指令模板中预设有包含指令关键词搜索方式。所述匹配单元12对应执行以下步骤:S121、S122、S123。

步骤S121、从所接收的基于自然语言的语音信息中提取关键词,并利用各指令关键词搜索方式判断所提取的关键词是否属于数据库中的关键词,若是,执行步骤S122,若否,执行步骤S123。

步骤S122、确定所接收的语音信息对应的语音指令模板以及语音应答模板。

步骤S123、更换语音指令模板中的指令关键词搜索方式,直至全部搜索完毕或确定相应的语音指令模板以及语音应答模板。

具体地,所述匹配单元12通过对文本中的词性、助词等将语音指令将语音信息进行分割以得到多个关键词。接着,按照预设的搜索顺序,将关键词逐个代入指令关键词搜索方式进行匹配查找,直到搜到关键词,如此确定搜到相应关键词的指令关键词搜索方式所在的语音指令模板,以及相应的语音应答模板。

例如,所述匹配单元12将所接收的语音信息为:“我想学李白的诗”。所述匹配单元12通过对语音信息的分割,得到包含“我想学”、“李白”和“诗”的关键词。所述匹配单元12按照关键词的数量从语音指令模板中选择包含相应数量指令关键词搜索方式的语音指令模板。再通过将各关键词放在所选择的语音指令模板中的各指令关键词搜索方式进行搜索匹配,得到能搜到包含“我想学”、“李白”和“诗”的搜索匹配结果,并得到符合该搜索匹配结果的语音指令模板,以及相应的语音应答模板。

在另一种可选方案中,各等级的语音指令模板中预设有包含指令关键词搜索方式。当在播放了语音应答之后,再次接收基于自然语言的语音信息时,所述匹配单元12对应执行以下步骤:S124、S125。

步骤S124、从所接收的基于自然语言的语音信息中提取关键词。

步骤S125、从所播放的语音应答所在等级的下一级语音指令模板中的指令关键词搜索方式开始,搜索所提取的关键词,直至确定所述语音信息所对应的语音指令模板以及语音应答模板。

其中,步骤S124与前述步骤S121中提取关键词的方式相同,在此不再赘述。

由于所播放的语音应答具有诱导用户给出下一等级语音指令的信息,故而所述匹配单元12在播放语音应答时,保存所播放的语音应答的等级。在播放完语音应答,并接收到新的语音信息时,所述匹配单元12先按照所保存等级的下一级语音指令模板中的指令关键词搜索方式,将所接收的语音信息中的关键词进行搜索匹配。若能搜到相匹配的关键词,则确定所述语音信息所对应的语音指令模板以及语音应答模板。反之,再按照预设的语音指令模板顺序,逐个进行搜索匹配,直到确定所述语音信息所对应的语音指令模板以及语音应答模板。

其中,为了防止无法确定语音应答模板的情况,所述匹配单元12中预设的最低等级的语音应答模板,以便应对实际人机对话情况。例如,等级最低的语音应答模板为“我没听懂”、或“抱歉,请再说一遍”等。若所接收的语音指令无法与各语音指令模板相匹配,则将等级最低的语音应答模板予以播放。

应答关键词确定单元13用于根据所确定的应答关键词搜索方式,搜索用于应答的关键词。

具体地,所述应答关键词确定单元13按照应答关键词搜索方式所提供的数据库语言,搜索用于应答的关键词。其中,所述用于应答的关键词可以是字、词、短语、诗歌、歌词、和短文等。

接着,语音应答形成单元14用于将搜索到的用于应答的关键词填入相应应答格式中形成语音应答。

在此,所述语音应答形成单元14按照应答格式中的应答关键词搜索方式得到应答关键词,并按照应答关键词搜索方式在应答格式中的位置,用相应应答关键词替换对应的应答关键词搜索方式,如此,得到相应的语音应答,并将所得到的语音应答转成语音信号并进行播放。

当搜索到的用于应答的关键词为多个时,所述语音应答形成单元14用于按照相应应答格式中的应答关键词数量,从搜索到的各应答关键词中随机选择相应数量的应答关键词,并将所选择的各应答关键词填入相应应答格式中。

例如,所述应答格式为“你想学%应答关键词搜索式B1%中的哪一个?”,其中,%应答关键词搜索式B1%中包含随机检出数量不超过3个的应答关键词的数据库搜索语句。所述语音应答形成单元14通过执行应答关键词搜索式B1,从所得到的各应答关键词中随机选择3个应答关键词,并将所选择的各应答关键词填入相应应答格式中。

一种可选方案为,在所述语音应答形成单元14播放语音应答的同时,所述交互系统1还包括:配合单元(未予图示),用于播放与所述语音应答对应的多媒体文件,和/或发出与所述语音应答所对应的、用于控制机器人肢体变化的控制指令。

其中,语音应答模板可与多媒体文件预先对应。或者,应答关键词可与多媒体文件、和/或控制指令预先对应。其中,所述多媒体文件作为背景音乐和/或背景视频,能有效提高用户互动兴致。所述控制指令为用于控制机器人肢体变化的指令。例如,在语音应答形成单元14播放静夜思诗文的同时,所述配合单元播放对应的动画视频,以及向机器人发出能够让其舞蹈的控制指令。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1