自监督说话人模型训练方法、电子设备和存储介质与流程

allin2024-12-16  62



1.本发明属于模型训练技术领域,尤其涉及自监督说话人模型训练方法、电子设备和存储介质。


背景技术:

2.目前自监督说话人验证主要分为两个阶段,第一个阶段使用对比学习去训练一个说话人特征提取器。第二阶段,利用这个提取器提取数据中的说话人特征,聚类生成伪标签,再利用伪标签去训练一个新的说话人特征提取器。第二阶段重复迭代几次,就能达到很不错的效果。
3.相关技术中,存在不使用损失门的自监督说话人验证和使用固定阈值损失门的自监督说话人验证。
4.一方面,不使用损失门的自监督说话人验证在第二阶段的训练过程中,使用全部数据的伪标签进行训练,发明人发现,对于不使用损失门的自监督说话人验证,大量的低质量伪标签会损害模型的性能,不适用损失门无法筛选掉低质量数据。
5.另一方面,使用固定阈值损失门认为数据有一些伪标签是错误的,损失小的数据伪标签更可靠。通过设计一个固定阈值损失门筛选出来损失比较小的,提高训练数据的标签质量,从而提升最终性能。发明人发现,使用固定阈值的损失门,虽然能提升性能,但这个阈值要依赖人工经验去设计,不够灵活,而且被筛掉的低质量数据也没有得到充分利用。


技术实现要素:

6.本发明实施例提供一种自监督说话人模型训练方法、电子设备和存储介质,用于至少解决上述技术问题之一。
7.第一方面,本发明实施例提供一种自监督说话人模型训练方法,包括:对每一轮训练,计算当前轮所有训练数据的损失值,对所述所有训练数据的损失使用高斯混合模型建模得到动态阈值;基于当前训练数据的损失值与所述动态阈值的关系对所述当前训练数据进行筛选;使用筛选后的训练数据进行所述说话人模型训练。
8.第二方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例的自监督说话人模型训练方法的步骤。
9.第三方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行本发明任一实施例的自监督说话人模型训练方法的步骤。
10.本技术的方法采用高斯混合模型动态模拟损失分布,并使用估计的动态阈值自动区分可靠数据和不可靠数据。在进一步的实施例中,为了更好地利用不可靠数据,而不是直
接丢弃它们,本技术实施例用模型预测来进行标签校正以纠正不可靠的标签。
附图说明
11.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
12.图1为本发明一实施例提供的一种自监督说话人模型训练方法的流程图;
13.图2为本发明一实施例提供的损失分布图;
14.图3为本发明一实施例提供的一种自监督说话人模型训练方法具体示例的流程图;
15.图4为本发明一实施例提供的用于自监督说话人表征学习的无标签蒸馏框架;
16.图5是本发明一实施例提供的电子设备的结构示意图。
具体实施方式
17.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
18.请参考图1,其示出了本技术的自监督说话人模型训练方法一实施例的流程图,本实施例的自监督说话人模型训练方法可以适用于对说话人模型进行训练。
19.如图1所示,在步骤101中,对每一轮训练,计算当前轮所有训练数据的损失值,对所述所有训练数据的损失值使用高斯混合模型建模得到动态阈值;
20.在步骤102中,基于当前训练数据的损失值与所述动态阈值的关系对所述当前训练数据进行筛选;
21.在步骤103中,使用筛选后的训练数据进行所述说话人模型训练。
22.在本实施例中,对于步骤101,在每一轮模型训练的过程中,都会先进行当前轮的训练数据的损失值的计算,并基于所有训练数据的损失值使用高斯混合模型对所有损失值进行建模得到动态阈值,由于每一轮训练对应的训练数据不同,动态阈值也是动态变化的。后续,对于步骤102,可以根据各训练数据的损失值与动态阈值的关系对当前轮的训练数据进行筛选,可以筛除其中不可靠的数据。最后,利用筛选后的训练数据进行模型训练。
23.本实施例的方法通过采用高斯混合模型动态模拟损失分布,并使用估计的动态阈值自动区分可靠数据和不可靠数据。
24.在一些可选的实施例中,所述基于所述训练数据的损失值与所述动态阈值的关系对所述训练数据进行筛选包括:判断当前训练数据的损失值是否大于所述动态阈值;若所述当前训练数据的损失值大于所述动态阈值,使用所述说话人模型的输出对所述当前训练数据进行标签校正,使用标签校正后的训练数据进行所述说话人模型训练;若所述当前训练数据的损失值不大于所述动态阈值的,将所述当前训练数据直接用于所述说话人模型的训练。从而对于不可靠的数据,通过根据模型的预测对其进行标签校正,可以使得不可靠的
数据也能被利用,而不是直接被丢弃。例如利用模型的输出作为数据的标签,来对错误标签进行校正。
25.在进一步可选的实施例中,所述使用所述说话人模型的输出对所述当前训练数据进行标签校正包括:判断所述当前训练数据对应的所述说话人模型的输出的预测后验概率是否大于预设概率阈值;若所述当前训练数据对应的所述说话人模型的输出的预测后验概率大于预设概率阈值,使用所述说话人模型的输出替换所述当前训练数据的标签用于训练;若所述当前训练数据对应的所述说话人模型的输出的预测后验概率不大于所述预设概率阈值,丢弃所述当前训练数据。从而对于不可靠数据通过使用模型的输出的预测后验概率对其进行二次筛选,对于不可靠数据中的模型的预设后验概率较高的数据,说明模型的输出较准确,此时使用模型的输出替换掉不可靠数据的标签,使其变得可靠,可以用于后续模型训练。
26.在一些可选的实施例中,所述对所述所有训练数据的损失值使用高斯混合模型建模得到动态阈值包括:使用具有2个高斯分量的高斯混合模型动态模拟所述所有训练数据的损失值分布;基于获取的同时属于所述2个高斯分量的高斯混合模型的概率相等的损失值确定动态阈值。从而通过使用具有两个高斯分量的高斯混合模型模拟训练数据的损失值分布,之后可以根据这2个高斯分量的概率相等的损失值确定动态阈值。
27.在一些可选的实施例中,所述训练数据包括待训练的数据和与所述待训练的数据对应的标签。从而对于标签错误的数据只需要校正标签即可用于训练。
28.在一些可选的实施例中,在所述对每一轮训练,计算当前轮所有训练数据的损失值之前,所述方法还包括:使用由无标签蒸馏预训练的说话人编码器来提取每个话语的说话人嵌入作为所述待训练的数据;应用k-means聚类算法为属于同一聚类的话语分配相同的伪标签,其中,所述伪标签用于后续的自监督训练。从而通过使用无标签蒸馏预训练的说话人编码器,仅基于最大化来自同一话语的不同增强片段的特征分布之间的相似性,因此它没有负样例对问题,就不会在训练网络时,因为被视为负样例对,在嵌入空间中相互推开导致更多的错误。
29.在一些可选的实施例中,所述说话人模型包括说话人验证模型、说话人识别模型和说话人分类模型。
30.需要说明的是,上述方法步骤并不用于限制各步骤的执行顺序,实际上,某些步骤可能会同时执行或者以与步骤限定的相反的顺序执行,本技术在此没有限制。
31.下面对通过描述发明人在实现本发明的过程中遇到的一些问题和对最终确定的方案的一个具体实施例进行说明,以使本领域技术人员更好地理解本技术的方案。
32.发明人发现,现有技术中解决上述问题主要采用的就是固定阈值的损失门,由于阈值是人工设计的,存在不够灵活的缺陷。
33.本技术的方案主要从以下几个方面入手进行设计和优化:动态损失门:对损失的分布进行分析,如图2所示,可以看出来呈现明显的双峰分布,可靠数据就是左边的峰,不可靠数据就是右边的峰。本技术实施例使用高斯混合模型可以对可靠和不可靠数据分别建模,得到图中的曲线,曲线交点对应的损失值,就是本技术实施例获得的阈值。这个阈值是动态的,随着训练过程变化而变化。标签校正:不可靠数据就是标签错误的数据,为了利用上这些不可靠数据,本技术实施例假设模型输出的结果会比给定标签更加准确,可靠。所以
本技术实施例利用模型的输出作为数据的标签,来对错误标签进行校正。
34.继续参考图3,其示出了本技术方案实现的流程图。
35.如图3所示,首先,对每一轮训练,本技术实施例首先统计所有数据的损失,然后对其使用高斯混合模型建模,得到动态阈值。
36.其次,对数据进行切割,如果损失大于阈值的,就说明标签不可靠,那么就用模型的输出对其进行标签校正。
37.然后,如果损失小于阈值的,就说明标签可靠,不用做处理。
38.最后,使用标签进行训练。
39.发明人进行了大量的实验,实验结果表明,本技术实施例提出的动态阈值损失门(dynamic-loss-gate,dlg)和标签校正(label correction,lc)都能提升性能。参考后续实验数据中的表2,第一行是不使用损失门的结果,第二行是使用固定阈值损失门(loss-gate,lgl)的结果,加了本技术实施例的动态阈值损失门dlg之后,效果有明显提升,加了标签校正lc,得到了最好的结果。
40.继续参考表2,其示出了迭代几轮的结果,可以看出,本技术实施例提出的动态损失门和标签校正在每一轮都能取得最好的结果,收敛的也更快。
41.以下通过介绍发明人实现本技术的过程和所进行的实验及相关的实验数据,以使本领域技术人员更好地理解本技术的方案。
42.在自监督说话人确认中,由于存在大量不可靠标签,伪标签的质量决定了系统的上界。在这项工作中,本技术实施例提出了动态阈值损失门和标签校正(dlg-lc)来缓解不可靠标签导致的性能下降。在动态阈值损失门(dlg)中,本技术实施例采用高斯混合模型(gmm)动态模拟损失分布,并使用估计的动态阈值自动区分可靠和不可靠标签。此外,为了更好地利用不可靠的数据,而不是直接丢弃它们,本技术实施例用模型预测来进行标签校正来纠正不可靠的标签。与当前最好的自监督学习的说话人确认系统相比,本技术实施例提出的dlg-lc收敛速度更快,在voxceleb1评估数据集的vox-o、vox-e和vox-h试验中分别获得了11.45%、18.35%和15.16%的相对改善。
43.1.简介
44.最近,基于深度学习的方法已广泛应用于说话人确认(sv)任务并获得了出色的性能。然而,所有这些方法都需要大量带有说话人标签的训练数据,而带有准确说话人标签的数据的收集通常非常困难和昂贵。
45.为了充分利用大量未标记的数据,许多研究者已经提出用自监督学习的方式去获得良好的说话人表示。根据相关技术中提出的迭代框架,当前最常用的自监督说话人确认系统训练通常包括两个阶段。在第一阶段,通过对比学习的方法训练一个说话人编码器。在第二阶段,从上个阶段预训练得到的模型来估计伪标签,然后根据估计的伪标签训练一个新的说话人模型,这个步骤多次迭代执行以不断提高性能。
46.目前这种分阶段的训练方法取得了优异的性能,但仍然存在一些不合理的假设,限制了系统性能的进一步提升。在第一阶段,基于对比学习的方法假设来自不同话语的语音片段属于不同的说话人。在训练网络时,它们将被视为负样例对,并在嵌入空间中被相互远离。毫无疑问,这种不准确的假设会带来一些错误,因为不同的话语可能来自同一个说话人。在第二阶段,采用聚类算法根据先前学习的表示为每个话语生成伪标签,估计的伪标签
将用于后续的监督训练。然而,相关研究表明估计的伪标签中很多都是不可靠的。这种低质量的不可靠的标签会在训练过程中混淆和降低模型的性能,这也说明找到一种选择高质量标签的方法是提高性能的关键。有人应用了一种基于聚类置信度的方法来净化伪标签,但改进很小。此外,有人观察到在训练过程中损失较低的数据的标签相对更可靠。基于这个假设,他们在每次迭代中设置了一个固定的损失阈值来区分可靠标签和不可靠标签,并且只使用可靠标签的样本来更新网络。虽然这种做法带来了进一步的改进,但仍有很大的改进空间。比如每次迭代的阈值都是人工设定的,不灵活,而且标签不可靠的数据也没有得到充分利用。
47.为了解决这些问题并改进现有方法,本技术实施例在第一阶段引入了dino(distillation with no labels,无标签蒸馏),它仅基于最大化来自同一话语的不同增强片段的特征分布之间的相似性,因此避免了没有负样例的问题。本技术实施例的实验表明,dino在voxceleb数据集中优于所有以前基于对比学习的方法。在第二阶段,本技术实施例使用高斯混合模型(gmm)对所有数据的损失分布进行建模,更具体地说,是具有两个分量的gmm,其中每个高斯分量可以表示具有可靠标签的数据或具有不可靠标签的数据的损失分布标签。通过估计的gmm,本技术实施例可以自动获得区分两种标签的损失阈值,这比手动调整的阈值更灵活。另外,本技术实施例没有直接丢弃中带有不可靠标签的数据,而是利用模型预测作为替代标签并使用它来纠正不可靠标签。本技术实施例将在第二阶段提出的上述两种策略命名为动态损失门和标签校正(dlg-lc)。使用dlg-lc,本技术实施例构建了一个更强大的自监督说话人确认系统,并在voxceleb 1测试集上获得了1.468%的相等错误率,这是当今最先进的。
48.2.方法
49.2.1基于dino的自我监督学习
50.对于先前工作中基于对比学习的方法,它们共享相同的假设,即批次中的片段属于不同的说话人。但这个假设并不总是成立,因为重复发言者可能出现在同一批次中。本技术实施例可以通过公式(1)计算voxceleb 2上重复发言者的概率:
[0051][0052]
其中s是说话人编号,n是批量大小。很明显,较大的批大小会导致更高的重复概率,这将对模型造成不良影响。
[0053]
图4示出了用于自监督说话人表征学习的无标签蒸馏框架(dino)。其中,中英文对照如下:short短片段,long长片段,encoder嵌入器,student学生网络,teacher教师网络,ema指数滑动平均,cosine similiary余弦相似度,projection head投影头,stop gradient梯度截断,centering softmax居中softmax。
[0054]
本技术实施例引入了不需要负样例对来解决这个问题的dino,整个框架如图4所示。首先,本技术实施例使用多裁剪策略从话语中采样4个短片段和2个长片段其中长片段可用于提取更稳定的说话人表示。本技术实施例假设从相同话语中裁剪的片段共享相同的说话人身份,然后通过添加噪声或房间脉冲响应以不同的方式增强它们以获得鲁棒的性能。在后续实施例中,所有短片段都通过学生网络,而只有长片段通过教师网络,因此通过最小化两个分布之间的交叉熵h(
·
)来鼓励短到长的对应:
[0055][0056]
其中p
t
和ps分别表示教师网络g
θt
和学生网络g
θs
的输出概率分布,本技术实施例可以通过使用softmax函数对输出进行归一化来计算p:
[0057]
ps=softmax(g
θs
(x)/∈s)
ꢀꢀꢀ
(3)
[0058]
∈s》0是控制输出分布锐度的温度参数(temperature parameter),类似的公式适用于温度为∈
t
的p
t
。此外,教师网络的输出以在批次上计算的平均值为中心。锐化和居中都被用来避免模型坍塌。
[0059]
教师网络和学生网络都有相同的架构,但参数不同。学生网络通过梯度下降进行更新,而教师网络通过学生网络参数的指数移动平均(ema)进行更新。更新规则是θt

λθt+(1-λ)θs,在训练期间λ遵循从0.996到1的余弦调度。本技术实施例通过编码器提取说话人嵌入并将它们输入投影头,投影头由隐藏维度为2048的3层mlp和归一化和具有k维度的权重归一化全连接层组成。
[0060]
为了使dino更适合说话人确认,本技术实施例还添加了一致性损失以最大化来自同一话语的嵌入之间的余弦相似度。这种损失是为了保证说话人嵌入在余弦空间中,更适合后面的评分和聚类。然后,最终损失由系数α连接:
[0061][0062]
其中e表示编码器提取的说话人嵌入。
[0063]
2.2.动态损失门
[0064]
本技术实施例使用由dino预训练的说话人编码器来提取每个话语的说话人嵌入。然后,本技术实施例应用k-means聚类算法为属于同一聚类的音频分配相同的说话人伪标签。基于这些伪标签,可以训练新的说话人编码器以生成更鲁棒的说话人嵌入。这个过程将重复几次迭代,直到模型收敛。在这个过程中,标签不可靠的数据无疑会降低模型的性能。本领域技术人员观察到在最终收敛阶段具有可靠标签和不可靠标签的数据损失之间存在明显分布差异,并提出了一种使用固定阈值有效选择可靠数据的损失门控学习(lgl)方法。使用lgl取得了惊人的效果,但是这种方法的阈值设置非常依赖于人的经验,而且不可靠的数据被直接丢弃,没有得到充分利用。
[0065]
为了获得合适的阈值,本技术实施例实现了lgl并进行了实验来分析voxceleb 2上的损失分布。直方图可继续参考图2所示。从损失分布中,很明显可以发现分布有两个尖峰。类似实验表明,这两个峰值可以分别表示具有可靠和不可靠标签的数据。如果本技术实施例能找到一种方法来对这种分布进行建模,那么阈值可以直接计算出来,并且随着损失分布动态变化,这也可以避免费力的手动调优。
[0066]
高斯分布是实值随机变量连续概率分布的一种重要类型。其概率密度函数的一般形式如式(5)所示。
[0067]
[0068]
其中μ是位置参数,σ是比例参数。它是钟形的,两侧低中间高,其形状与图2中损失的“峰值”非常相似。在这种情况下,可以使用具有2个分量的高斯混合模型(gmm)来拟合可靠样本和不可靠样本的分布:
[0069][0070]
其中λ是每个高斯分量的权重。本技术实施例在图2中绘制了拟合曲线,很明显,两个“峰值”可以通过两个加权高斯分布来逼近。然后本技术实施例可以通过找到属于两个分量的概率相等的损失值来轻松获得一个阈值τ来区分可靠和不可靠的数据:
[0071]
τ:p1(τ)=p2(τ)
ꢀꢀꢀ
(7)
[0072]
其中以及
[0073]
对于每轮训练),本技术实施例将根据该轮训练的时候记录的损失值重新估计gmm,因此可以根据当前的训练条件动态调整阈值τ。
[0074]
与lgl类似,本技术实施例将这个阈值τ引入到说话人分类损失函数arcmargin softmax(aam)中,以过滤损失较小的数据,仅使用保留的数据来更新网络的参数。
[0075][0076]
其中θ
j,i
是列向量wj和嵌入xi之间的角度。s是比例因子,m是控制边距的超参数。aam可以在最近的说话人之间强制执行更大的间隙,并广泛用于说话人识别任务。
[0077]
2.3.标签校正
[0078]
为了有效利用损失较大的不可靠数据而不是直接丢弃它们,本技术实施例还提出了标签校正(lc)来动态校正伪标签。随着模型的不断优化,不可靠样本的模型输出可以在一定程度上反映其真实标签。为了利用这种能力,本技术实施例假设模型的输出预测比通过聚类生成的伪标签更可靠。因此,本技术实施例将预测的后验概率作为目标标签加入到目标函数中,以防止模型拟合不正确的标签。然而,并不是所有的预测标签都适合训练。本技术实施例假设如果模型将高概率分配给可能的类别之一,则预测标签具有高置信度。因此,本技术实施例引入另一个阈值τ2来保留最大类概率高于τ2的预测标签。并且标签校正损失定义如下:
[0079][0080]
其中pi和p^i分别表示增强片段的输出概率及其对应的干净版本。h(
·
)表示两个概率分布之间的交叉熵。本技术实施例还在p^i上应用锐化操作来鼓励具有εc的峰值分布,εc在等式(3)定义了。
[0081]
最后,结合这两个损失来优化说话人模型。
[0082]
l=ldlg+llc
ꢀꢀꢀ
(10)
[0083]
3.实验
[0084]
3.1数据集和配置
[0085]
在本技术实施例的实验中,本技术实施例采用voxceleb2的开发集来训练网络,并且在此过程中不使用说话人标签。它包含5,994位说话人中的1,092,009条话语。对于评估,本技术实施例报告了定义的3个试验集的实验结果:voxceleb o、e、h测试集。本文采用的主要指标是等错误率(eer)和归一化最小检测成本函数(mindcf)。
[0086]
对于本技术实施例实验的两个阶段,本技术实施例使用具有25ms窗口和10ms位移的80维滤波器组作为声学特征。此外,还利用噪声musan和rirs数据集来做在线数据增强。
[0087]
3.1.1第一阶段:dino
[0088]
对于dino,考虑到训练时间和内存限制,本技术实施例采用简化版本resnet从长(3秒)和短(2秒)段中学习说话人表示,然后将它们编码为256维说话人嵌入通过网络。与相关技术中的配置类似,dino投影头中的k设置为65536。教师网络∈t和学生网络∈s的温度分别为0.04和0.1。此外,本技术实施例将α设置为0.001以平衡训练过程中的两个损失。
[0089]
3.1.2第二阶段:迭代伪标签学习
[0090]
在这个阶段,为了更好地与相关技术中的结果进行比较,本技术实施例使用ecapa-tdnn作为本技术实施例的编码器。对于聚类,本技术实施例采用k-means算法将伪标签分配给训练集。为了验证本技术实施例方法的鲁棒性,本技术实施例选择7500而不是6000作为聚类数。当使用dlg在伪标签上训练网络时,本技术实施例将边距设置为0.2,在aam中缩放为32。对于lc,本技术实施例将锐化参数εc设置为0.1,阈值τ2设置为0.5。使用sgd优化器,学习率从0.1到5e-5呈指数衰减。本技术实施例的训练过程重复5次迭代。在最后一次迭代中,本技术实施例将编码器(ecapa-tdnn)的通道大小扩展到1024。
[0091]
3.2.dino与前作的比较
[0092]
为了全面评估dino,本技术实施例进行了实验,相应的结果列于表1。所有方法都在voxceleb 2上训练并在vox-o测试集上进行评估。从表中本技术实施例可以发现,无负样例对的dino优于以往所有基于对比的方法,这表明负样例对确实是性能提升的瓶颈。此外,本技术实施例还在表1底部提供了dino的消融实验。本技术实施例可以看到没有ema的dino获得了非常糟糕的结果,这表明ema是防止模型崩溃的关键。当本技术实施例在训练过程中分别添加多裁剪和余弦策略时,它们都可以不同程度地提高dino性能并证明它们的必要性。
[0093]
表1:dino与其他自监督说话人确认工作的比较。eer(%)和mindcf在vox-o测试集上进行评估。
[0094][0095]
3.3.带标签校正的动态损失门
[0096]
表2:迭代1中提议的dlg-lc的vox-o、e、h的eer(%)比较。在本实验中,伪标签是根据本技术实施例预训练的dino系统估计的。dino意味着本技术实施例在系统训练期间简单地将所有带有估计伪标签的数据用作监督信号,而没有任何损失门。
[0097][0098]
基于第一阶段预训练的dino生成的伪标签,本技术实施例进行了一些实验来说明本技术实施例提出的方法的有效性。首先,本技术实施例在迭代1中对dlg-lc进行了消融研究。从表2可以看出,与没有任何数据选择的情况下训练的基线相比,lgl可以带来显着的改进。这意味着损失门可以有效地过滤出对模型有益的可靠标签。然而,阈值的选择对模型性能也有不可忽视的影响。基于估计的gmm,本技术实施例提出的dlg可以根据当前的训练情况动态调整阈值,并且比在整个训练过程中采用固定阈值的lgl获得更好的性能。此外,本技术实施例加入了lc策略,充分利用标签不可靠的数据,结果进一步提升。
[0099]
然后,本技术实施例总结了在vox-o集上使用dlg-lc在每次迭代中的性能,结果如表3所示。本技术实施例首先分别比较了使用dino和simclr生成伪标签的迭代结果。他们都接受了所有训练数据的训练,没有任何损失门策略。
[0100]
表3:针对所提出的dlg-lc的不同迭代与其他策略的vox-o测试集的eer(%)比较。simclr和dino意味着本技术实施例在训练过程中只使用了所有估计的伪标签,没有任何损失门。
[0101][0102]
显然,dino在每次迭代中都比simclr具有一致的优势,这表明dino可以产生更具辨别力的说话人嵌入,从而生成更可靠的伪标签。应用损失门策略后,结果得到了显着改善。与lgl相比,本技术实施例提出的具有动态阈值的dlg-lc显示出很大的优势。它不仅性能优越,而且收敛速度更快。仅通过3次迭代,dlg-lc就取得了与lgl的最终迭代相当的结果,这得益于动态阈值和标签校正。
[0103]
最后,表4给出了与其他自监督说话人确认系统和本技术实施例提出的dlg-lc的性能比较。其中大部分来自最新的voxceleb说话人识别挑战(voxsrc),代表了当今最先进的性能。从表中可以明显看出,dlg-lc在vox-o、vox-e和vox-h集上仅用5次迭代就超过了所有现有方法,并且分别以相对11.45%、18.35%和15.16%的优势优于最佳方法。此外,本技术实施例采用的聚类算法是k-means,它比其他系统中使用的凝聚层次聚类(ahc)更简单。此外,本技术实施例使用7,500而不是6,000作为集群的数量,因为5,994是训练集中说话人的真实数量。尽管如此,本技术实施例的系统仍然达到了最先进的性能,这也显示了本技术实施例系统的鲁棒性。
[0104]
表4:不同自监督说话人确认方法在vox-o、e、h上的eer(%)比较。
[0105][0106]
4.结论
[0107]
在这项工作中,本技术实施例提出了动态损失门和标签校正(dlg-lc),以减轻由不准确的假设和标签引起的自我监督说话人确认的性能下降。通过使用高斯分布对损失直方图进行建模,本技术实施例可以获得一个动态损失门,以便在伪标签训练时选择可靠数据。本技术实施例没有丢弃不可靠的数据,而是将预测的后验概率作为目标分布,以防止拟合到不正确的样本中。voxceleb上的实验表明,本技术实施例提出的dlg-lc更加鲁棒,并达到了最先进的性能。
[0108]
在另一些实施例中,本发明实施例还提供了一种非易失性计算机存储介质,计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中
的自监督说话人模型训练方法;
[0109]
作为一种实施方式,本发明的非易失性计算机存储介质存储有计算机可执行指令,计算机可执行指令设置为:
[0110]
对每一轮训练,计算当前轮所有训练数据的损失值,对所述所有训练数据的损失值使用高斯混合模型建模得到动态阈值;
[0111]
基于当前训练数据的损失值与所述动态阈值的关系对所述当前训练数据进行筛选;
[0112]
使用筛选后的训练数据进行所述说话人模型训练。
[0113]
非易失性计算机可读存储介质可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据自监督说话人模型训练装置的使用所创建的数据等。此外,非易失性计算机可读存储介质可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,非易失性计算机可读存储介质可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至自监督说话人模型训练装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0114]
本发明实施例还提供一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被计算机执行时,使计算机执行上述任一项自监督说话人模型训练方法。
[0115]
图5是本发明实施例提供的电子设备的结构示意图,如图5所示,该设备包括:一个或多个处理器510以及存储器520,图5中以一个处理器510为例。自监督说话人模型训练方法的设备还可以包括:输入装置530和输出装置540。处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器520为上述的非易失性计算机可读存储介质。处理器510通过运行存储在存储器520中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例自监督说话人模型训练方法。输入装置530可接收输入的数字或字符信息,以及产生与通讯补偿装置的用户设置以及功能控制有关的键信号输入。输出装置540可包括显示屏等显示设备。
[0116]
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
[0117]
作为一种实施方式,上述电子设备应用于自监督说话人模型训练装置中,用于客户端,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:
[0118]
对每一轮训练,计算当前轮所有训练数据的损失值,对所述所有训练数据的损失值使用高斯混合模型建模得到动态阈值;
[0119]
基于当前训练数据的损失值与所述动态阈值的关系对所述当前训练数据进行筛选;
[0120]
使用筛选后的训练数据进行所述说话人模型训练。
[0121]
本技术实施例的电子设备以多种形式存在,包括但不限于:
[0122]
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。
[0123]
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。
[0124]
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
[0125]
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
[0126]
(5)其他具有数据交互功能的电子装置。
[0127]
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0128]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
[0129]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术特征:
1.一种自监督说话人模型训练方法,包括:对每一轮训练,计算当前轮所有训练数据的损失值,对所述所有训练数据的损失值使用高斯混合模型建模得到动态阈值;基于当前训练数据的损失值与所述动态阈值的关系对所述当前训练数据进行筛选;使用筛选后的训练数据进行所述说话人模型训练。2.根据权利要求1所述的方法,其中,所述基于所述训练数据的损失值与所述动态阈值的关系对所述训练数据进行筛选包括:判断当前训练数据的损失值是否大于所述动态阈值;若所述当前训练数据的损失值大于所述动态阈值,使用所述说话人模型的输出对所述当前训练数据进行标签校正,使用标签校正后的训练数据进行所述说话人模型训练;若所述当前训练数据的损失值不大于所述动态阈值的,将所述当前训练数据直接用于所述说话人模型的训练。3.根据权利要求2所述的方法,其中,所述使用所述说话人模型的输出对所述当前训练数据进行标签校正包括:判断所述当前训练数据对应的所述说话人模型的输出的预测后验概率是否大于预设概率阈值;若所述当前训练数据对应的所述说话人模型的输出的预测后验概率大于预设概率阈值,使用所述说话人模型的输出替换所述当前训练数据的标签用于训练;若所述当前训练数据对应的所述说话人模型的输出的预测后验概率不大于所述预设概率阈值,丢弃所述当前训练数据。4.根据权利要求1所述的方法,其中,所述对所述所有训练数据的损失值使用高斯混合模型建模得到动态阈值包括:使用具有2个高斯分量的高斯混合模型动态模拟所述所有训练数据的损失值分布;基于获取的同时属于所述2个高斯分量的高斯混合模型的概率相等的损失值确定动态阈值。5.根据权利要求1所述的方法,其中,所述训练数据包括待训练的数据和与所述待训练的数据对应的标签。6.根据权利要求5所述的方法,其中,在所述对每一轮训练,计算当前轮所有训练数据的损失值之前,所述方法还包括:使用由无标签蒸馏预训练的说话人编码器来提取每个话语的说话人嵌入作为所述待训练的数据;应用k-means聚类算法为属于同一聚类的话语分配相同的伪标签,其中,所述伪标签用于后续的自监督训练。7.根据权利要求1-6中任一项所述的方法,其中,所述说话人模型包括说话人验证模型、说话人识别模型和说话人分类模型。8.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7任一项所述方法的步骤。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。

技术总结
本发明公开自监督说话人模型训练方法、电子设备和存储介质,其中,一种自监督说话人模型训练方法,包括:对每一轮训练,计算当前轮所有训练数据的损失值,对所述所有训练数据的损失使用高斯混合模型建模得到动态阈值;基于当前训练数据的损失值与所述动态阈值的关系对所述当前训练数据进行筛选;使用筛选后的训练数据进行所述说话人模型训练。本申请的方法采用高斯混合模型动态模拟损失分布,并使用估计的动态阈值自动区分可靠和不可靠标签。在进一步的实施例中,为了更好地利用不可靠的数据,而不是直接丢弃它们,本申请实施例用模型预测来进行标签校正以纠正不可靠的标签。来进行标签校正以纠正不可靠的标签。来进行标签校正以纠正不可靠的标签。


技术研发人员:钱彦旻 韩冰 陈正阳
受保护的技术使用者:思必驰科技股份有限公司
技术研发日:2022.04.29
技术公布日:2022/7/4
转载请注明原文地址: https://www.8miu.com/read-17678.html

最新回复(0)