一种语音驱动虚拟人的口令理解方法技术

技术编号:30788863 阅读:10 留言:0更新日期:2021-11-16 07:51
本发明专利技术公开了一种语音驱动虚拟人的口令理解方法,包括:确定待理解口令文本;将待理解口令文本输入至口令理解模型中,得到口令理解模型输出的口令理解结果;口令理解模型包含词向量训练模块、词向量修正模块、余弦相似度计算模块三部分;词向量训练模块基于训练集采用D

【技术实现步骤摘要】
一种语音驱动虚拟人的口令理解方法


[0001]本专利技术属于虚拟现实
,具体涉及一种虚拟人的口令理解方法。

技术介绍

[0002]随着虚拟现实技术的发展,人们希望参与到观看到的VR场景中,目前较为普遍的VR场景交互方式为用户通过佩戴头盔以第一视角沉浸在VR场景中,然后利用操作手柄进行姿态变换、物体抓取等动作实现交互。但现有的这种交互方式建立在肢体动作或手动操作基础上,对于虚拟人的操作还不够简单,而通过语音控制方式直接驱动虚拟人动作,能简化虚拟人的操作过程,减少现实中的肢体交互动作,使得虚拟人物的控制方式更加自然、方便、灵活,也有益于用户接受。
[0003]实现语音驱动虚拟人,需将用户口令进行语音识别,并根据语音识别得到的文本理解出用户的意图,以便进一步的控制虚拟人做出相应的动作。由于人类语言具有多样性和复杂性,针对于一种意图的语言表达可能有多种形式,因此经过语音识别得到的文本表达也具有多样性,具体来讲,存在多种不同的语言表达最后是控制虚拟人执行同一个动作。而目前针对语音驱动虚拟人运动的研究中,大多是通过对固定口令进行语音识别,然后根据语音识别出的文本直接匹配虚拟人动作变量,从而实现虚拟人运动控制的,当用户想要虚拟人执行“抬头”动作,就必须要发出“抬头”的规定口令,当发出“抬起头”、“仰头”、“仰望”、“抬头看”、“看上面”、“往上看”等这些与“抬头”同一动作不同语言表达的口令时,虚拟人不能顺利执行“抬头”动作。虚拟现实强调沉浸感,若用户仅能以规定口令来控制虚拟人运动的话,将影响用户体验感和在VR场景的沉浸感。

技术实现思路

[0004]为了克服现有技术的不足,本专利技术提供了一种语音驱动虚拟人的口令理解方法,包括:确定待理解口令文本;将待理解口令文本输入至口令理解模型中,得到口令理解模型输出的口令理解结果;口令理解模型包含词向量训练模块、词向量修正模块、余弦相似度计算模块三部分;词向量训练模块基于训练集采用D

Skip

Gram算法进行词向量学习,得到词向量空间;词向量修正模块基于虚拟人动作指令库建立语义约束条件,得到修正后的词向量空间;余弦相似度计算模块在修正后的词向量空间中计算余弦相似度,实现对口令文本的理解。本专利技术方法能将同一涵义不同语言表达的口令理解为同一个动作指令,使用户以自己的口语表达习惯来表示意图,有益于提升语音驱动虚拟人的用户体验感。
[0005]本专利技术解决其技术问题所采用的技术方案包括如下步骤:
[0006]步骤1:确定待理解口令文本;待理解口令文本即需要进行意图理解的文本,是对用户输入的口令进行语音识别得到的;
[0007]步骤2:将所述待理解口令文本输入至口令理解模型中,得到口令理解结果;其中,所述口令理解模型包括词向量训练模块、词向量修正模块和余弦相似度计算模块三部分;
[0008]步骤2

1:所述词向量训练模块对训练集采用D

Skip

Gram算法进行词向量学习,
得到词向量空间;
[0009]步骤2

2:所述词向量修正模块基于虚拟人动作指令库建立语义约束条件,进而构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间;
[0010]步骤2

3:所述余弦相似度计算模块在修正后的词向量空间中,计算出与待理解口令文本词向量的余弦距离最近的词向量所对应的虚拟人动作指令,进而输出这一虚拟人动作指令,得到口令理解结果。
[0011]进一步地,所述步骤2

1中的训练集获取方法如下:
[0012]使用结巴分词器读取开源语料库文本,先采用精确模式进行分词,得到分词后的文本集,判断文本集中的词是否与停用词表匹配,若匹配则删除该词,若不匹配,则保留该词,直到将分词后的文本集中的每个词都遍历完,完成文本预处理操作,得到训练集V={w1,w2,w3,

,w
t


w
|V|
},w
t
表示训练集的第t个词。
[0013]进一步地,所述D

Skip

Gram算法是在Skip

gram算法的模型基础上为每个词引入一个方向标签,结合词在上下文中的共现信息和方向信息共同学习词的向量表示,具体步骤为:
[0014]步骤2
‑1‑
1:计算给定词w
t
时的上下文词w
t+i
的出现概率p(w
t+i
|w
t
):
[0015][0016]式中,exp表示以e为底的指数函数;V表示训练集;是词w
t
的词向量表示;当i<0时,w
t+i
表示词w
t
的上文第i个词,当i>0时,w
t+i
表示词w
t
的下文第i个词;是词w
t+i
的词向量表示,是的转置矩阵;
[0017]步骤2
‑1‑
2:定义方向函数g(w
t+i
,w
t
),用来度量上下文词与给定词之间的方向信息,计算公式为:
[0018][0019]式中,表示上下文词w
t+i
相对于给定词w
t
的方向向量,是的转置矩阵;
[0020]步骤2
‑1‑
3:构造D

Skip

Gram算法的目标函数L
D

SG
,计算公式为:
[0021][0022]式中,L
D

SG
表示D

Skip

Gram算法的目标函数,|V|表示训练集的词汇数;c是上下文词的窗口的大小;
[0023]步骤2
‑1‑
4:采用反向传播算法和随机梯度下降法更新D

Skip

Gram算法的目标函数L
D

SG
的参数,使函数值L
D

SG
最大化,更新范式为:
[0024][0025][0026]其中,分别是词w
t
更新后和更新前的词向量;分别是w
t+i
相对于w
t
更新后和更新前的方向向量;η是学习率;D是w
t+i
相对于w
t
的方向标签,定义为:
[0027][0028]当w
t+i
位于w
i
左侧时,D=1,当w
t+i
位于w
t
右侧时,D=0;
[0029]经过迭代后,得到词向量空间其中,下标N是词向量的个数,且N=|V|,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种语音驱动虚拟人的口令理解方法,其特征在于,包括以下步骤:步骤1:确定待理解口令文本;待理解口令文本即需要进行意图理解的文本,是对用户输入的口令进行语音识别得到的;步骤2:将所述待理解口令文本输入至口令理解模型中,得到口令理解结果;其中,所述口令理解模型包括词向量训练模块、词向量修正模块和余弦相似度计算模块三部分;步骤2

1:所述词向量训练模块对训练集采用D

Skip

Gram算法进行词向量学习,得到词向量空间;步骤2

2:所述词向量修正模块基于虚拟人动作指令库建立语义约束条件,进而构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间;步骤2

3:所述余弦相似度计算模块在修正后的词向量空间中,计算出与待理解口令文本词向量的余弦距离最近的词向量所对应的虚拟人动作指令,进而输出这一虚拟人动作指令,得到口令理解结果。2.根据权利要求1所述的一种语音驱动虚拟人的口令理解方法,其特征在于,所述步骤2

1中的训练集获取方法如下:使用结巴分词器读取开源语料库文本,先采用精确模式进行分词,得到分词后的文本集,判断文本集中的词是否与停用词表匹配,若匹配则删除该词,若不匹配,则保留该词,直到将分词后的文本集中的每个词都遍历完,完成文本预处理操作,得到训练集V={w1,w2,w3,

,w
t


w
|V|
},w
t
表示训练集的第t个词。3.根据权利要求2所述的一种语音驱动虚拟人的口令理解方法,其特征在于,所述D

Skip

Gram算法是在Skip

gram算法的模型基础上为每个词引入一个方向标签,结合词在上下文中的共现信息和方向信息共同学习词的向量表示,具体步骤为:步骤2
‑1‑
1:计算给定词w
t
时的上下文词w
t+i
的出现概率p(w
t+i
|w
t
):式中,exp表示以e为底的指数函数;V表示训练集;是词w
t
的词向量表示;当i<0时,w
t+i
表示词w
t
的上文第i个词,当i>0时,w
t+i
表示词w
t
的下文第i个词;是词w
t+i
的词向量表示,是的转置矩阵;步骤2
‑1‑
2:定义方向函数g(w
t+i
,w
t
),用来度量上下文词与给定词之间的方向信息,计算公式为:式中,表示上下文词w
t+i
相对于给定词w
t
的方向向量,是的转置矩阵;步骤2
‑1‑
3:构造D

Skip

Gram算法的目标函数L
D

SG
,计算公式为:式中,L
D

SG
表示D

Skip

Gram算法的目标函数,|V|表示训练集的词汇数;c是上下文词的窗口的大小;
步骤2
‑1‑
4:采用反向传播算法和随机梯度下降法更新D

Skip

Gram算法的目标函数L
D

SG
的参数,使函数值L

【专利技术属性】
技术研发人员:樊养余刘洋殷丽丽张新景何雯清粟晨
申请(专利权)人:西北工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1