一种基于LDA的文本无关声纹识别方法与流程

文档序号:20571499发布日期:2020-04-29 00:49阅读:148来源:国知局
一种基于LDA的文本无关声纹识别方法与流程

本发明涉及说话人声音识别技术领域,特别是涉及一种基于lda的文本无关声纹识别方法。



背景技术:

说话人识别,又称声纹识别,指的是利用机器学习和模式识别等相关方法,提取语音信号中说话人的信息,对说话人身份进行鉴别的技术。在过去的几十年中,说话人识别技术快速的发展,在司法、智能家居、多媒体信息处理等领域都得到了运用,具有非常重要而广泛的前景。说话人识别利用语音信号进行身份识别,具有人机交互自然、语音信号易于提取、可实现远程识别等优势。

根据识别内容,说话人识别问题可以分成两类:文本相关说话人识别和文本无关说话人识别。文本相关的说话人识别要求用户在注册时按照规定的文本发音,为每个说话人建立精确的基于音素或单词的模型,识别时也要求用户按照规定的文本进行发音,这种约束条件下一般可以答到较好的识别效果,但是需要用户的主动配合。文本无关的说话人识别不规定说话人发音的文本内容,因此特征提取和模型建立相对困难,但是不需要太多的约束用户,使用方便,具有更广的应用范围。现有的说话人识别技术主要有两大类,一类是基于统计模型,如混合高斯模型gmm、gmm-ubm、ivector、mfcc等,比如:论文《front-endfactoranalysisforspeakerverification》中提到的方法,具有较高的计算复杂度并且没有考虑语音中文本内容带来的影响;另一类是基于深度神经网络的方法,如cnn、rnn等,比如:谷歌公司的论文《xvectors:robustdnnembeddingsforspeakerrecognition》中使用神经网络对语音提取说话人特征,但是神经网络的训练需要大量的有标注语音样本,而且深度神经网络方法缺乏解释性,对于说话人特征中的文本内容信息没有进行解释。



技术实现要素:

针对现有技术存在的没有考虑语音中文本内容差异带来的影响的问题,本发明提供一种基于lda的文本无关声纹识别方法。

本申请的具体方案如下:

一种基于lda的文本无关声纹识别方法,包括:

s1,提取待识别语音样本的声学特征序列,计算所述声学特征序列在预先构建的声学特征分布空间ω1中的分布特征矢量;

s2,对所述分布特征矢量进行模规整,使用lda对模规整后的分布特征矢量进行降维;

s3,计算降维后的分布特征矢量与预先构建的基于模规整和lda映射分布特征的文本无关说话人声纹模型之间的似然度,将似然度最大的文本无关说话人声纹模型对应的声纹作为识别结果。

优选地,构建基于模规整和lda映射分布特征的文本无关说话人声纹模型的步骤包括:

s21,采集s个目标说话人的语音,同一个说话人采集n段非特定文本的语音样本,提取每段语音的声学特征;s>2,n>2;

s22,计算每段声学特征在声学特征分布空间ω1中的分布特征矢量,对所述分布特征矢量进行模规整;

s23,使用lda对模规整后的分布特征矢量进行降维,

s24,使用单高斯分布作为同一个说话人的降维后的p个分布特征矢量的经验分布模型,得到文本无关说话人声纹模型;p>2。

优选地,步骤s21包括:获取s个说话人的经过语音活动检测的注册语音,从每段长时间的注册语音中截取n次,得到n段非特定文本的语音样本,每次的截取长度为c秒,每段语音的文本是任意的内容。

优选地,在步骤s22中,计算得到s×n个分布特征矢量ls,n:

其中,s表示说话人的编号,n表示语音段的编号,k表示分布特征矢量的维度;

对所述分布特征矢量进行模规整的步骤包括:

将每个分布特征矢量的模规整到统一的常数len:

求出规整后的分布特征矢量集{l′s,n}的平均值:

将每个分布特征矢量上减去平均值得到模规整后的分布特征矢量:

l”s,n=l’s,n-v

其中,模规整保留单个音频分布特征矢量在空间分布中的独特性,去掉音频分布的相似性。

优选地,在步骤s23中,使用lda对模规整后的分布特征矢量进行降维的公式为:

l”’s,n=l”s,n×mat

其中,mat降维矩阵的维度为k×j。

优选地,步骤s24包括:

一个说话人的n个k维分布特征矢量,经过降维后得到n个j维的分布特征矢量,用一个j维的单高斯分布来表示n个j维的分布特征矢量的经验分布,将这个单高斯分布作为该说话人的文本无关声纹模型:

其中,μs表示第s个人的n个分布特征矢量的均值矢量,表示第s个人的n个分布特征矢量的方差矢量。

优选地,步骤s3中计算得到的分布特征矢量为:

经过模规整后的分布特征矢量为:

l”x=l’x-v

步骤s4中使用lda对模规整后的分布特征矢量进行降维后得到:

l”’x=l”x×mat。

优选地,步骤s5包括:计算j维分布特征矢量l”’x与每个说话人文本无关声纹模型mods的评分scores,选择评分最高的文本无关声纹模型mods对应的声纹作为识别结果:

优选地,预先构建声学特征分布空间ω1包括:使用无说话人标注的语音构建声学特征分布空间ω1,其中声学特征分布空间ω1为:

ω1={gi,i=1,2,...,k}

其中,gi表示特征分布空间中的标识子。

优选地,所述无说话人标注的语音来自aishell中文语料库中的说话人语音数据,aishell中文语料库中一共包含400个说话人,选择每个人的60个wav文件用来训练声学特征分布空间ω1,提取非特定文本的语音样本的12维mfcc特征,训练一个混合度为k的gmm,保留每个高斯分量作为语音特征空间的标识子集合ω1={gi,i=1,2,...,k},其中,k为特征空间标识子的数量,标识子数量k选择4096。

与现有技术相比,本发明具有如下有益效果:

本发明通过对分布特征矢量进行模规整,使用lda对模规整后的分布特征矢量进行降维(映射),使用lda对待识别语音以及语音样本的分布特征矢量中的文本内容信息进行补偿,减少文本内容不同带来的干扰,同时,对于每个人的多个样本的分布特征矢量,采用经验分布建模的方式,比计算余弦距离的判决准则,具有更好的识别效果,解决了说话人识别中语音文本内容不一致的问题。具体如下:

(1)、本发明提供的一种基于lda的文本无关声纹识别方法,其中,一个语音样本的分布特征矢量包含说话人的特征与文本内容信息的特征,同一个人的语音属于同一个类,其中不同样本的文本内容信息是不同,利用lda矩阵映射后,同一个人的分布特征矢量之间的间距变小,减少了文本内容差异带来的干扰;同时不同说话人的分布特征矢量间距变大,突显了不同说话人之间的区分性。通过lda映射,能够提取出与文本无关的说话人分布特征矢量,实现对分布特征矢量中的文本内容信息进行补偿,降低了其与特定文本的关联度,在现有方法中,使用mfcc作为特征,通过lbg算法得到特征的量化码本及说话人模型,对待识别样本的mfcc特征序列进行矢量量化后计算与说话人模型的评分,没有考虑语音样本中文本内容差异带来的影响,本方法通过lda映射,解决了此问题。

(2)、本发明提供的一种基于lda的文本无关声纹识别方法,其中,模规整保留单个音频分布特征矢量在空间分布中的独特性,去掉音频分布特征的相似性,语音的分布特征矢量是分布在整个特征空间中的,它们之间存在着一定的相似性,通过模规整的方法,减少语音分布特征矢量中存在的共性,对比不使用模规整的建模方法,经过模规整后具有更好的识别效果。

(3)、本发明提供的一种基于lda的文本无关声纹识别方法,其中,单高斯分布用来作为经验分布,对说话人的文本无关声纹模型进行表达,在已有方法中,将说话人的多个分布特征矢量求取平均矢量作为说话人的模型,或者将说话人的多个分布特征矢量当做多模型,对异常的分布特征矢量比较敏感,异常的分布特征矢量容易造成错误的识别,使用单高斯分布作为说话人特征经验分布的表达,能够解决这个问题,具有更好的识别效果。

附图说明

图1为本发明的基于lda的文本无关声纹识别方法的示意性流程图;

图2为本发明的构建多个基于模规整和lda映射分布特征的文本无关说话人声纹模型的示意性流程图;

图3为本发明的模规整及lda映射的步骤流程图。

图4为本发明实施例中对待识别语音进行特征提取并识别的步骤流程图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

在实施本方案进行文本无关声纹识别之前,需要预先构建声学特征分布空间ω1和多个基于模规整和lda映射分布特征的文本无关说话人声纹模型。其中构建声学特征分布空间ω1的步骤包括:

使用无说话人标注的语音构建声学特征分布空间ω1,构建语音特征空间ω1的过程中,使用任何纯净语音样本,采用k-means或其它聚类方法将语音特征样本在特征空间进行聚类,本实施例所述语音特征空间分布ω1={gi,i=1,2,...,k}使用高斯分布函数作为特征空间的标识子。

其中,gi表示特征分布空间中的标识子。在本实施例,所述无说话人标注的语音来自aishell中文语料库中的说话人语音数据,aishell中文语料库中一共包含400个说话人,选择每个人的60个wav文件用来训练声学特征分布空间ω1,提取非特定文本的语音样本的12维mfcc特征,训练一个混合度为k的gmm,保留每个高斯分量作为语音特征空间的标识子集合ω1={gi,i=1,2,...,k},其中,k为特征空间标识子的数量,标识子数量k选择4096。

参见图2-3,构建基于模规整和lda映射分布特征的文本无关说话人声纹模型的步骤包括:

s21,采集s个目标说话人的语音(说话人注册语音或者预先采集的非目标说话人集的有标注语音),同一个说话人采集n段非特定文本的语音样本,提取每段语音的声学特征;s>2,n>2;具体地,步骤s21包括:获取s个说话人的经过语音活动检测的注册语音,从每段长时间的注册语音中截取n次,得到n段非特定文本的语音样本,每次的截取长度为c秒,每段语音的文本是任意的内容。在本实施例,每个目标说话人的语音时长120秒,经过语音活动检测,从语音部分中截取15次,每次包含5秒长度的语音。提取这些语音样本的12维mfcc特征(声学特征的其中一个特征),计算语音样本在特征空间中的分布特征矢量,将这些分布特征矢量进行模规整,然后通过lda矩阵进行映射,得到每个说话人的15个文本无关的分布特征矢量,计算这15个分布特征矢量的均值矢量和方差矢量,用单高斯分布来作为它们的经验分布表示,单高斯分布即是该说话人的文本无关声纹模型。

s22,计算每段声学特征在声学特征分布空间ω1中的分布特征矢量,对所述分布特征矢量进行模规整;一共400个目标说话人,每个说话人15个分布特征矢量,对分布特征矢量进行模规整。具体地,在步骤s22中,计算得到s×n个分布特征矢量ls,n:

其中,s表示说话人的编号,n表示语音段的编号,k表示分布特征矢量的维度;

如图3所示,对所述分布特征矢量进行模规整的步骤包括:

将每个分布特征矢量的模规整到统一的常数len:

求出规整后的分布特征矢量集{l′s,n}的平均值:

将每个分布特征矢量上减去平均值得到模规整后的分布特征矢量:

l”s,n=l’s,n-v

其中len选取20,模规整保留单个音频分布特征矢量在空间分布中的独特性,去掉音频分布的相似性。

s23,使用lda对模规整后的分布特征矢量进行降维,一个语音样本的分布特征矢量包含说话人的特征与文本内容信息的特征,利用lda映射矩阵,对分布特征矢量进行映射,实现对分布特征矢量中的文本内容信息进行补偿,降低其与特定文本的关联度。具体地,在步骤s23中,使用lda对模规整后的分布特征矢量进行降维的公式为:

l”’s,n=l”s,n×mat

其中,mat降维矩阵的维度为k×j;lda投影矩阵(mat)能够使得投影后同类样本间距离尽可能地小,不同类样本间距离尽可能地大,利用该特性,同一个人的语音样本的分布特征矢量包含该说话人的特征与文本内容的特征,其中的文本内容特征是不同,经过映射后,同一个人的分布特征矢量之间的间距变小,减少了文本内容差异带来的干扰;不同说话人的分布特征矢量间距变大,强化了不同说话人之间的区别。通过lda映射,提取出了与文本无关的说话人分布特征矢量。

用于训练矩阵mat的数据来自于:

根据s×n个经过了模规整的分布特征矢量及相应的说话人标注,计算映射矩阵mat;这些数据来自目标说话人集,可以直接用来训练映射矩阵mat;

或者根据有说话人标注的语音得到模规整后的分布特征矢量,计算模规整后的分布特征矢量的映射矩阵mat,这些数据中的说话人与目标说话人不相同,需要额外多一些说话人的数据来训练映射矩阵,其中,已标注说话人的人数为目标说话人集人数的3倍以上。

得到经过了模规整的分布特征矢量,及其相应的说话人标签(说话人标注),计算每个说话人分布特征矢量的类内散度矩阵:

其中,l″表示模规整后的分布特征矢量,l″i,j表示第i个说话人的第j个分布特征矢量,c表示共有c个说话人,μi表示第i个说话人的分布特征矢量的均值,mi表示第i个说话人的分布特征矢量的个数。

计算不同说话人分布特征矢量的类间散度矩阵:

其中,c表示共有c个说话人,μi表示第i个说话人的分布特征矢量的均值,μ表示所有分布特征矢量的均值,在这里μ=0。

得到优化目标为sw和sb的广义瑞利商:

通过拉格朗日乘子法求解ω,得到特征值和特征向量,将特征向量构成映射矩阵mat。

对分布特征矢量进行lda映射,得到文本无关的分布特征矢量:

l”’s,n=l”s,n×mat

s24,使用单高斯分布作为同一个说话人的降维后的p个分布特征矢量的经验分布模型,得到文本无关说话人声纹模型;p>2。具体地,步骤s24包括:一个说话人的n个k维分布特征矢量,经过降维后得到n个j维的分布特征矢量,用一个j维的单高斯分布来表示n个j维的分布特征矢量的经验分布,将这个单高斯分布作为该说话人的文本无关声纹模型:

其中,μs表示第s个人的n个分布特征矢量的均值矢量,表示第s个人的n个分布特征矢量的方差矢量。使用单高斯分布作为经验分布比多个分布知识矢量求平均值或者多个分布知识矢量作为多模型具有更好的表达效果。

基于上述已经构建的声学特征分布空间ω1和多个文本无关说话人声纹模型,在本实施例,参见图1和4、一种基于lda的文本无关声纹识别方法,包括:

s1,提取待识别语音样本的声学特征序列,计算所述声学特征序列在预先构建的声学特征分布空间ω1中的分布特征矢量;在本实施例,计算待识别语音样本的12维mfcc特征,通过语音特征空间分布ω1={gi,i=1,2,...,k},求出待识别语音的分布特征矢量:步骤s1中计算得到的分布特征矢量为:

s2,对所述分布特征矢量进行模规整,使用lda对模规整后的分布特征矢量进行降维;将4096维的矢量用投影矩阵mat映射到399维。经过模规整后的分布特征矢量为:

l”x=l’x-v

步骤s2中使用lda对模规整后的分布特征矢量进行降维后得到:

l”’x=l”x×mat。

s3,计算降维后的分布特征矢量与预先构建的基于模规整和lda映射分布特征的文本无关说话人声纹模型(来自目标说话人模型集合)之间的似然度,将似然度最大的文本无关说话人声纹模型对应的声纹作为识别结果。具体地,步骤s3包括:

计算399维分布特征矢量l”’x与每个说话人文本无关声纹模型mods的评分scores,选择评分最高的文本无关声纹模型mods对应的声纹作为识别结果:

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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