本发明涉及语音处理技术领域,尤其涉及一种说话人分段聚类方法及装置。
背景技术:
总变化因子分析技术不区分说话人和信道信息,而是将gmm(高斯混合模型)均值超向量中的说话人变化空间和信道变化空间合并为总变化空间来进行建模。给定一个gmm均值超向量m,总变化因子分析中假设它能被分解如下:
m=m+tw;
其中,m表示ubm的均值超向量,t表示总变化空间矩阵,w是低维的总变化因子向量。w服从标准高斯分布,即:f(w)=n(w|0,i)。总变化因子分析中不区分说话人变化和信道变化性,总变化因子向量同时包含gmm均值超向量中的说话人信息和信道信息。
plda(probabilisticlineardiscriminantanalysis,概率线性判别分析)被引入到说话人识别领域之前,最先是按照人脸识别中plda的形式来对i-vector分解成如下形式:
wij=μ+vyi+uxij+εij;
其中,wij表示第i个说话人的第j个i-vector;μ表示所有i-vector的均值向量;v表示本征音空间矩阵,或称之为说话人空间矩阵;u表示本征信道空间矩阵,或称之为信道空间矩阵;yi表示说话人因子;xij表示信道因子;εij表示残差或噪声因子。yi、xij和εij的先验分布按照不同类型的plda模型有所不同。在高斯plda模型它们都服从高斯分布,在重尾plda模型他们服从学生分布。实际上i-vector本身的分布并不能很好地符合高斯分布,因而高斯plda模型最初性能要远差于重尾plda,但是在提出了i-vector长度规整技术,对i-vector进行长度规整可以使它更加服从高斯分布,长度规整后的i-vector再采用高斯plda进行建模的性能可以达到重尾plda的效果,而且高斯plda的模型复杂度和实际应用时的计算复杂度远远小于重尾plda,因此后来的plda系统基本都采用长度规整后的i-vector接高斯plda模型。
基于上述相关技术,处理短时说话人语音时,由于性能下降导致说话人聚类效果较差。
技术实现要素:
本发明的主要目的在于提供一种说话人分段聚类方法及装置,以解决相关技术中处理短时说话人语音时,性能下降导致说话人聚类效果较差的问题。
根据本发明的一个方面,提供了一种说话人分段聚类方法,包括:将待聚类语音划分为多个子语音段;通过权重联合概率线性判别分析wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的特征信息w-vector,所述wt-plda模型的模型参数至少包括:均值向量、说话人子空间的投影矩阵、说话人因子的隐藏变量以及残差因子;通过概率线性判别分析plda根据划分后多个子语音段的所述w-vector对该多个子语音段循环进行多次聚类,直至所述多个子语音段被聚类为两类。
可选地,所述通过概率线性判别分析plda根据划分后多个子语音段的所述w-vector对该多个子语音段循环进行多次聚类,直至所述多个子语音段被聚类为两类,包括:通过plda根据划分后各相邻的子语音段的w-vector对各相邻的两个子语音段进行打分,得到各对子语音段的打分结果;将打分结果中分数最高的两个目标子语音段合并为一个语音段;提取合并后的语音段的所述w-vector,根据该w-vector以及所述多个子语音段中除了所述两个目标子语音段之外的其他子语音段的w-vector进行打分,得到打分结果中分数最高的另外两个目标子语音段后,返回执行将该两个目标子语音段合并为一个语音段的步骤以及该步骤之后的步骤,直至所述多个子语音段被聚类为两类。
可选地,所述方法还包括:在将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
可选地,所述方法还包括:将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
可选地,所述方法还包括:在通过权重联合概率线性判别分析wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的特征信息w-vector之前,对所述各子语音段的i-vector进行长度规整和/或主成分分析降维pca处理。
根据本发明的第二个方面,提供了一种说话人分段聚类装置,包括:划分模块,用于将待聚类语音划分为多个子语音段;提取模块,用于通过权重联合概率线性判别分析wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的特征信息w-vector,所述wt-plda模型的模型参数至少包括:均值向量、说话人子空间的投影矩阵、说话人因子的隐藏变量以及残差因子;聚类模块,用于通过概率线性判别分析plda根据划分后多个子语音段的所述w-vector对该多个子语音段循环进行多次聚类,直至所述多个子语音段被聚类为两类。
可选地,所述聚类模块,包括:打分单元,用于通过plda根据划分后各相邻的子语音段的w-vector对各相邻的两个子语音段进行打分,得到各对子语音段的打分结果;合并单元,用于将打分结果中分数最高的两个目标子语音段合并为一个语音段;循环聚类单元,用于提取合并后的语音段的w-vector,根据该w-vector以及所述多个子语音段中除了所述两个目标子语音段之外的其他子语音段的w-vector进行打分,得到打分结果中分数最高的另外两个目标子语音段后,返回执行将该两个目标子语音段合并为一个语音段的步骤以及该步骤之后的步骤,直至所述多个子语音段被聚类为两类。
可选地,所述装置还包括:第一建立模块,用于在将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
可选地,所述装置还包括:第二建立模块,用于将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
可选地,所述装置还包括:处理模块,用于在通过权重联合概率线性判别分析wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的特征信息w-vector之前,对所述各子语音段的i-vector进行长度规整和/或主成分分析降维pca处理。
本发明实施例的说话人分段聚类方法,使用wt-plda模型提取各子语音段的w-vector,再通过plda根据各对子语音段的w-vector对这些子语音段进行聚类,提高了说话人分段聚类的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据一示例性实施例示出的一种说话人分段聚类方法的流程图;
图2是根据一示例性实施例示出的一种说话人分段聚类方法的流程图;
图3是根据一示例性实施例示出的一种说话人分段聚类装置的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是根据一示例性实施例示出的一种说话人分段聚类方法的流程图,如图1所示,该方法包括如下步骤:
步骤101:将待聚类语音划分为多个子语音段,例如,可将待聚类的语音段划分为1-2s的子语音段。
步骤102:通过wt-plda(weightedtiedprobabilisticlineardiscriminantanalysis,权重联合概率线性判别分析)模型对基于划分得到的各子语音段的i-vector(也称语音的总变化因子)提取出各子语音段的特征信息w-vector(语音的特征信息),所述wt-plda模型的模型参数至少包括:均值向量、说话人子空间的投影矩阵、说话人因子的隐藏变量(即w-vector)以及残差因子;
在步骤102之前,可根据语料训练出与说话人无关的ubm模型,可基于该ubm模型提取高斯超向量和总变化因子,从而根据提取出的这些信息可训练wt-plda模型,该wt-plda模型的训练过程将在后文进行详细说明。其中,在wt-plda模型中,可包括多个语音成分,每个语音成分都具有不同的权重。
步骤103:通过plda根据划分后多个子语音段的所述w-vector对该多个子语音段循环进行多次聚类,直至所述多个子语音段被聚类为两类。
本发明实施例的说话人分段聚类方法,使用wt-plda模型提取各子语音段的w-vector,再通过plda根据各对子语音段的w-vector对这些子语音段进行聚类,提高了说话人分段聚类的效果。
在一种可实现方式中,通过概率线性判别分析plda根据划分后多个子语音段的所述w-vector对该多个子语音段循环进行多次聚类,直至所述多个子语音段被聚类为两类的步骤可由图2中所示多个步骤来实现,如图2所示,该步骤可包括,步骤201:通过plda根据划分后各相邻的子语音段的w-vector对各相邻的两个子语音段进行打分,得到各对子语音段的打分结果;步骤202:将打分结果中分数最高的两个目标子语音段合并为一个语音段;步骤203:提取合并后的语音段的w-vector,根据该w-vector以及所述多个子语音段中除了所述两个目标子语音段之外的其他子语音段的w-vector进行打分,得到打分结果中分数最高的另外两个目标子语音段后,返回执行将该两个目标子语音段合并为一个语音段的步骤(即返回执行步骤202)以及该步骤之后的步骤(即步骤203),直至所述多个子语音段被聚类为两类。例如,在通过plda对各相邻的两个子语音段打分后,选择得分最高的两个子语音段合并得到一段新的语音段,重新提取合并得到的语音段的w-vector,同剩下的子语音段落继续两两打分,循环迭代,直到这些子语音段被聚为两类为止。
在一种可实现方式中,wt-plda假设每一个语音成分均遵循标准正态分布,用足够多的语音成分可以比单个高斯plda更准确地对i-vector进行建模。相比于gmm模型,wt-plda的训练数据量较少,因为一段语音序列被一个i-vector限制。因此,wt-plda假设残差因子和标准的plda一样服从标准高斯分布但是被所有语音成分共享。基于此,说话人分段聚类方法还可包括:将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
对于每一个成分,μm是均值向量,vm是表示说话人子空间的投影矩阵,yi是表示说话人因子的隐藏变量,服从标准高斯分布,被所有成分共享。ωij的后验分布可以写成如下形式:
其中,参数估计可以用em(expectationmaximizationalgorithm,期望最大化算法)算法完成。
在一种可实现方式中,wt-plda建模时添加了协方差信息,基于此,说话人分段聚类方法还可包括:
在将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
在一种可实现方式中,上述通过权重联合概率线性判别分析wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的w-vector之前,对所述各子语音段的i-vector进行长度规整和/或pca(principalcomponentsanalysis,主成分分析降维)处理。
图3是根据一示例性实施例示出的一种说话人分段聚类装置的框图,如图3所示,该装置30包括如下组成部分:
划分模块31,用于将待聚类语音划分为多个子语音段;
提取模块32,用于通过wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的特征信息w-vector,所述wt-plda模型的模型参数至少包括:均值向量、说话人子空间的投影矩阵、说话人因子的隐藏变量以及残差因子;
聚类模块33,用于通过概率线性判别分析plda根据划分后多个子语音段的所述w-vector对该多个子语音段循环进行多次聚类,直至所述多个子语音段被聚类为两类。
在一种可实现方式中,所述聚类模块可包括:打分单元,用于通过plda根据划分后各相邻的子语音段的w-vector对各相邻的两个子语音段进行打分,得到各对子语音段的打分结果;合并单元,用于将打分结果中分数最高的两个目标子语音段合并为一个语音段;循环聚类单元,用于提取合并后的语音段的w-vector,根据该w-vector以及所述多个子语音段中除了所述两个目标子语音段之外的其他子语音段的w-vector进行打分,得到打分结果中分数最高的另外两个目标子语音段后,返回执行将该两个目标子语音段合并为一个语音段的步骤以及该步骤之后的步骤,直至所述多个子语音段被聚类为两类。
在一种可实现方式中,所述说话人分段聚类装置还可包括:第一建立模块,用于在将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
在一种可实现方式中,所述说话人分段聚类装置还可包括:所述装置还包括:
第二建立模块,用于将待聚类语音划分为多个子语音段之前,通过下式建立wt-plda模型:
其中,ωij表示第i个说话人的第j个i-vector,cm代表第m个语音成分的权重,cm≥0,m=1,2,…,m,且
在一种可实现方式中,所述说话人分段聚类装置还可包括:处理模块,用于在通过权重联合概率线性判别分析wt-plda模型对基于划分得到的各子语音段的i-vector提取出各子语音段的特征信息w-vector之前,对所述各子语音段的i-vector进行长度规整和/或pca处理。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。