CN113643703B - 一种语音驱动虚拟人的口令理解方法 - Google Patents
一种语音驱动虚拟人的口令理解方法 Download PDFInfo
- Publication number
- CN113643703B CN113643703B CN202110903859.3A CN202110903859A CN113643703B CN 113643703 B CN113643703 B CN 113643703B CN 202110903859 A CN202110903859 A CN 202110903859A CN 113643703 B CN113643703 B CN 113643703B
- Authority
- CN
- China
- Prior art keywords
- word
- word vector
- password
- text
- function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 239000013598 vector Substances 0.000 claims abstract description 184
- 230000009471 action Effects 0.000 claims abstract description 53
- 238000012937 correction Methods 0.000 claims abstract description 35
- 238000012549 training Methods 0.000 claims abstract description 34
- 238000004364 calculation method Methods 0.000 claims abstract description 29
- 230000014509 gene expression Effects 0.000 claims abstract description 26
- 230000006870 function Effects 0.000 claims description 70
- 238000011478 gradient descent method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 6
- 230000000875 corresponding effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 2
- 238000007654 immersion Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种语音驱动虚拟人的口令理解方法,包括:确定待理解口令文本;将待理解口令文本输入至口令理解模型中,得到口令理解模型输出的口令理解结果;口令理解模型包含词向量训练模块、词向量修正模块、余弦相似度计算模块三部分;词向量训练模块基于训练集采用D‑Skip‑Gram算法进行词向量学习,得到词向量空间;词向量修正模块基于虚拟人动作指令库建立语义约束条件,得到修正后的词向量空间;余弦相似度计算模块在修正后的词向量空间中计算余弦相似度,实现对口令文本的理解。本发明方法能将同一涵义不同语言表达的口令理解为同一个动作指令,使用户以自己的口语表达习惯来表示意图,有益于提升语音驱动虚拟人的用户体验感。
Description
技术领域
本发明属于虚拟现实技术领域,具体涉及一种虚拟人的口令理解方法。
背景技术
随着虚拟现实技术的发展,人们希望参与到观看到的VR场景中,目前较为普遍的VR场景交互方式为用户通过佩戴头盔以第一视角沉浸在VR场景中,然后利用操作手柄进行姿态变换、物体抓取等动作实现交互。但现有的这种交互方式建立在肢体动作或手动操作基础上,对于虚拟人的操作还不够简单,而通过语音控制方式直接驱动虚拟人动作,能简化虚拟人的操作过程,减少现实中的肢体交互动作,使得虚拟人物的控制方式更加自然、方便、灵活,也有益于用户接受。
实现语音驱动虚拟人,需将用户口令进行语音识别,并根据语音识别得到的文本理解出用户的意图,以便进一步的控制虚拟人做出相应的动作。由于人类语言具有多样性和复杂性,针对于一种意图的语言表达可能有多种形式,因此经过语音识别得到的文本表达也具有多样性,具体来讲,存在多种不同的语言表达最后是控制虚拟人执行同一个动作。而目前针对语音驱动虚拟人运动的研究中,大多是通过对固定口令进行语音识别,然后根据语音识别出的文本直接匹配虚拟人动作变量,从而实现虚拟人运动控制的,当用户想要虚拟人执行“抬头”动作,就必须要发出“抬头”的规定口令,当发出“抬起头”、“仰头”、“仰望”、“抬头看”、“看上面”、“往上看”等这些与“抬头”同一动作不同语言表达的口令时,虚拟人不能顺利执行“抬头”动作。虚拟现实强调沉浸感,若用户仅能以规定口令来控制虚拟人运动的话,将影响用户体验感和在VR场景的沉浸感。
发明内容
为了克服现有技术的不足,本发明提供了一种语音驱动虚拟人的口令理解方法,包括:确定待理解口令文本;将待理解口令文本输入至口令理解模型中,得到口令理解模型输出的口令理解结果;口令理解模型包含词向量训练模块、词向量修正模块、余弦相似度计算模块三部分;词向量训练模块基于训练集采用D-Skip-Gram算法进行词向量学习,得到词向量空间;词向量修正模块基于虚拟人动作指令库建立语义约束条件,得到修正后的词向量空间;余弦相似度计算模块在修正后的词向量空间中计算余弦相似度,实现对口令文本的理解。本发明方法能将同一涵义不同语言表达的口令理解为同一个动作指令,使用户以自己的口语表达习惯来表示意图,有益于提升语音驱动虚拟人的用户体验感。
本发明解决其技术问题所采用的技术方案包括如下步骤:
步骤1:确定待理解口令文本;待理解口令文本即需要进行意图理解的文本,是对用户输入的口令进行语音识别得到的;
步骤2:将所述待理解口令文本输入至口令理解模型中,得到口令理解结果;其中,所述口令理解模型包括词向量训练模块、词向量修正模块和余弦相似度计算模块三部分;
步骤2-1:所述词向量训练模块对训练集采用D-Skip-Gram算法进行词向量学习,得到词向量空间;
步骤2-2:所述词向量修正模块基于虚拟人动作指令库建立语义约束条件,进而构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间;
步骤2-3:所述余弦相似度计算模块在修正后的词向量空间中,计算出与待理解口令文本词向量的余弦距离最近的词向量所对应的虚拟人动作指令,进而输出这一虚拟人动作指令,得到口令理解结果。
进一步地,所述步骤2-1中的训练集获取方法如下:
使用结巴分词器读取开源语料库文本,先采用精确模式进行分词,得到分词后的文本集,判断文本集中的词是否与停用词表匹配,若匹配则删除该词,若不匹配,则保留该词,直到将分词后的文本集中的每个词都遍历完,完成文本预处理操作,得到训练集V={w1,w2,w3,…,wt,…w|V|},wt表示训练集的第t个词。
进一步地,所述D-Skip-Gram算法是在Skip-gram算法的模型基础上为每个词引入一个方向标签,结合词在上下文中的共现信息和方向信息共同学习词的向量表示,具体步骤为:
步骤2-1-1:计算给定词wt时的上下文词wt+i的出现概率p(wt+i|wt):
式中,exp表示以e为底的指数函数;V表示训练集;是词wt的词向量表示;当i<0时,wt+i表示词wt的上文第i个词,当i>0时,wt+i表示词wt的下文第i个词;/>是词wt+i的词向量表示,/>是/>的转置矩阵;
步骤2-1-2:定义方向函数g(wt+i,wt),用来度量上下文词与给定词之间的方向信息,计算公式为:
式中,表示上下文词wt+i相对于给定词wt的方向向量,/>是/>的转置矩阵;
步骤2-1-3:构造D-Skip-Gram算法的目标函数LD-SG,计算公式为:
式中,LD-SG表示D-Skip-Gram算法的目标函数,|V|表示训练集的词汇数;c是上下文词的窗口的大小;
步骤2-1-4:采用反向传播算法和随机梯度下降法更新D-Skip-Gram算法的目标函数LD-SG的参数,使函数值LD-SG最大化,更新范式为:
其中,分别是词wt更新后和更新前的词向量;分别是wt+i相对于wt更新后和更新前的方向向量;η是学习率;D是wt+i相对于wt的方向标签,定义为:
当wt+i位于wi左侧时,D=1,当wt+i位于wt右侧时,D=0;
经过迭代后,得到词向量空间其中,下标N是词向量的个数,且N=|V|,即与训练集的词数相等。
进一步地,所述基于虚拟人动作指令库建立语义约束条件,约束条件包括同义词约束集S和异义词约束集A,具体如下:
根据虚拟人动作指令库,从《同义词词林》和CSC中文语义词库中找出虚拟人动作指令的同义及近义表达,将虚拟人动作指令及其同义和近义表达两两搭配组成同义词约束集S,不同指令的各种表达方式两两搭配组成异义词约束集A;两个约束集中均以词对(wp,wq)的形式保存具有同义关系或异义关系的词。
进一步地,所述构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间的方法为:所述词向量修正函数包括同义词吸引子函数、异义词排斥子函数、词向量保持子函数,将步骤2-1训练出的词向量输入到词向量修正函数中,并采用随机梯度下降法最小化损失,得到修正后的词向量空间,具体步骤如下:
步骤2-2-1:基于同义词约束集S和余弦距离构造同义词吸引子函数计算公式为:
式中,是损失函数;(wp,wq)是同义词约束集S中的同义词词对;分别是词wp,wq修正后的词向量表示;/>表示/>的余弦距离;α表示同义词词向量间的理想最大距离;
步骤2-2-2:基于异义词约束集A和余弦距离构造异义词排斥子函数计一算公式为:
式中,(wp,wq)是异义词约束集A中的异义词词对;β表示异义词词向量间的理想最小距离;
步骤2-2-3:基于余弦距离构造词向量保持子函数计算公式为:
其中,是词wt修正后的词向量表示;
步骤2-2-4:分配权值,结合同义词吸引子函数、异义词排斥子函数和词向量保持子函数构造出词向量修正函数,对词向量进行修正,计算公式为:
γ1+γ2+γ3=1 (11)
式中,表示词向量修正方法的目标函数,由三部分函数损失加权确定,γ1、γ2、γ3是控制三部分子函数权重的参数;
采用随机梯度下降法对目标函数的最小值进行求解,迭代得到修正后的词向量空间
进一步地,所述步骤2-3具体包括:
获取输入的待理解口令文本在修正后的词向量空间中对应的词向量;计算待理解口令文本词向量与虚拟人动作指令库中的所有动作指令的词向量的余弦距离,选取余弦距离最接近1的词向量所对应的动作指令,并输出这一动作指令作为口令文本的理解结果。
进一步地,所述余弦距离定义为:
式中,n是词向量的维数;分别表示词向量/>的在第i个维度上的向量分量。
进一步地,所述c=5,η=0.025,α=0,β=1,γ1=0.33,γ2=0.33,γ3=0.34。
本发明的有益效果如下:
1、本发明基于Skip-Gram算法提出了一种带方向标签的D-Skip-Gram算法,能根据上下文信息和方向信息训练词向量,得到词向量空间;以虚拟人动作指令库为基础建立语义约束条件,构造词向量修正函数对词向量进行轻量级修正,进而得到修正后的词向量空间,解决了因同义词和反义词拥有相似的上下文信息而存在的词向量空间中反义词词向量比近义词词向量更接近的问题,使在修正后的词向量空间中,同义词的词向量互相靠近,异义词的词向量互相远离,进而有利于在修正后的词向量空间,通过计算余弦相似度实现对口令文本的理解。
2、本发明所提供的一种语音驱动虚拟人的口令理解方法,在修正后的词向量空间,通过词向量的相似度计算,得到口令文本的理解结果,能将具有同一涵义、不同语言表达的口令理解为同一个动作指令,使不同用户以自己的口语表达习惯来表示意图,进而语音控制虚拟人执行相关动作,这一方法克服规定口令控制规定动作的局限性,能进一步增强用户语音驱动虚拟人的体验感和在虚拟现实环境中的沉浸感。
附图说明
图1是本发明一种语音驱动虚拟人的口令理解方法的流程示意图。
图2是本发明口令理解模型的模块示意图。
图3是本发明中文本预处理的流程示意图。
图4是本发明中Skip-Gram算法的模型示意图。
图5是本发明中D-Skip-Gram算法的模型示意图。
图6是本发明中词向量修正的流程示意图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
本发明目的在于提供一种语音驱动虚拟人的口令理解方法,将具有同一涵义、不同语言表达的口令理解为同一个动作指令,使单一用户可以使用表示同一意图的多种口令来语音控制虚拟人执行同一个动作,或者使多个用户能以自己的口语表达习惯来表示意图,进而语音控制虚拟人执行相关动作,这一方法的应用将进一步增强用户的体验感和在虚拟现实环境中的沉浸感。
如图1所示,一种语音驱动虚拟人的口令理解方法,包括如下步骤:
步骤1:确定待理解口令文本;待理解口令文本即需要进行意图理解的文本,是对用户输入的口令进行语音识别得到的;例如用户发出口令“把门打开”,此处“把门打开”即为待理解口令文本;
步骤2:将所述待理解口令文本输入至口令理解模型中,得到口令理解结果;如图2所示,其中,所述口令理解模型包括词向量训练模块、词向量修正模块和余弦相似度计算模块三部分;
步骤2-1:所述词向量训练模块对训练集采用D-Skip-Gram算法进行词向量学习,得到词向量空间;其中,所述训练集是对中文语料库进行分词、去除停用词的文本预处理操作后生成的;所述D-Skip-Gram算法是在Skip-Gram算法基础上添加方向标签构造得到的,能通过学习上下文信息来用词向量的方式表征词的语义信息,进而使得语义上相似的词在词向量空间内距离接近;
步骤2-2:所述词向量修正模块基于虚拟人动作指令库建立语义约束条件,进而构造出词向量修正函数,对词向量进行轻量级修正,得到修正后的词向量空间;其中,所述虚拟人动作指令库是虚拟人可执行的交互动作的集合;所述语义约束条件包含虚拟人动作指令的同义词约束集和异义词约束集;所述词向量修正函数由同义词吸引子函数、异义词排斥子函数、词向量保持子函数三个子函数构成;所述词向量轻量级修正是通过所述词向量修正函数,对词向量进行修正,得到修正后的词向量空间;
步骤2-3:所述余弦相似度计算模块在修正后的词向量空间中,计算出与待理解口令文本词向量的余弦距离最近的词向量所对应的虚拟人动作指令,进而输出这一虚拟人动作指令,得到口令理解结果。
进一步地,所述步骤2-1中的训练集获取方法如下:
如图3所示,对文本预处理,使用结巴分词器读取开源语料库文本,先采用精确模式进行分词,得到分词后的文本集,判断文本集中的词是否与停用词表匹配,若匹配则删除该词,若不匹配,则保留该词,直到将分词后的文本集中的每个词都遍历完,完成文本预处理操作,得到训练集V={w1,w2,w3,…,wt,…w|V|},wt表示训练集的第t个词。
进一步地,所述D-Skip-Gram算法是在Skip-gram算法的模型基础上为每个词引入一个方向标签,结合词在上下文中的共现信息和方向信息共同学习词的向量表示;
图4是Skip-Gram算法的模型示意图,Skip-Gram算法是一个包括输入层、隐藏层和输出层的三层神经网络模型,其中,模型输入为词wI,输出是wI的上下文相邻词…,wOI-2,wOI-1,wOI+1,wOI+2,…,输出词个数由模型上下文词窗口大小决定;隐藏层的权重矩阵包含了训练集所有词汇的输出词向量,模型通过反向传播算法和随机梯度下降法来更新权重矩阵,训练词向量。
如图5所示,是本发明中D-Skip-Gram算法的模型示意图,D-Skip-Gram算法是在Skip-gram算法的模型基础上为每个词引入一个方向标签,结合词在上下文中的共现信息和方向信息共同学习词的向量表示,即D-Skip-Gram算法训练出的词向量将多一个维度来表示方向信息,这使词向量信息更丰富。
D-Skip-Gram算法的具体步骤为:
步骤2-1-1:计算给定词wt时的上下文词wt+i的出现概率p(wt+i|wt):
式中,exp表示以e为底的指数函数;V表示训练集;是词wt的词向量表示;当i<0时,wt+i表示词wt的上文第i个词,当i>0时,wt+i表示词wt的下文第i个词;/>是词wt+i的词向量表示,/>是/>的转置矩阵;
步骤2-1-2:定义方向函数g(wt+i,wt),用来度量上下文词与给定词之间的方向信息,计算公式为:
式中,表示上下文词wt+i相对于给定词wt的方向向量,/>是/>的转置矩阵;
步骤2-1-3:构造D-Skip-Gram算法的目标函数LD-SG,计算公式为:
式中,LD-SG表示D-Skip-Gram算法的目标函数,|V|表示训练集的词汇数;c是上下文词的窗口的大小,本发明实施例设c=5;
步骤2-1-4:采用反向传播算法和随机梯度下降法更新D-Skip-Gram算法的目标函数LD-SG的参数,使函数值LD-SG最大化,更新范式为:
其中,分别是词wt更新后和更新前的词向量;分别是wt+i相对于wt更新后和更新前的方向向量;η是学习率,本实施例初始学习率设为0.025;D是wt+i相对于wt的方向标签,定义为:
当wt+i位于wt左侧时,D=1,当wt+i位于wt右侧时,D=0;
本实施例经过5次迭代后,得到词向量空间其中,下标N是词向量的个数,且N=|V|,即与训练集的词数相等。
进一步地,所述基于虚拟人动作指令库建立语义约束条件,约束条件包括同义词约束集S和异义词约束集A,具体如下:
所述虚拟人动作指令库是虚拟人可执行的交互动作的集合,根据虚拟人动作指令库,结合人们日常表达习惯从《同义词词林》和CSC中文语义词库中找出虚拟人动作指令的同义及近义表达,将虚拟人动作指令及其同义和近义表达两两搭配组成同义词约束集S,不同指令的各种表达方式两两搭配组成异义词约束集A;两个约束集中均以词对(wp,wq)的形式保存具有同义关系或异义关系的词。
进一步地,所述构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间的方法为:如图6所示,所述词向量修正函数包括同义词吸引子函数、异义词排斥子函数、词向量保持子函数,将步骤2-1训练出的词向量输入到词向量修正函数中,并采用随机梯度下降法最小化损失,得到修正后的词向量空间,具体步骤如下:
步骤2-2-1:基于同义词约束集S和余弦距离构造同义词吸引子函数计算公式为:
式中,是损失函数;(wp,wq)是同义词约束集S中的同义词词对;分别是词wp,wq修正后的词向量表示;/>表示/>的余弦距离;α表示同义词词向量间的理想最大距离,本实施例设为0,即同义约束的优化目标是同义词对的词向量相同。
步骤2-2-2:基于异义词约束集A和余弦距离构造异义词排斥子函数计算公式为:
式中,(wp,wq)是异义词约束集A中的异义词词对;β表示异义词词向量间的理想最小距离,本实施例设为1,即异义约束的优化目标是异义词对的词向量正交。
步骤2-2-3:基于余弦距离构造词向量保持子函数计算公式为:
其中,是词wt修正后的词向量表示;
步骤2-2-4:分配权值,结合同义词吸引子函数、异义词排斥子函数和词向量保持子函数构造出词向量修正函数,对词向量进行修正,计算公式为:
γ1+γ2+γ3=1 (11)
式中,表示词向量修正方法的目标函数,由三部分函数损失加权确定,γ1、γ2、γ3是控制三部分子函数权重的参数,本实施例设为γ1=0.33,γ2=0.33,γ3=0.34;
采用随机梯度下降法对目标函数的最小值进行求解,迭代得到修正后的词向量空间
进一步地,所述步骤2-3具体包括:
获取输入的待理解口令文本在修正后的词向量空间中对应的词向量;计算待理解口令文本词向量与虚拟人动作指令库中的所有动作指令的词向量的余弦距离,选取余弦距离最接近1的词向量所对应的动作指令,并输出这一动作指令作为口令文本的理解结果。
进一步地,所述余弦距离定义为:
式中,n是词向量的维数;分别表示词向量/>的在第i个维度上的向量分量。
本发明实施例建立的虚拟人动作指令库包含42个虚拟人可执行的交互动作,如“打招呼”、“拥抱”、“跑步”、“抬头”、“低头”等。为突出本发明的优点,以42个动作指令为口令基础,补充虚拟人可执行动作的多种近义口语表达,如“打招呼”的近义表达“打招呼、打声招呼、打个招呼、问好”,“低头”的近义表达“俯首、垂头、看下面、看下边、往下看”等,最后组成了一个包含了256个虚拟人驱动口令的口令测试集,经过语音测试,采用本发明所提出的口令理解方法对于256个虚拟人驱动口令可以正确理解其中249个口令的意图信息,口令理解正确率可达到97.266%。这一方法的应用有益于用户使用多样化的口令来语音驱动虚拟人执行同一动作,更有益于不同用户以自己的口语表达习惯来表示意图,进而语音驱动虚拟人执行相关动作。
Claims (4)
1.一种语音驱动虚拟人的口令理解方法,其特征在于,包括以下步骤:
步骤1:确定待理解口令文本;待理解口令文本即需要进行意图理解的文本,是对用户输入的口令进行语音识别得到的;
步骤2:将所述待理解口令文本输入至口令理解模型中,得到口令理解结果;其中,所述口令理解模型包括词向量训练模块、词向量修正模块和余弦相似度计算模块三部分;
步骤2-1:所述词向量训练模块对训练集采用D-Skip-Gram算法进行词向量学习,得到词向量空间;
使用结巴分词器读取开源语料库文本,先采用精确模式进行分词,得到分词后的文本集,判断文本集中的词是否与停用词表匹配,若匹配则删除该词,若不匹配,则保留该词,直到将分词后的文本集中的每个词都遍历完,完成文本预处理操作,得到训练集V={w1,w2,w3,…,wt,…w|V|},wt表示训练集的第t个词;
所述D-Skip-Gram算法是在Skip-gram算法的模型基础上为每个词引入一个方向标签,结合词在上下文中的共现信息和方向信息共同学习词的向量表示,具体步骤为:
步骤2-1-1:计算给定词wt时的上下文词wt+i的出现概率p(wt+i|wt):
式中,exp表示以e为底的指数函数;V表示训练集;是词wt的词向量表示;当i<0时,wt+i表示词wt的上文第i个词,当i>0时,wt+i表示词wt的下文第i个词;/>是词wt+i的词向量表示,/>是/>的转置矩阵;
步骤2-1-2:定义方向函数g(wt+i,wt),用来度量上下文词与给定词之间的方向信息,计算公式为:
式中,表示上下文词wt+i相对于给定词wt的方向向量,/>是/>的转置矩阵;
步骤2-1-3:构造D-Skip-Gram算法的目标函数LD-SG,计算公式为:
式中,LD-SG表示D-Skip-Gram算法的目标函数,|V|表示训练集的词汇数;c是上下文词的窗口的大小;
步骤2-1-4:采用反向传播算法和随机梯度下降法更新D-Skip-Gram算法的目标函数LD-SG的参数,使函数值LD-SG最大化,更新范式为:
其中,分别是词wt更新后和更新前的词向量;/>分别是wt+i相对于wt更新后和更新前的方向向量;η是学习率;D是wt+i相对于wt的方向标签,定义为:
当wt+i位于wt左侧时,D=1,当wt+i位于wt右侧时,D=0;
经过迭代后,得到词向量空间其中,下标N是词向量的个数,且N=|V|,即与训练集的词数相等;
步骤2-2:所述词向量修正模块基于虚拟人动作指令库建立语义约束条件,进而构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间;
所述构造出词向量修正函数,对词向量进行修正,得到修正后的词向量空间的方法为:所述词向量修正函数包括同义词吸引子函数、异义词排斥子函数、词向量保持子函数,将步骤2-1训练出的词向量输入到词向量修正函数中,并采用随机梯度下降法最小化损失,得到修正后的词向量空间,具体步骤如下:
步骤2-2-1:基于同义词约束集S和余弦距离构造同义词吸引子函数计算公式为:
式中,是损失函数;(wp,wq)是同义词约束集S中的同义词词对;分别是词wp,wq修正后的词向量表示;/>表示/>的余弦距离;α表示同义词词向量间的理想最大距离;
步骤2-2-2:基于异义词约束集A和余弦距离构造异义词排斥子函数计算公式为:
式中,(wp,wq)是异义词约束集A中的异义词词对;β表示异义词词向量间的理想最小距离;
步骤2-2-3:基于余弦距离构造词向量保持子函数计算公式为:
其中,是词wt修正后的词向量表示;
步骤2-2-4:分配权值,结合同义词吸引子函数、异义词排斥子函数和词向量保持子函数构造出词向量修正函数,对词向量进行修正,计算公式为:
γ1+γ2+γ3=1 (11)
式中,表示词向量修正方法的目标函数,由三部分函数损失加权确定,γ1、γ2、γ3是控制三部分子函数权重的参数;
采用随机梯度下降法对目标函数的最小值进行求解,迭代得到修正后的词向量空间
步骤2-3:所述余弦相似度计算模块在修正后的词向量空间中,计算出与待理解口令文本词向量的余弦距离最近的词向量所对应的虚拟人动作指令,进而输出这一虚拟人动作指令,得到口令理解结果。
2.根据权利要求1所述的一种语音驱动虚拟人的口令理解方法,其特征在于,所述步骤2-3具体包括:
获取输入的待理解口令文本在修正后的词向量空间中对应的词向量;计算待理解口令文本词向量与虚拟人动作指令库中的所有动作指令的词向量的余弦距离,选取余弦距离最接近1的词向量所对应的动作指令,并输出这一动作指令作为口令文本的理解结果。
3.根据权利要求2所述的一种语音驱动虚拟人的口令理解方法,其特征在于,所述余弦距离定义为:
式中,n是词向量的维数;分别表示词向量/>的在第i个维度上的向量分量。
4.根据权利要求3所述的一种语音驱动虚拟人的口令理解方法,其特征在于,所述c=5,η=0.025,α=0,β=1,γ1=0.33,γ2=0.33,γ3=0.34。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110903859.3A CN113643703B (zh) | 2021-08-06 | 2021-08-06 | 一种语音驱动虚拟人的口令理解方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110903859.3A CN113643703B (zh) | 2021-08-06 | 2021-08-06 | 一种语音驱动虚拟人的口令理解方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113643703A CN113643703A (zh) | 2021-11-12 |
CN113643703B true CN113643703B (zh) | 2024-02-27 |
Family
ID=78419968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110903859.3A Active CN113643703B (zh) | 2021-08-06 | 2021-08-06 | 一种语音驱动虚拟人的口令理解方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113643703B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115828930B (zh) * | 2023-01-06 | 2023-05-02 | 山东建筑大学 | 一种动态融合语义关系的分布式词向量空间修正方法 |
CN117590944B (zh) * | 2023-11-28 | 2024-07-12 | 上海源庐加佳信息科技有限公司 | 实体人对象和数字虚拟人对象的绑定系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844346A (zh) * | 2017-02-09 | 2017-06-13 | 北京红马传媒文化发展有限公司 | 基于深度学习模型Word2Vec的短文本语义相似性判别方法和系统 |
CN107291693A (zh) * | 2017-06-15 | 2017-10-24 | 广州赫炎大数据科技有限公司 | 一种改进词向量模型的语义计算方法 |
CN110516253A (zh) * | 2019-08-30 | 2019-11-29 | 苏州思必驰信息科技有限公司 | 中文口语语义理解方法及系统 |
WO2020107840A1 (zh) * | 2018-11-28 | 2020-06-04 | 平安科技(深圳)有限公司 | 基于机器学习的句子距离映射方法、装置和计算机设备 |
CN111477216A (zh) * | 2020-04-09 | 2020-07-31 | 南京硅基智能科技有限公司 | 一种用于对话机器人的音意理解模型的训练方法及系统 |
CN111540345A (zh) * | 2020-05-09 | 2020-08-14 | 北京大牛儿科技发展有限公司 | 一种弱监督语音识别模型训练方法及装置 |
CN112364636A (zh) * | 2020-12-01 | 2021-02-12 | 天翼电子商务有限公司 | 一种基于双重目标编码的用户意图识别系统 |
-
2021
- 2021-08-06 CN CN202110903859.3A patent/CN113643703B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106844346A (zh) * | 2017-02-09 | 2017-06-13 | 北京红马传媒文化发展有限公司 | 基于深度学习模型Word2Vec的短文本语义相似性判别方法和系统 |
CN107291693A (zh) * | 2017-06-15 | 2017-10-24 | 广州赫炎大数据科技有限公司 | 一种改进词向量模型的语义计算方法 |
WO2020107840A1 (zh) * | 2018-11-28 | 2020-06-04 | 平安科技(深圳)有限公司 | 基于机器学习的句子距离映射方法、装置和计算机设备 |
CN110516253A (zh) * | 2019-08-30 | 2019-11-29 | 苏州思必驰信息科技有限公司 | 中文口语语义理解方法及系统 |
CN111477216A (zh) * | 2020-04-09 | 2020-07-31 | 南京硅基智能科技有限公司 | 一种用于对话机器人的音意理解模型的训练方法及系统 |
CN111540345A (zh) * | 2020-05-09 | 2020-08-14 | 北京大牛儿科技发展有限公司 | 一种弱监督语音识别模型训练方法及装置 |
CN112364636A (zh) * | 2020-12-01 | 2021-02-12 | 天翼电子商务有限公司 | 一种基于双重目标编码的用户意图识别系统 |
Non-Patent Citations (2)
Title |
---|
基于不同语料的词向量对比分析;崔萌;张春云;;兰州理工大学学报(03);全文 * |
基于低维语义向量模型的语义相似度度量;蔡圆媛;卢苇;;中国科学技术大学学报(09);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113643703A (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628823B (zh) | 结合注意力机制和多任务协同训练的命名实体识别方法 | |
Gelly et al. | Optimization of RNN-based speech activity detection | |
CN113643703B (zh) | 一种语音驱动虚拟人的口令理解方法 | |
CN111833845B (zh) | 多语种语音识别模型训练方法、装置、设备及存储介质 | |
CN110046248B (zh) | 用于文本分析的模型训练方法、文本分类方法和装置 | |
CN110321418A (zh) | 一种基于深度学习的领域、意图识别和槽填充方法 | |
Kim et al. | A recurrent neural networks approach for estimating the quality of machine translation output | |
CN113435211B (zh) | 一种结合外部知识的文本隐式情感分析方法 | |
CN108960338A (zh) | 基于注意力反馈机制的图像自动语句标注方法 | |
CN111782788A (zh) | 一种面向开放域对话系统的情感回复自动生成方法 | |
CN112800190A (zh) | 基于Bert模型的意图识别与槽值填充联合预测方法 | |
CN114743143A (zh) | 一种基于多概念知识挖掘的视频描述生成方法及存储介质 | |
CN112182161A (zh) | 一种基于用户对话历史的个性化对话生成方法和系统 | |
CN112131367A (zh) | 自审核的人机对话方法、系统及可读存储介质 | |
CN114648032B (zh) | 语义理解模型的训练方法、装置和计算机设备 | |
CN114913859B (zh) | 声纹识别方法、装置、电子设备和存储介质 | |
US20240232572A1 (en) | Neural networks with adaptive standardization and rescaling | |
CN112699684B (zh) | 命名实体识别方法和装置、计算机可读存储介质及处理器 | |
CN114547261A (zh) | 针对请求和情感标签生成的带有指定情感的机器回复方法 | |
CN117992614A (zh) | 一种中文网络课程评论情感分类方法、装置、设备和介质 | |
CN111027215B (zh) | 针对虚拟人的性格训练系统及其方法 | |
CN110990630B (zh) | 一种基于图建模视觉信息的利用问题指导的视频问答方法 | |
CN112905750A (zh) | 一种优化模型的生成方法和设备 | |
CN117370516A (zh) | 一种基于层级对比学习知识增强对话系统训练的方法 | |
CN116860943A (zh) | 对话风格感知与主题引导的多轮对话方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |