智能设备的动作模拟交互方法和装置及智能设备
技术领域
本公开涉及智能设备领域,特别涉及一种智能设备的动作模拟交互方法和装置以及包括该动作模拟交互装置的智能设备。
背景技术
传统的智能设备与用户的交互形式局限于文字、声音和图像,而且一般的智能设备仅限于接受文字形式的输入,而以声音、文字或图像形式进行输出。例如,在传统的智能设备上查询动物百科、卡通形象等内容,需要用户输入文字进行内存查询,并获得声音、文字、图像形式的输出结果。
大部分较为新型的智能设备具有网络模块,所接受的输入形式也扩展到声音。智能设备在接收到用户的语音提问后,能通过网络模块上传用户的语音提问数据,在网络中进行语音识别后,通过查询服务器端的内容获得答案,并将答案下发至终端。这种智能设备可基于服务器存储的大量数据资料进行交互,但是交互形式依然局限于声音、文字和图像。例如,通过智能设备查询“马来貘”,在得到目标答案的文字后通过文本语音转换(TTS)输出声音形式的查询结果:“马来貘是貘类中最大的一种,体长为1.8-2.5米,肩高90-120厘米,尾长5-10厘米,体重250-540千克……”。声音输出完毕后,再通过触发图册、视频,才能了解马来貘的样貌、形态。导致信息传播的效率低,缺乏生动感,没有形象的动作模拟过程,表达的信息量有限。
发明内容
本发明的目的是提供一种智能设备的动作模拟交互方法,其可以实现多种方式的人机交互,提高信息交互的及时性和准确性。
相应的,本发明实施例还提供一种智能设备的动作模拟交互装置,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种智能设备的动作模拟交互方法,包括:
针对选取的动作样本进行分析提取,获得相应的动作指令,所述动作指令包括分动作指令和动作调度指令;
基于既定语料和所述动作指令进行训练,建立事件匹配模型;
将接收到的语音信号转换成目标文本,对所述目标文本进行语义分析,确定所述目标文本对应的目标事件;
基于所述事件匹配模型,根据所述目标事件获得相应的目标动作;
调用所述目标动作对应的动作调度指令和分动作指令,根据所述动作调度指令和分动作指令驱动所述智能设备的相应的硬件组件。
优选地,所述针对选取的动作样本进行分析提取包括:
采集全网用户的动作样本;
针对所述动作样本分别逐帧进行特征提取,根据提取的特征进行识别,得到所述动作样本对应的动作指令;
将所述动作指令拆分为分动作指令和动作调度指令,并进行关联存储。
优选地,所述分动作指令用于限定动作对应部位、动作类型、动作方向、动作相对起始时间、动作相对结束时间中的一项或多项;所述动作调度指令用于限定分动作执行顺序、各分动作的起始时间和结束时间。
优选地,所述事件匹配模型包括动物属性与目标动作的对应关系的概率模型。
优选地,所述事件匹配模型还包括动物属性与动物类型的对应关系的概率模型。
优选地,所述根据所述目标事件获得相应的目标动作时,还包括:
从所述目标事件的对应语料中提取动物属性;
针对所述事件匹配模型中涉及的每种动物,计算在该种动物的前提下,所提取的动物属性出现的概率;
选择概率值最大时对应的动物作为实施所述目标动作的目标动物。
优选地,所述智能设备的动作模拟交互方法还包括:
根据预先设定的问题向用户提问,并接收用户反馈的语音信息;
识别所述用户反馈的语音信息,获得反馈文本,并将所述反馈文本记录在用户日志中;
以所述用户日志中记录的反馈文本作为语料,对所述事件匹配模型进行优化。
优选地,所述调用所述目标动作对应的动作调度指令和分动作指令,根据所述动作调度指令和分动作指令驱动所述智能设备的相应的硬件组件包括:
提取所述目标动作对应的动作调度指令和分动作指令;
判断所提取的分动作指令对应的硬件组件状态;
根据所提取的动作调度指令和分动作指令,向对应的硬件组件发送硬件动作指令,驱动对应的硬件组件。
本发明实施例还公开一种智能设备的动作模拟交互装置,包括:
动作指令提取模块,用于针对选取的动作样本进行分析提取,获得相应的动作指令,所述动作指令包括分动作指令和动作调度指令;
事件匹配模型建模模块,用于基于既定语料和所述动作指令进行训练,建立事件匹配模型;
文本转换识别模块,用于将接收到的语音信号转换成目标文本,对所述目标文本进行语义分析,确定所述目标文本对应的目标事件;
目标动作生成模块,用于基于所述事件匹配模型,根据所述目标事件获得相应的目标动作;
驱动模块,用于调用所述目标动作对应的动作调度指令和分动作指令,根据所述动作调度指令和分动作指令驱动所述智能设备的相应的硬件组件。
所述针对选取的动作样本进行分析提取包括:
采集全网用户的动作样本;
针对所述动作样本分别逐帧进行特征提取,根据提取的特征进行识别,得到所述动作样本对应的动作指令;
将所述动作指令拆分为分动作指令和动作调度指令,并进行关联存储。
优选地,所述分动作指令用于限定动作对应部位、动作类型、动作方向、动作相对起始时间、动作相对结束时间中的一项或多项;所述动作调度指令用于限定分动作执行顺序、各分动作的起始时间和结束时间。
优选地,所述事件匹配模型包括动物属性与目标动作的对应关系的概率模型。
优选地,所述事件匹配模型还包括动物属性与动物类型的对应关系的概率模型。
优选地,所述根据所述目标事件获得相应的目标动作时,还包括:
从所述目标事件的对应语料中提取动物属性;
针对所述事件匹配模型中涉及的每种动物,计算在该种动物的前提下,所提取的动物属性出现的概率;
选择概率值最大时对应的动物作为实施所述目标动作的目标动物。
优选地,所述智能设备的动作模拟交互装置还包括:
反馈模块,用于根据预先设定的问题向用户提问,并接收用户反馈的语音信息;
记录模块,用于识别所述用户反馈的语音信息,获得反馈文本,并将所述反馈文本记录在用户日志中;
优化模块,用于以所述用户日志中记录的反馈文本作为语料,对所述事件匹配模型进行优化。
优选地,所述调用所述目标动作对应的动作调度指令和分动作指令,根据所述动作调度指令和分动作指令驱动所述智能设备的相应的硬件组件包括:
提取所述目标动作对应的动作调度指令和分动作指令;
判断所提取的分动作指令对应的硬件组件状态;
根据所提取的动作调度指令和分动作指令,向对应的硬件组件发送硬件动作指令,驱动对应的硬件组件。
本发明实施例还提供一种智能设备,包括上述的动作模拟交互装置。
与现有技术相比,本发明实施例具有以下优点:
利用智能设备的多个可活动关节,根据用户指令执行多种动作,将传统的文字、声音和图像交互扩展到动作交互,使智能设备与用户的交互形式更形象生动、通俗易懂,提供文字、图像、动作、声音等多维度的用户体验。
智能设备预先进行事件匹配学习和动作指令提取,在实际使用时,根据用户指令匹配目标动作,调用相应的动作指令驱动智能设备对用户指令进行反馈,不需要额外进行信息维护,而且能够及时、准确地与用户进行多维度的信息交互,提高了信息传播的效率。
可以根据使用过程中的用户反馈对事件匹配模型进行优化,不断完善事件匹配模型,提高其精确度。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1显示根据示例性实施例的智能设备的动作模拟交互方法的流程图;
图2显示根据现有技术的哈希链表存储格式示意图;
图3显示根据示例性实施例的智能设备的动作模拟交互系统的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1显示根据示例性实施例的智能设备的动作模拟交互方法的流程图,如图1所示,根据示例性实施例的智能设备的动作模拟交互方法包括以下步骤:
步骤1:针对选取的动作样本进行分析提取,获得相应的动作指令,动作指令包括分动作指令和动作调度指令。
在实施例中,步骤1可具体包括以下子步骤:
子步骤101:采集全网用户的动作样本
选择智能设备(例如智能机器人)要学习或模仿的动作样本,其主要是关于各种动物的动作视频。可以通过已经录制好的视频文件或者通过摄像头现场拍摄动物动作来获得动作样本,也可以通过网络搜索全网用户提供的各类动物的动作视频。动作视频例如是猫科动物的猎食视频、猫科动物的行走体态视频等。动作样本也可以具有更多自定义的细节,例如大型猫科动物(老虎)叫,大型猫科动物(老虎)走路,小型猫科动物(猫)走路,犬科脊椎动物(狗)叫等。
子步骤102:针对动作样本分别逐帧进行特征提取,根据提取的特征进行识别,得到动作样本对应的动作指令。
选择适当频率对动作样本视频流进行分帧特征提取,例如可以取每秒10帧或100帧等。分帧提取的频率越高,模仿的动作越连贯流畅,但对硬件处理速度和存储要求越高。提取的特征可以包括发生动作的部位、轮廓等,根据所采用的动作识别方法,也可以包括进行动作识别所必需的其他特征。对从动作样本所包括的连续多帧图像中提取的特征进行识别,可以得到动作样本对应的动作指令。动作指令包含了以下信息:动作样本中的动作对应部位、动作类型、动作方向、动作起始时间、动作结束时间、各个动作的发生顺序等。基于视频内容进行特征提取和识别,并获得相应的动作指令属于本领域的现有技术,在此不再赘述。
子步骤103:将动作指令拆分为分动作指令和动作调度指令,并进行关联存储。
将在子步骤103中获得的动作指令进行拆分,得到分动作指令和动作调度指令,以便于后续调用。其中,分动作是指动物各部位的分解动作,其可以对应于唯一的指令编号。一条分动作指令可包括:分动作编号、动作对应部位、动作类型、动作方向、动作的相对起始时间和相对结束时间。其中,动作对应部位包括头部、四肢、尾巴等,动作类型包括摆动、转动、开合等。动作调度指令包括一系列动作中所包括的分动作的执行顺序、各分动作的起始时间、结束时间、持续时长等。
由于在后续过程中,需要实时在线频繁调用动作调度指令及动作调度指令中所涉及的分动作,对调用性能要求很高,因此需要对分动作指令及动作调度指令进行高性能存储。在示例性实施例中,以哈希链表对动作调度指令及相关的分动作指令进行关联存储,每次在线调用的时间复杂度为O(1)。哈希链表的存储格式如图2所示。
步骤2:基于既定语料和动作指令进行训练,建立事件匹配模型
在实施例中,事件匹配模型用于将用户语音指令映射匹配到具体的动作,从而智能设备可以根据用户语音指令执行所对应的动作。在实施例中,事件匹配模型是动物属性与目标动作的对应关系的概率模型。其中,动物属性是指与动物相关的特征,例如科属、叫声、体态等,目标动作是指当智能设备接收用户指令后,期待智能设备实施的动作。
在建立事件匹配模型之前,首先根据智能设备的应用领域和实际需求,选取用于建立事件匹配模型的语料。语料可以是业务产品定义或互联网上的百科知识中的动物介绍,也包括产品使用过程中产生的用户日志。
然后,从选取的语料中抽取动物属性,并将动物属性描述为结构化数据。可以利用自然语言处理中的词性标注、句法分析等技术,抽取语料中的动物属性。这属于现有技术,在此不再赘述。
最后,基于抽取的动物属性和步骤1中获得的动作指令建立事件匹配模型。建立事件匹配模型的方法主要有两类:
(1)规则方法:人工配置动物属性与动物类型的对应关系,当有多个对应关系时,给出所有可能列表。
(2)统计方法:统计模型包括朴素贝叶斯、决策树、支持向量机、深度学习等,其一般步骤为:
首先构造标注数据,格式为:
y x1 x2 x3..xn,
其中,y表示动物名称,x1–xn表示动物属性值。
建模目标为预测条件概率:p(y|x),这里以朴素贝叶斯举例如下:
根据贝叶斯公式p(x)*p(y|x)=p(y)*p(x|y),推导出p(y|x)=p(y)*p(x|y)/p(x),由于p(x)对于所有类别y来说都一致,可以进行优化省略分母的p(x),所以得出求p(y|x)的最优值,相当于求p(y)*p(x|y)的最优值。
根据上述推导,只需在语料中统计每个动物类别的概率(即p(yi))和每个动物类别下各个特征的概率,即p(xj|yi)。
(3)基于统计和规则相结合的方法:这是实际应用中比较多的方式,利用统计模型的输出结果,加上人工规则达到实用的目的,具体的计算方法分别和前两步骤一致。
以上三种建立事件匹配模型的方法属于现有技术,本领域技术人员能够应用以上方法建立事件匹配模型,因此不再详述其技术细节。
特别地,事件匹配模型还包括动物属性与动物类型的对应关系的概率模型。建立这一概率模型的目的是提高数据搜索效率。在实施例中,从动作样本中提取的动作指令(包括分动作指令和动作调度指令)按照动物类型分类存储于哈希链表中。例如,在“狗”这一动物类型下分别存储与“狗叫”、“狗摆尾”、“狗爬”相关的动作指令。在确定目标动作之后进一步确定实施该目标动作的动物类型可以在哈希链表中直接搜索到这一动物类型下与目标动作对应的动作指令,从而能够提高数据搜索效率,有利于实时在线频繁调用动作指令。在实施例中,事件匹配模型中涉及的动物类型与所用智能设备具有相似的外形结构,例如猫、狗、虎等四足动物。
在本发明实施例中,还可以根据产品使用过程中生成的用户日志,不断优化离线的事件匹配模型,使模型更精准。
建模后,以哈希链表或数据库形式存储事件匹配模型,供后续过程调用。
步骤3:将接收到的语音信号转换成目标文本,对目标文本进行语义分析,确定目标文本对应的目标事件
使用智能设备与用户进行交互时,智能设备可以接收用户发出的语音信号,其例如是PCM(Pulse Code Modulation,脉码编码调制)格式的语音信号,通过语音识别模块,语音信号被转换为目标文本,通过对目标文本进行语义分析,可以确定目标文本对应的目标事件。目标事件即用户发出的语音信号中指定的待执行动作,由智能设备来执行。
在接收用户发出的语音信号时,可以通过以下两种方式唤醒智能设备。第一种方式可称为被动唤醒,即通过用户输入,例如用户的语音指令、触摸、按键等唤醒智能设备;第二种方式可称为主动唤醒,在这种情况下,智能设备持续保持唤醒状态,或者可以根据时间等因素进行设置,使得智能设备能够主动唤醒,例如将智能设备设置为每十分钟主动唤醒一次。
在识别用户发出的语音信号时,可以选择本地识别或者云端识别两种识别方式。在本地识别中,智能设备接收到用户发出的语音信号后,直接调取本地语音识别模块进行识别,这种方式的优点是识别速度较快,但识别的词汇量有限。在云端识别中,智能设备接收到用户发出的语音信号后,将其发送到云端的语音识别模块进行识别,这种方式的优点是识别更准确、识别度更高,但速度相对较慢。
通过语音识别技术将语音转换为文本属于本领域的现有技术,其并不是本发明的重点。在示例性实施例中,可以根据实际应用场景选择合适的语音识别系统。
步骤4:基于事件匹配模型,根据目标事件获得相应的目标动作。
对于步骤3中确定的目标事件,根据步骤2中建立的事件匹配模型可以获得该目标事件对应的目标动作。
在本发明实施例中,采用贝叶斯模型建立事件匹配模型,因此应用该模型确定目标事件对应的目标动作即是计算针对事件匹配模型中涉及的每一个目标动作,计算在该目标动作发生的前提下,出现步骤3中所确定的目标事件的概率,然后选择概率值最大时对应的目标动作进行输出,作为目标事件所对应的目标动作。
特别地,由于事件匹配模型还可以包括动物属性与动物类型的对应关系的概率模型,因此该步骤3还可以包括根据目标事件确定实施目标动作的目标动物,其具体包括以下步骤:
从目标事件的对应语料中提取动物属性;
将动物属性与事件匹配模型进行匹配,即针对事件匹配模型中涉及的每种动物,计算在该种动物的前提下,所提取的动物属性出现的概率;
选择概率值最大时对应的动物作为目标动物。
例如,在步骤3中确定的目标事件为“模仿狗叫”,从其对应的语料中提取动物属性为“狗叫”,那么利用事件匹配模型可以计算以下概率:
p(狗叫|狗)=1,p(狗叫|虎)=0,p(狗叫|猫)=0
其中,概率值最大时对应的动物“狗”即为目标动物。
在该步骤中,如果不能确定哪一个概率值最大,那么可以根据预先设定的问题向用户提问,然后接收用户反馈的语音信息;接下来,将反馈的语音信息识别为反馈文本,并将反馈文本记录在用户日志中;最后,以用户日志中记录的反馈文本作为语料,在离线时对事件匹配模型进行训练,从而不断完善事件匹配模型,使其能更精准地进行语义匹配。
步骤5:调用目标动作对应的动作调度指令和分动作指令,根据动作调度指令和分动作指令驱动智能设备的相应的硬件组件
步骤5具体包括以下子步骤:
子步骤501:提取目标动作对应的动作调度指令和分动作指令
存储于智能设备的内存中的所有动作调度指令构成动作调度指令集,在该指令集中提取在步骤4中获得的目标动作所对应的动作调度指令以及该动作调度指令所涉及的分动作指令。在实施例中,动作调度指令和分动作指令以哈希链表存储,适于高性能调用。
子步骤502:判断所提取的分动作指令对应的硬件组件状态
智能设备包括一系列组件硬件,在子步骤501中提取的分动作指令对应于若干个组件硬件,需要其执行相应的动作。为了确定这些硬件组件处于正常状态,能够执行相应的动作,需要根据智能设备的硬件状态表,查询分动作指令操作的动作部位对应的硬件组件的状态,包括分动作指令与硬件组件是否匹配、分动作指令操作的硬件组件是否存在、硬件组件是否故障、当前是否可用等。
子步骤503:根据提取的动作调度指令和分动作指令,向对应的硬件组件发送硬件动作指令,驱动对应的硬件组件
当判断硬件组件状态正常之后,可以根据所提取的动作调度指令和分动作指令,向对应的硬件组件发送硬件动作指令,驱动对应的硬件组件。在指令发送和硬件组件驱动过程中,可以将动作调度指令中的相对时间转换为本地绝对时间,避免动作时序错误。
执行以上步骤之后,智能设备开始进行动作模仿,对用户发出的指令或问题进行响应,输出包含动作、声音、图形界面或图像、文字的响应结果。硬件组件的响应可包括显示屏动画、机器人动作、麦克风声音输出等,这些输出响应的原理都是相同的。
实施例1
以下参考实施例1说明本发明的智能设备的动作模拟交互方法的原理和步骤。
步骤1:针对选取的动作样本进行分析提取,获得相应的动作指令
首先,通过互联网搜索各类动物的动作视频,或者用智能机器人自带摄像头即时拍摄动物的动作视频。各类动物的动作视频可以包括猫的动作视频,狗的动作视频等等。针对动作视频,还可以自定义更细节的动作样本,如猫睡觉,猫走路,狗叫等。这些动作视频作为待模仿的动作样本。
然后,对获取的动作样本分别逐帧进行特征提取,根据提取的特征进行识别,得到动作样本对应的动作指令。然后,将动作指令拆分为分动作指令和动作调度指令。分动作指令包括:分动作编号、动作对应部位、动作类型、动作方向、相对起始时间、相对结束时间。动作调度指令包括分动作的执行顺序、各分动作的起始时间、结束时间、持续时长。
例如,通过图像识别可以识别出动作对应部位,例如头部、四肢、尾巴等,还能够识别出相应动作对应部位的动作类型、方向等。以“狗叫”这一动作样本为例,对应于“狗叫”的分动作指令如下表1所示:
表1图像识别结果示例
对应于“狗叫”的动作调度指令如下:
分动作执行顺序为:
动作1–动作4–动作2–动作5–动作3–动作2……
各分动作的起始时间和结束时间为:
动作1:开始时间00:00结束时间00:03
动作4:开始时间00:00结束时间00:05
动作2:开始时间00:01结束时间00:01:50
动作5:开始时间00:01结束时间00:02
动作3:开始时间00:01:50结束时间00:02
动作2:开始时间00:02:10结束时间00:02:60
动作3:开始时间00:02:60结束时间00:03:10
……
最后,将分动作指令和动作调度指令以哈希链表的方式进行存储。
步骤2:基于既定语料和动作指令进行训练,建立事件匹配模型
首先,选择用于训练事件匹配模型的语料,语料可以是业务产品定义或互联网上的百科知识中的动物介绍,也包括产品使用过程中产生的用户日志。
然后,从选择的语料中提取动物属性,这一步骤主要采用自然语言处理技术进行词性标注和句法分析,分析出描述主题和对应的属性。描述主题主要涉及一类动物,对应属性涉及相关动物的特征。动物属性描述方法很多,这里以三元组举例,例如:
(猫 叫声 喵喵)
(猫 科属 猫科)
(虎 科属 猫科)
(狗 叫声 汪汪)
(狗 科属 犬科)
接下来,基于从语料中提取的动物属性和步骤1中获得的动作指令建立事件匹配模型。在本实施例中,选择贝叶斯模型建立事件匹配模型,对于以上提取的动物属性,针对“狗叫”这一目标动作,每个动物属性的概率如下:
p(喵喵|狗叫)=0
p(猫科|狗叫)=0
p(犬科|狗叫)=0.5
p(汪汪|狗叫)=1
此外,在实施例中,还利用贝叶斯模型建立动物属性与动物类型的对应关系的概率模型,对于以上提取的动物属性,针对概率模型中涉及的每种动物,每个动物属性的概率如下:
p(喵喵|猫)=1
p(猫科|猫)=0.5
p(猫科|虎)=0.5
p(犬科|狗)=1
最后,将建立的事件匹配模型,即上述概率结果以哈希链表的方式存储,供后续调用。
步骤3:接收用户发出的语音指令,将其转换成目标文本,通过语义分析确定目标文本对应的目标事件
在本步骤中,首先通过语音唤醒词或者触摸、按钮等方式唤醒智能设备,然后,智能设备接收用户发出的语音指令,例如“模仿一下狗叫”。接下来,通过语音识别模块,将接收到的语音指令转换成目标文本“模仿一下狗叫”。
通过语义分析可以得到目标文本中的动词短语(即“模仿一下”)和宾语(即“狗叫”),因此,目标文本对应的目标事件为“模仿狗叫”。
步骤4:基于事件匹配模型,根据目标事件获得相应的目标动作和实施目标动作的目标动物
基于步骤2建立的事件匹配模型,可以获得p(狗叫|狗叫)=1,因此目标事件对应的目标动作为“狗叫”。
然后基于步骤2建立的事件匹配模型中涉及的每种动物,计算在该种动物的前提下,目标事件的属性词(即“狗叫”)出现的概率:
p(狗叫|狗)=1,p(狗叫|虎)=0,p(狗叫|猫)=0
其中,p(狗叫|狗)的概率值最大,因此目标动物是狗。
步骤5:在哈希链表中调用目标动作对应的动作调度指令和分动作指令,根据动作调度指令和分动作指令驱动相应的硬件组件
在哈希链表中提取“狗”这一类别下存储的目标动作“狗叫”所对应的动作调度指令如下:
分动作执行顺序为:
动作1–动作4–动作2–动作5–动作3–动作2
各个分动作的起始时间和结束时间为:
动作1:开始时间00:00结束时间00:03
动作4:开始时间00:00结束时间00:05
动作2:开始时间00:01结束时间00:01:50
动作5:开始时间00:01结束时间00:02
动作3:开始时间00:01:50结束时间00:02
动作2:开始时间00:02:10结束时间00:02:60
动作3:开始时间00:02:60结束时间00:03:10
该动作调度指令涉及的分动作指令包括动作1至动作5。
分动作指令对应的硬件组件包括头部组件、嘴部组件、尾巴组件和音频播放器。查询这些硬件组件的状态,在确认状态正常之后,向这些硬件组件发送硬件动作指令,硬件动作指令包括:
1)音频播放的开始时间、音频地址;
2)头部组件的动作类型、动作方向、开始时间、结束时间;
3)尾巴组件的动作类型、动作方向、开始时间、结束时间;
4)尾巴组件的动作类型、动作方向、开始时间、结束时间;等等。
根据硬件动作指令驱动这些硬件组件按照动作调度指令所指定的时间和顺序执行动作,从而智能设备可以模仿狗叫动作。
实施例2
以下参考实施例2进一步说明本发明的智能设备的动作模拟交互方法的原理和步骤。
在本实施例中,步骤1和2与实施例1相同。
在步骤3中,用户发出的语音指令是“模仿汪星人叫”,将该语音指令转换成目标文本为“模仿汪星人叫”。通过语义分析可以得到目标文本中的动词短语(即“模仿一下”)和宾语(即“汪星人叫”),因此,目标文本对应的目标事件为“模仿汪星人叫”。
在步骤4中,由于步骤2建立的事件匹配模型无法识别“汪星人”,因此,对于所有动物的概率都是0:
p(汪星人叫|狗)=0,p(汪星人叫|虎)=0,p(汪星人叫|猫)=0
在这种情况下,智能设备向用户发出提问:“汪星人是什么动物?”,用户通过语音回复:“狗”。然后,将用户反馈识别为反馈文本后记录在用户日志中,通过离线数据挖掘将“汪星人”与“狗”对应起来,从而可以得到以下结果:
p(汪星人叫|狗)=1,p(汪星人叫|虎)=0,p(汪星人叫|猫)=0
后续步骤与实施例1相同,可以调用对应的动作调度指令,驱动相应的硬件。
本发明实施例还提供一种智能设备的动作模拟交互装置,如图3所示,包括:
动作指令提取模块301,用于针对选取的动作样本进行分析提取,获得相应的动作指令,所述动作指令包括分动作指令和动作调度指令;
事件匹配模型建模模块302,用于基于既定语料和所述动作指令进行训练,建立事件匹配模型;
文本转换识别模块303,用于将接收到的语音信号转换成目标文本,对所述目标文本进行语义分析,确定所述目标文本对应的目标事件;
目标动作生成模块304,用于基于所述事件匹配模型,根据所述目标事件获得相应的目标动作;
驱动模块305,用于调用所述目标动作对应的动作调度指令和分动作指令,根据所述动作调度指令和分动作指令驱动所述智能设备的相应的硬件组件。
优选地,所述针对选取的动作样本进行分析提取包括:
采集全网用户的动作样本;
针对所述动作样本分别逐帧进行特征提取,根据提取的特征进行识别,得到所述动作样本对应的动作指令;
将所述动作指令拆分为分动作指令和动作调度指令,并进行关联存储。
优选地,所述分动作指令用于限定动作对应部位、动作类型、动作方向、动作相对起始时间、动作相对结束时间中的一项或多项;所述动作调度指令用于限定分动作执行顺序、各分动作的起始时间和结束时间。
优选地,所述事件匹配模型包括动物属性与目标动作的对应关系的概率模型。
优选地,所述事件匹配模型还包括动物属性与动物类型的对应关系的概率模型。
优选地,所述根据所述目标事件获得相应的目标动作时,还包括:
从所述目标事件的对应语料中提取动物属性;
针对所述事件匹配模型中涉及的每种动物,计算在该种动物的前提下,所提取的动物属性出现的概率;
选择概率值最大时对应的动物作为实施所述目标动作的目标动物。
优选地,所述智能设备的动作模拟交互装置还包括:
反馈模块,用于根据预先设定的问题向用户提问,并接收用户反馈的语音信息;
记录模块,用于识别所述用户反馈的语音信息,获得反馈文本,并将所述反馈文本记录在用户日志中;
优化模块,用于以所述用户日志中记录的反馈文本作为语料,对所述事件匹配模型进行优化。
优选地,所述调用所述目标动作对应的动作调度指令和分动作指令,根据所述动作调度指令和分动作指令驱动所述智能设备的相应的硬件组件包括:
提取所述目标动作对应的动作调度指令和分动作指令;
判断所提取的分动作指令对应的硬件组件状态;
根据所提取的动作调度指令和分动作指令,向对应的硬件组件发送硬件动作指令,驱动对应的硬件组件。
本发明实施例还提供一种智能设备,包括上述的动作模拟交互装置。
以上对本发明所提供的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。