本申请涉及自然语言处理技术领域,特别涉及一种说话人聚类方法、说话人聚类系统、说话人聚类装置以及计算机可读存储介质。
背景技术:
随着信息技术的不断发展,语音识别技术越来越多的应用在各种行业场景中。在应用语音识别的场景中,出现多个讲话者,他们的语音内容共同出现在一整段语音中,就需要对该整段语音切分出多个语音段,再将每个语音段进行特征判断,将同一个人的语音段归属于一类中。
现有技术中,通常通过声学特征计算不同语音段的距离,再根据语音段距离的大小区分不同的说话人。但是,这类方法受语音内容的影响较大,性能不稳定,聚类精度不高,严重影响语音识别功能的应用体验。
因此,如何提高语音段的聚类精度是本领域技术人员关注的重点问题。
技术实现要素:
本申请的目的是提供一种说话人聚类方法、说话人聚类系统、说话人聚类装置以及计算机可读存储介质,通过计算出的内容特征距离从语音特征距离中提取出说话人特征距离,再采用说话人特征距离进行聚类判断,提高说话人聚类的精度和准确率。
为解决上述技术问题,本申请提供一种说话人聚类方法,包括:
对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离;
对所述第一待测语音段和所述第二待测语音段进行内容特征距离计算,得到内容特征距离;
根据所述内容特征距离在所述语音特征距离中提取说话人特征距离;
判断所述说话人特征距离是否小于距离阈值;
若是,则将所述第一待测语音段与所述第二待测语音段聚类为同一说话人。
可选的,对所述第一待测语音段和所述第二待测语音段进行内容特征距离计算,得到内容特征距离,包括:
采用语音识别模型对所述第一待测语音段进行识别,得到第一音素序列;
采用所述语音识别模型对所述第二待测语音段进行识别,得到第二音素序列;
对所述第一音素序列和所述第二音素序列进行相似度计算,得到音素序列相似度;
根据所述音素序列相似度确定所述内容特征距离。
可选的,对所述第一音素序列和所述第二音素序列进行相似度计算,得到音素序列相似度,包括:
根据编辑聚类算法对所述第一音素序列和所述第二音素序列进行相似度计算,得到所述音素序列相似度。
可选的,对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离,包括:
根据贝叶斯信息准则算法对所述第一待测语音段和所述第二待测语音段进行语音特征距离计算,得到所述语音特征距离。
可选的,还包括:
当对所述第一待测语音段和所述第二待测语音段进行语音特征距离计算之前,对接收到的整段对话语音进行切分,得到多个待测语音段。
可选的,还包括:
当所述说话人特征距离大于等于所述距离阈值时,将所述第一待测语音段与所述第二待测语音段聚类为不同说话人。
本申请还提供一种说话人聚类系统,包括:
语音特征距离计算模块,用于对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离;
内容特征距离计算模块,用于对所述第一待测语音段和所述第二待测语音段进行内容特征距离计算,得到内容特征距离;
说话人特征距离提取模块,用于根据所述内容特征距离在所述语音特征距离中提取说话人特征距离;
距离判断模块,用于判断所述说话人特征距离是否小于距离阈值;
说话人聚类模块,用于当所述说话人特征距离小于所述距离阈值时,将所述第一待测语音段与所述第二待测语音段聚类为同一说话人。
可选的,所述内容特征距离计算模块,包括:
第一语音识别单元,用于采用语音识别模型对所述第一待测语音段进行识别,得到第一音素序列;
第二语音识别单元,用于采用所述语音识别模型对所述第二待测语音段进行识别,得到第二音素序列;
相似度计算单元,用于对所述第一音素序列和所述第二音素序列进行相似度计算,得到音素序列相似度;
内容特征距离确定单元,用于根据所述音素序列相似度确定所述内容特征距离。
本申请还提供一种说话人聚类装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的说话人聚类方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的说话人聚类方法的步骤。
本申请所提供的一种说话人聚类方法,包括:对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离;对所述第一待测语音段和所述第二待测语音段进行内容特征距离计算,得到内容特征距离;根据所述内容特征距离在所述语音特征距离中提取说话人特征距离;判断所述说话人特征距离是否小于距离阈值;若是,则将所述第一待测语音段与所述第二待测语音段聚类为同一说话人。
通过先对两段待测语音段进行语音特征距离计算,得到语音特征距离,再计算出这两段的内容特征距离,由于原始特征,即语音特征中混合了说话人特征和内容特征,就可以通过内容特征距离在语音特征距离中提取出说话人特征距离,也就是可以将语音特征分离为说话人特征和内容特征,由于已经知道内容特征距离,那么就可以从语音特征距离中提取出说话人特征距离,再根据说话人特征距离进行距离判断,排除语音内容造成的影响,提高聚类的精度。
本申请还提供一种说话人聚类系统、说话人聚类装置以及计算机可读存储介质,具有以上有益效果,在此不做赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种说话人聚类方法的流程图;
图2为本申请实施例所提供的一种说话人聚类系统的结构示意图。
具体实施方式
本申请的核心是提供一种说话人聚类方法、说话人聚类系统、说话人聚类装置以及计算机可读存储介质,通过计算出的内容特征距离从语音特征距离中提取出说话人特征距离,再采用说话人特征距离进行聚类判断,提高说话人聚类的精度和准确率。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有技术中,通常通过声学特征计算不同语音段的距离,根据距离的大小用于区分不同的说话人。但是,这类方法受语音内容的影响较大,性能不稳定,聚类精度不高,严重影响语音识别功能的应用体验。
因此,本申请提供一种说话人聚类方法,通过先对两段待测语音段进行语音特征距离计算,得到语音特征距离,再计算出这两段的内容特征距离,由于原始特征,即语音特征中混合了说话人特征和内容特征,就可以通过内容特征距离在语音特征距离中提取出说话人特征距离,也就是可以将语音特征分离为说话人特征和内容特征,由于已经知道内容特征距离,那么就可以从语音特征距离中提取出说话人特征距离,再根据说话人特征距离进行距离判断,排除语音内容造成的影响,提高聚类的精度。
请参考图1,图1为本申请实施例所提供的一种说话人聚类方法的流程图。
本实施例中,该方法可以包括:
s101,对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离;
本步骤旨在提取语音特征距离。也就是,对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离。
一般的,在现有技术中进行说话人聚类时,判断某两端待测语音段是否应该聚类为同一说话人,主要是通过这两段待测语音段的语音特征距离进行判断。这种聚类方式会严重受到语音内容的影响,也就是当两段待测语音段的语音内容相同时,这两段语音段有可能不属于同一个说话人,但是由于现有技术中的语音特征中包含了内容特征,会严重影响语音特征距离的准确性。
因此,本实施例中在计算了语音特征距离后还需要进行内容特征距离计算,得到内容特征距离。
可选的,本步骤可以包括:
根据贝叶斯信息准则算法对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离。
本可选方案中主要是通过贝叶斯信息准则进行语音特征距离计算,也就是采用贝叶斯信息准则算法对这两段语音段进行语音特征距离计算。
其中,贝叶斯决策理论是主观贝叶斯派归纳理论的重要组成部分。不完全情报下,对部分未知的状态用主观概率估计,然后用贝叶斯公式对发生概率进行修正,最后再利用期望值和修正概率做出最优决策。
s102,对第一待测语音段和第二待测语音段进行内容特征距离计算,得到内容特征距离;
本步骤旨在进行内容特征距离计算,得到内容特征距离。本实施例中为了提高说话人聚类方法的准确率,也就是从待测语音段的语音特征中分离出说话人特征,而分离说话人特征比较困难,则先计算出内容特征距离,再根据内容特征距离从语音特征距离中提取出说话人特征距离。
因此,本步骤旨在计算出内容特征距离。具体的,就是计算两段语音段中所包含的语音内容的距离。
可选的,本步骤可以包括:
步骤1,采用语音识别模型对第一待测语音段进行识别,得到第一音素序列;
步骤2,采用语音识别模型对第二待测语音段进行识别,得到第二音素序列;
步骤3,对第一音素序列和第二音素序列进行相似度计算,得到音素序列相似度;
步骤4,根据音素序列相似度确定内容特征距离。
本可选方案旨在通过识别出的音素序列进行音素序列相似度计算,得到音素序列相似度,进而根据该相似度确定内容特征距离。
其中,当两段语音的音素序列越相似时,该音素序列相似度越大,而音素相似度越大时内容特征距离就越短。
可选的,本步骤可以包括:
根据编辑聚类算法对第一音素序列和第二音素序列进行相似度计算,得到音素序列相似度。
本可选方案旨在,根据编辑聚类算法进行相似度计算,得到音素序列相似度。
s103,根据内容特征距离在语音特征距离中提取说话人特征距离;
在s101和s102的基础上,本步骤旨在根据内容特征距离在语音特征距离中提取出说话人特征距离。
具体的,本步骤可以从语音特征距离直接减去说话人特征距离,就可以得到说话人特征距离。
s104,判断说话人特征距离是否小于距离阈值;若是,则执行s105;若否,则执行s106;
在s103的基础上,本步骤旨在判断说话人特征距离是否小于距离阈值。其中,距离阈值的设定方法可以根据经验设定,也可以通过现有技术提供的任意一种距离阈值进行设定,在此不做具体限定。
s105,将第一待测语音段与第二待测语音段聚类为同一说话人;
本步骤旨在当说话人特征距离小于距离阈值时,可以将这两段待测语音段聚类为同一说话人。也就是说明这两个待测语音段属于同一个说话人。
s106,将第一待测语音段与第二待测语音段聚类为不同说话人。
本步骤旨在当说话人特征距离大于等于距离阈值时,这两段待测语音段就不为同一说话人。
可选的,本实施例还可以包括:
当对第一待测语音段和第二待测语音段进行语音特征距离计算之前,对接收到的整段对话语音进行切分,得到多个待测语音段。
本可选方案主要是在进行特征距离计算之前,先对接收到的整段对话语音切分为多个待测语音段,进而再对这些语音段进行聚类分类。可见,本实施例中的第一待测语音段和第二待测语音段就是该多个待测语音段中的任意两个待测语音段。
其中,进行切分指的就是找到语音类别之间的变化点,就可以得到多个待测语音段,并且每个待测语音段只属于一个语音类别,也就是只属于一个说话人。
需要说明的是,并不对本实施例中的s101和s102执行的先后顺序进行限定,可以s101先执行,也可以s102先执行,还可以s101和s102同时执行。
综上,本实施例通过先对两段待测语音段进行语音特征距离计算,得到语音特征距离,再计算出这两段的内容特征距离,由于原始特征,即语音特征中混合了说话人特征和内容特征,就可以通过内容特征距离在语音特征距离中提取出说话人特征距离,也就是可以将语音特征分离为说话人特征和内容特征,由于已经知道内容特征距离,那么就可以从语音特征距离中提取出说话人特征距离,再根据说话人特征距离进行距离判断,排除语音内容造成的影响,提高聚类的精度。
在上一实施例的基础上,本实施例提供一种更加具体的说话人聚类方法。
本实施例中,该方法可以如下:
步骤1、语音切分。语音切分指的是找到语音类别之间的变化点,从而得到多个语音段,并且每一个语音段都只属于一个语音类别。
步骤2、把各个语音段送入语音识别系统,得到所对应的音素序列。
步骤3、计算语音段之间的距离值。
语音段之间的距离计算详细说明方案如下:
原始的语音特征中说话人特征和语音内容特征是混合在一起的,现有技术无法在原始特征层面进行有效的分离。而背景噪音对于每段语音来说是相同的,因为说话人都处于相同的环境下,所以无需排除。
进一步的,发现原始特征中语音内容最终可以通过语音识别技术得到高层次特征,高层次特征指的是音素序列或者文字序列。音素序列或文字序列为语音内容的另外一种表现形式。所以排除语音内容就相当于排除音素序列,但是原始特征信息和音素序列信息属于不同维度信息(原始特征通过浮点型数据向量来表示,音素序列通过文本序列来表示),不能简单的进行相减操作。
由于我们计算的是两段语音之间的距离,所以可以分别对处于相同维度的两段语音原始特征信息进行距离计算(值记为x),及音素序列相似度计算(值记为y)。说话人特征之间的距离记为x1,语音内容之间的距离记为y1,背景噪音都处于相同环境下不会造成干扰则记为0。
可以得到语音特征距离为:x=x1+y1;
进而推导出说话人特征之间的距离为:x1=x-y1;
y计算的是音素序列的相似度,相似度越大,值越大。y1计算的是语音内容的距离,相似度越大值越小,可以得出:y1=-ay;
a表示一个不同维度距离值相互转换系数。
推导出新算法得到距离值为:x1=x+ay。
其中,语音特征距离计算使用贝叶斯信息准则。贝叶斯决策理论是主观贝叶斯派归纳理论的重要组成部分。不完全情报下,对部分未知的状态用主观概率估计,然后用贝叶斯公式对发生概率进行修正,最后再利用期望值和修正概率做出最优决策。音素序列相似度计算使用编辑聚类算法。
举例说明:说话人a说了一句话(a1:节日快乐),说话人b说了(b1:节日快乐)和(b2:恭喜发财)两句话,如果3句话不知道是谁说的,需要判断哪两句话是同一个人说的时候,就需要分别对a1和b1,a1和b2,b1和b2进行判断是否是属于同一个说话人。a1和b1所说的语音内容是一致的,会对距离计算的结果造成影响,所以需要加上其距离值。就可以实现排除语音内容的影响。
最后,设置阈值。利用步骤3计算得到的值和阈值(thr)比较,以判断两段语音是否属于同一个说话人。
本申请实施例提供了一种说话人聚类方法,可以通过先对两段待测语音段进行语音特征距离计算,得到语音特征距离,再计算出这两段的内容特征距离,由于原始特征,即语音特征中混合了说话人特征和内容特征,就可以通过内容特征距离在语音特征距离中提取出说话人特征距离,也就是可以将语音特征分离为说话人特征和内容特征,由于已经知道内容特征距离,那么就可以从语音特征距离中提取出说话人特征距离,再根据说话人特征距离进行距离判断,排除语音内容造成的影响,提高聚类的精度。
下面对本申请实施例提供的一种说话人聚类系统进行介绍,下文描述的一种说话人聚类系统与上文描述的一种说话人聚类方法可相互对应参照。
请参考图2,图2为本申请实施例所提供的一种说话人聚类系统的结构示意图。
本实施例中,该系统可以包括:
语音特征距离计算模块100,用于对第一待测语音段和第二待测语音段进行语音特征距离计算,得到语音特征距离;
内容特征距离计算模块200,用于对第一待测语音段和第二待测语音段进行内容特征距离计算,得到内容特征距离;
说话人特征距离提取模块300,用于根据内容特征距离在语音特征距离中提取说话人特征距离;
距离判断模块400,用于判断说话人特征距离是否小于距离阈值;
说话人聚类模块500,用于当说话人特征距离小于距离阈值时,将第一待测语音段与第二待测语音段聚类为同一说话人。
可选的,该内容特征距离计算模块200,可以包括:
第一语音识别单元,用于采用语音识别模型对第一待测语音段进行识别,得到第一音素序列;
第二语音识别单元,用于采用语音识别模型对第二待测语音段进行识别,得到第二音素序列;
相似度计算单元,用于对第一音素序列和第二音素序列进行相似度计算,得到音素序列相似度;
内容特征距离确定单元,用于根据音素序列相似度确定内容特征距离。
本申请实施例还提供一种说话人聚类装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的说话人聚类方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的说话人聚类方法的步骤。
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种说话人聚类方法、说话人聚类系统、说话人聚类装置以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。