掌桥专利:专业的专利平台
掌桥专利
首页

识别模型的训练方法、装置、计算机设备

文献发布时间:2024-07-23 01:35:21


识别模型的训练方法、装置、计算机设备

技术领域

本申请涉及计算机技术领域,特别是涉及一种识别模型的训练方法、装置、计算机设备、存储介质和计算机程序产品。

背景技术

随着计算机技术以及互联网技术的发展,不同类型的音频识别模型的出现,在音频说话人识别领域取得显著进展,其中,说话人识别(声纹识别),也称为说话人识别或声纹辨认,是一种通过分析语音信号特征来识别或验证说话人身份的技术,与其他生物识别技术相比,声纹识别具有非侵犯性、低成本、易用性等优势,因此在安全认证、智能家居、医疗保健等领域得到了广泛应用。

然而,目前的识别模型的训练方式中,主要是采用大量有标注的音频数据,由于需要大量有标注的音频数据,故这种数据标注难度大而且成本比较高,并且采用的模型训练方式主要是非对比学习的自蒸馏预训练,容易使得模型学习到的是语音数据中的通用信息,对于说话人的区分性信息不够,无法快速准确的识别出不同对象的身份信息,导致模型识别的准确性较差,因此,如何有效提高模型识别说话人身份的准确性以避免信息错配成为亟需解决的问题。

发明内容

基于此,有必要针对上述技术问题,提供一种识别模型的训练方法、装置、计算机设备、计算机可读存储介质和计算机程序产品,能够有效提高识别模型识别说话人身份的准确性。

第一方面,本申请提供了一种识别模型的训练方法。所述方法包括:对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片;通过识别模型中的第一分支网络,编码所述第一音频切片得到第一编码特征,对所述第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据所述音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;根据所述第一特征值、所述第二特征值和所述音频样本集的音频样本数量确定第一损失值,根据所述第一编码特征和所述第二编码特征确定第二损失值;根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

第二方面,本申请还提供了一种识别模型的训练装置。所述装置包括:切片模块,用于对音频样本集内的音频样本进行切片,得到第一音频切片 和第二音频切片;处理模块,用于通过识别模型中的第一分支网络,编码所述第一音频切片得到第一编码特征,对所述第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;确定模块,用于根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据所述音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;根据所述第一特征值、所述第二特征值和所述音频样本集的音频样本数量确定第一损失值,根据所述第一编码特征和所述第二编码特征确定第二损失值;调整模块,用于根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片;通过识别模型中的第一分支网络,编码所述第一音频切片得到第一编码特征,对所述第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据所述音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;根据所述第一特征值、所述第二特征值和所述音频样本集的音频样本数量确定第一损失值,根据所述第一编码特征和所述第二编码特征确定第二损失值;根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片;通过识别模型中的第一分支网络,编码所述第一音频切片得到第一编码特征,对所述第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据所述音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;根据所述第一特征值、所述第二特征值和所述音频样本集的音频样本数量确定第一损失值,根据所述第一编码特征和所述第二编码特征确定第二损失值;根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片;通过识别模型中的第一分支网络,编码所述第一音频切片得到第一编码特征,对所述第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据所述音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;根据所述第一特征值、所述第二特征值和所述音频样本集的音频样本数量确定第一损失值,根据所述第一编码特征和所述第二编码特征确定第二损失值;根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

上述识别模型的训练方法、装置、计算机设备、存储介质和计算机程序产品,通过对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片;通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;同时通过识别模型中的第二分支网络,编码第二音频切片得到第二编码特征,对第二编码特征进行嵌入处理和维度变换得到第二高维全局特征,并根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;进一步的,根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值,根据第一编码特征和第二编码特征确定第二损失值,并根据第一损失值和第二损失值对第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。由于第一音频切片和第二音频切片是对音频样本集内的音频样本进行切片所得到的,故可以通过识别模型中的第一分支网络、第二分支网络分别对不同音频切片进行处理,以得到正样本对的高维全局特征即第一高维全局特征和第二高维全局特征,进而可以根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,以及根据不同音频样本的高维全局特征确定第二特征值,进而能够根据不同类型的特征值分别确定不同的损失值即第一损失值和第二损失值,再根据第一损失值和第二损失值对第一分支网络进行参数调整,从而实现了利用大批量无监督音频数据进行联合预训练的目的,使得训练得到的目标识别模型能够识别出说话人的区分性信息,可以很好的兼顾区分性以及解决模型坍缩问题,进而能快速准确的识别出不同对象的身份信息,实现了有效提高目标识别模型识别说话人身份的准确性的技术效果。

附图说明

图1为一个实施例中识别模型的训练方法的应用环境图;

图2为一个实施例中识别模型的训练方法的流程示意图;

图3为一个实施例中提供的目标识别模型的模型结构示意图;

图4为一个实施例中对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片步骤的流程示意图;

图5为一个实施例中Data2vec利用大量的无标签数据进行无监督预训练的模型的结构示意图;

图6为一个实施例中一种对比学习的方式进行无监督训练的模型的结构示意图;

图7为一个实施例中采用二阶互信息最大化进行无监督训练的模型的结构示意图;

图8为一个实施例中采用DINO算法进行无监督训练的模型的结构示意图;

图9为一个实施例中识别模型的训练装置的结构框图;

图10为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。

云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。

预训练模型(Pre-training model),也称基石模型、大模型,指具有大参量的深度神经网络(Deep neural network,DNN),在海量未标记的数据上对其进行训练,利用大参量DNN的函数近似能力使PTM在数据上提取共性特征,经微调(fine tune)、参数高效微调(PEFT)、prompt-tuning等技术,适用于下游任务。因此,预训练模型可以在小样本(Few-shot)或零样本(Zero-shot)场景下达到理想效果。PTM按照处理的数据模态可以分为语言模型(ELMO,BERT,GPT)、视觉模型(swin-transformer,ViT,V-MOE)、语音模型(VALL-E)、多模态模型(ViBERT, CLIP,Flamingo,Gato)等,其中多模态模型指建立两种或以上数据模态特征表示的模型。预训练模型是输出人工智能生成内容(AIGC)重要工具,也可以作为连接多个具体任务模型的通用接口。

模型并行计算:指将模型的计算任务分配给多个计算设备(例如CPU、GPU、TPU等)同时进行计算,从而加速模型的训练和推理。模型并行计算能够有效地利用计算资源,提高模型的计算效率和训练速度。

需要说明的是,在以下的描述中,所涉及的术语“第一、第二和第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一、第二和第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。

本申请实施例提供的识别模型的训练方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。终端102可以与服务器104进行交互,比如,终端102可以从服务器104获取不同批次的音频样本集,终端102可以对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片,并通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;同时,终端102可以通过识别模型中的第二分支网络,编码第二音频切片得到第二编码特征,对第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;进一步的,终端102可以根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,以及根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;终端102根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值,并根据第一编码特征和第二编码特征确定第二损失值;终端102根据第一损失值和第二损失值对第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

其中,终端102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能电视、智能手表、物联网设备和便携式可穿戴设备,物联网设备可为智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。

服务器104可以是独立的物理服务器,也可以是区块链系统中的服务节点,该区块链系统中的各服务节点之间形成点对点(Peer To Peer)网络,Peer To Peer协议是一个运行在传输控制协议(TCP,Transmission Control Protocol)协议之上的应用层协议。

此外,服务器104还可以是多个物理服务器构成的服务器集群,可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content Delivery NetworkCDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。

终端102与服务器104之间可以通过蓝牙、USB(Universal Serial Bus,通用串行总线)或者网络等通讯连接方式进行连接,本申请在此不做限制。

在一个实施例中,如图2所示,提供了一种识别模型的训练方法,该方法可以由服务器或终端单独执行,也可以由服务器和终端共同执行,以该方法应用于图1中的终端为例进行说明,包括以下步骤:

步骤202,对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片。

其中,音频样本集是指用于存储不同音频样本的集合,比如,本申请中的音频样本集可以是一个批次中所包含的不同音频样本(至少两个)所构成的。

音频样本是指采集的一段音频数据,比如,音频样本可以是一段包含不同对象的语音特征的音频数据(音频文件)。

第一音频切片和第二音频切片可以是用于区分基于不同时间间隔进行切分所得到的音频切片,可以理解,本申请中的第一音频切片可以是短音频切片,第二音频切片可以是长音频切片,比如,假设音频样本A为一段时长为60S的音频数据,针对音频样本A,终端可以按照第一预设间隔即10S对音频样本A进行切片处理,即可得到被切片处理后的6个切片,且每个切片的时长为10S,并将这6个切片作为第一音频切片(即短音频切片)。同理针对音频样本A,终端可以按照第二预设间隔即30S对音频样本A进行切片处理,即可得到被切片处理后的2个切片,且每个切片的时长为30S,并将这2个切片作为第二音频切片(即长音频切片)。

第一音频切片和第二音频切片也可以用于区分是基于相同时间间隔进行切分所得到的包含遮挡区域的音频切片和不包含遮挡区域的音频切片。比如,本申请中的第一音频切片可以是包含遮挡区域帧的音频切片,第二音频切片可以是不包含遮挡区域帧的音频切片。

具体地,当终端需要对识别模型进行训练时,终端可以从本地获取不同批次的音频样本集,终端也可以从服务器获取不同批次的音频样本集,进一步的,终端可以对获取到的某个批次的音频样本集内的音频样本进行切片,即可得到第一音频切片和第二音频切片。

举个例子,以音频样本集内的音频样本A为例进行说明。假设音频样本A为一段时长为60S的音频数据,针对音频样本A,终端可以按照第一预设间隔即10S对音频样本A进行切片处理,即可得到被切片处理后的6个切片,且每个切片的时长为10S,并将这6个切片作为第一音频切片(即短音频切片)。同理针对音频样本A,终端可以按照第二预设间隔即30S对音频样本A进行切片处理,即可得到被切片处理后的2个切片,且每个切片的时长为30S,并将这2个切片作为第二音频切片(即长音频切片)。

可以理解,本申请提供的识别模型的训练方法可以广泛地应用于社交、游戏、影视剧制作的场景等多种个性化音频数据的识别领域,即不同的用户(操作对象)所使用的设备均可以与多媒体信息平台(或应用程序)进行交互,当用户(操作对象)想要进行声纹识别时,用户可以通过触发操作打开终端上的多媒体应用(Application,APP),并通过选取操作进入到该多媒体应用的主页面中,即用户可以通过触发操作登录多媒体应用(比如图像编辑应用、社交应用)中,进一步的,用户可以在多媒体应用显示的主页面中,通过触发操作发起进行声纹识别的请求。比如,在终端显示的社交应用的主页面中,各个使用该社交应用的对象(比如开发人员)可以查看该社交主页面中的具体内容和相关的功能信息,各个使用该社交应用的对象也可以触发针对特定素材的发布请求,比如,使用该社交应用的操作对象A可以在主页面中点击“素材发布”图标,以使终端响应于操作对象A在该社交应用的主页面中触发的“素材发布”请求,实时获取该操作对象A的音频数据,并通过训练好的目标识别模型对音频数据进行处理,输出音频全局特征;进一步的,终端可以将音频全局特征与预存的音频身份特征进行比较,得到比较结果;当比较结果表示音频全局特征与音频身份特征之间的差异满足预设对比条件时,终端可以快速准确的确定该操作对象A的音频数据所对应的身份信息是否符合发布素材的身份要求。

步骤204,通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征。

其中,识别模型是指初始模型,即未训练的识别模型。比如,如图3所示,为本申请提供的目标识别模型的模型结构示意图。即本申请中的识别模型可以是如图3中所示的结构,整个模型分为上下两个模型分支,上分支可以称为第一分支网络或者student网络,下分支可以称为第二分支网络或者teacher网络。

第一分支网络是指识别模型中的其中一个分支,比如,本申请中的第一分支网络可以是如图3中所示的上分支即student网络。

第一编码特征是指对第一音频切片进行编码后所得的编码特征,比如,本申请中的第一编码特征可以是如图3中所示的通过上分支中的Encoder网络(即编码网络)对第一音频切片(即短音频切片)进行处理后得到的Encoder特征即网络特征。

嵌入处理是指对第一音频切片的编码特征进行嵌入处理,比如,本申请中的嵌入处理可以是通过如图3中所示的上分支中的Embedding层(即嵌入层)来实现对第一音频切片(即短音频切片)的Encoder特征进行嵌入处理的。

维度变换是指对第一音频切片的全局特征进行特征维度变换处理,比如,本申请中的维度变换处理可以是通过如图3中所示的通过上分支中的Project Head层(即映射层)来实现对第一音频切片(即短音频切片)的全局特征进行特征变换的。

第一高维全局特征是指将第一音频切片输入识别模型中第一分支网络的编码网络、嵌入层、映射层中依次进行处理后,输出的第一音频切片(即短音频切片)的高维度特征。比如,本申请中的第一高维全局特征可以是通过如图3中所示的上分支中的Encoder网络、Embedding层、Project Head层依次对第一音频切片(即短音频切片)进行处理后所得到的高维度特征。

步骤206,通过识别模型中的第二分支网络,编码第二音频切片得到第二编码特征,对第二编码特征进行嵌入处理和维度变换得到第二高维全局特征。

其中,第二分支网络是指识别模型中的其中一个分支,比如,本申请中的第二分支网络可以是如图3中所示的下分支即teacher网络。

第二编码特征是指对第二音频切片进行编码后所得的编码特征,比如,本申请中的第二编码特征可以是通过如图3中所示的下分支中的Encoder网络(即编码网络)对第二音频切片(即长音频切片)进行处理后得到的Encoder特征即网络特征。

第二高维全局特征是指将第二音频切片输入识别模型中第二分支网络的编码网络、嵌入层、映射层中依次进行处理后,输出的第二音频切片(即长音频切片)的高维度特征。比如,本申请中的第二高维全局特征可以是通过如图3中所示的下分支中的Encoder网络、Embedding层、Project Head层依次对第二音频切片(即长音频切片)进行处理后所得到的高维度特征。

具体地,终端对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片之后,终端可以通过如图3中所示的识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征,同理,终端也可以通过如图3中所示的识别模型中的第二分支网络,编码第二音频切片得到第二编码特征,对第二编码特征进行嵌入处理和维度变换得到第二高维全局特征。

举个例子,以音频样本集内的音频样本A为例进行说明。假设音频样本A为一段时长为60S的音频数据,针对音频样本A,终端可以按照第一预设间隔即10S对音频样本A进行切片处理,即可得到被切片处理后的6个切片,且每个切片的时长为10S,并将这6个切片作为第一音频切片(即短音频切片)。同理针对音频样本A,终端可以按照第二预设间隔即30S对音频样本A进行切片处理,即可得到被切片处理后的2个切片,且每个切片的时长为30S,并将这2个切片作为第二音频切片(即长音频切片)之后,终端可以将上述所得的6个切片(即短音频切片)作为输入数据,输入如图3中所示的识别模型中的上分支网络中进行处理,即终端通过如图3中所示的识别模型的上分支网络中的Encoder网络、Embedding层、Project Head层依次对6个切片(即短音频切片)进行处理后可以得到短音频切片的高维度特征;同理,终端可以将上述所得的2个切片(即长音频切片)作为输入数据,输入如图3中所示的识别模型中的下分支网络中进行处理,即终端通过如图3中所示的识别模型的下分支网络中的Encoder网络、Embedding层、Project Head层依次对2个切片(即长音频切片)进行处理后可以得到长音频切片的高维度特征。

步骤208,根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值。

其中,相同音频样本的第一高维全局特征和第二高维全局特征是指:同一个音频样本的第一高维全局特征和第二高维全局特征。比如,针对音频样本集内的音频样本A,音频样本A的第一高维全局特征是指:通过如图3中所示的识别模型中的上分支网络对音频样本A的第一音频切片进行处理所得的高维全局特征;音频样本A的第二高维全局特征是指:通过如图3中所示的识别模型中的下分支网络对音频样本A的第二音频切片进行处理所得的高维全局特征。

第一特征值和第二特征值只是用于区分不同的特征值,比如,本申请中的第一特征值可以是基于同一个音频样本的正样本对所确定的,第二特征值可以是基于不同音频样本所确定的。

第一音频样本的第一高维全局特征:是指音频样本集内的某个音频样本的第一高维全局特征,比如,第一音频样本的第一高维全局特征可以是:音频样本集内的音频样本A的第一高维全局特征。

其他音频样本的第一高维全局特征或第二高维全局特征是指:音频样本集内的其他音频样本的第一高维全局特征或第二高维全局特征,比如,第一音频样本的第一高维全局特征可以是:音频样本集内的音频样本A的第一高维全局特征,则其他音频样本的第一高维全局特征或第二高维全局特征可以是:在音频样本集内,除了音频样本A以外的其他音频样本的第一高维全局特征或第二高维全局特征,比如是音频样本B的第一高维全局特征或第二高维全局特征。

步骤210,根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值,根据第一编码特征和第二编码特征确定第二损失值。

其中,音频样本集的音频样本数量是指:音频样本集内所包含的音频样本的总数量,比如,音频样本集内包含2个音频样本,则音频样本集的音频样本数量为N=2。

第一损失值和第二损失值只是用于区分基于不同的训练方式所得到的损失值,比如,本申请中的第一损失值可以是采用Data2vec预训练方式所得的损失值,第二损失值可以是采用MoCo预训练方式所得的损失值。其中,Data2vec是指语音、视觉和语言的自监督学习的通用框架,MoCo是指用一种对比学习的方式进行无监督训练的模型。

具体地,终端得到第一高维全局特征和第二高维全局特征之后,终端根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,并根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值,比如,终端可以根据同一个音频样本A的第一高维全局特征Vqi和第二高维全局特征V’ki确定第一特征值为:exp(Vqi·V’ki/τ),并根据音频样本集内音频样本A的第一高维全局特征Vqi和其他音频样本的第一高维全局特征Vkj或第二高维全局特征V’kj确定第二特征值为:exp(Vqi·V’kj/τ)或者exp(Vqi·Vkj/τ),进一步的,终端可以根据第一特征值、第二特征值和音频样本集的音频样本数量N确定第一损失值loss1,其中,第一损失值loss1的计算方式可以是如下公式(1)所示:

(1)

其中,N是训练样本总数,K是负样本数目,qi和vki是来自同一段音频样本的正样本对,vkj是不同音频的负样本,τ是常数。

同时,终端可以根据第一编码特征和第二编码特征确定第二损失值,比如,终端可以确定第一编码特征和第二编码特征之间差值的绝对值,并基于所得的差值的绝对值和预设数值,确定第二损失值loss2,其中,第二损失值loss2的计算方式可以是如下公式(2)所示:

(2)

其中,ft是通过识别模型中的第一分支网络对音频样本(包含遮挡区域帧)中的mask区域进行处理所得的特征值,yt是通过识别模型中的第二分支网络对音频样本(不包含遮挡区域帧)中的相同区域(即mask区域)进行处理所得的特征值。

步骤212,根据第一损失值和第二损失值对第二分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

其中,目标对象的音频是指特定对象的音频,比如,目标对象为用户A,则目标对象的音频是指:用户A的音频。

目标识别模型是指通过本申请提供的联合预训练的方式所得的训练好的识别模型。

具体地,终端根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值,以及根据第一编码特征和第二编码特征确定第二损失值之后,终端可以根据第一损失值和第二损失值对识别模型中的第一分支网络进行参数调整,以得到用于对目标对象的音频进行声纹识别的目标识别模型。比如,终端可以基于第一损失值loss1和第二损失值loss2的和值即loss= loss1+ loss2,对如图3中所示的识别模型中的上分支网络(即student网络)进行参数调整,并使用上分支网络(即student网络)的 EMA(参数滑动平均值)对如图3中所示的识别模型中的下分支网络(即teacher网络)进行参数更新,以得到用于对目标对象的音频进行声纹识别的目标识别模型。

此外,如图3中所示,本申请提供的识别模型的训练方法,除了根据上述第一损失值loss1和第二损失值loss2对如图3中所示的识别模型中的上分支网络进行参数调整之外,还可以是根据其他损失值,比如,loss=loss1+loss2+loss3+loss4,即根据上述公式中的loss对如图3中所示的识别模型中的上分支网络进行参数调整,在这里不做具体限制。

本实施例中,通过对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片;通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;同时通过识别模型中的第二分支网络,编码第二音频切片得到第二编码特征,对第二编码特征进行嵌入处理和维度变换得到第二高维全局特征,并根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;进一步的,根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值,根据第一编码特征和第二编码特征确定第二损失值,并根据第一损失值和第二损失值对第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。由于第一音频切片和第二音频切片是对音频样本集内的音频样本进行切片所得到的,故可以通过识别模型中的第一分支网络、第二分支网络分别对不同音频切片进行处理,以得到正样本对的高维全局特征即第一高维全局特征和第二高维全局特征,进而可以根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,以及根据不同音频样本的高维全局特征确定第二特征值,进而能够根据不同类型的特征值分别确定不同的损失值即第一损失值和第二损失值,再根据第一损失值和第二损失值对第一分支网络进行参数调整,从而实现了利用大批量无监督音频数据进行联合预训练的目的,使得训练得到的目标识别模型能够识别出说话人的区分性信息,可以很好的兼顾区分性以及解决模型坍缩问题,进而能快速准确的识别出不同对象的身份信息,实现了有效提高目标识别模型识别说话人身份的准确性的技术效果。

在一个实施例中,如图4所示,音频样本集内的音频样本包括第一音频样本;对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片的步骤,包括:

步骤402,按照第一预设间隔对第一音频样本进行切片,得到第一音频切片;

步骤404,按照第二预设间隔对第一音频样本进行切片,得到第二音频切片;其中,第一预设间隔小于第二预设间隔。

其中,第一预设间隔和第二预设间隔只是用于区分不同的时间间隔,比如,本申请中的第一预设间隔可以是10S,第二预设间隔可以是30S。

具体地,以音频样本集内的第一音频样本为音频样本A为例进行说明。假设音频样本A为一段时长为60S的音频数据,针对音频样本A,终端可以按照第一预设间隔即10S对音频样本A进行切片处理,即可得到被切片处理后的6个切片,且每个切片的时长为10S,并将这6个切片作为第一音频切片(即短音频切片)。同理针对音频样本A,终端可以按照第二预设间隔即30S对音频样本A进行切片处理,即可得到被切片处理后的2个切片,且每个切片的时长为30S,并将这2个切片作为第二音频切片(即长音频切片)。由此使得,通过从一堆音频样本(音频样本集)中调出任意一个音频样本,将其做一次转换(比如随机加噪声混响、切片等处理),得到新的音频样本,这个样本叫做基准点(锚点),被认为是正样本(两者都是从变化得到的,虽然看起来有差异,但语义信息不应该发生变化),数据集中其它所有音频样本都是负样本,即通过对音频样本进行切片处理,来实现快速的构造训练数据中的正样本对,以使后续可以基于正负样本来使用对比学习的目标函数(损失函数值)更新初始模型的参数,实现提升识别模型性能的技术效果。

在一个实施例中,通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征的步骤,包括:

通过识别模型中第一分支网络的编码网络对第一音频切片进行编码,得到第一编码特征;

通过第一分支网络的嵌入层对第一编码特征进行嵌入处理,得到第一全局特征;

通过第一分支网络中的映射层对第一全局特征进行特征变换,得到第一高维全局特征。

具体地,以音频样本集内的音频样本A为例进行说明。假设音频样本A为一段时长为60S的音频数据,针对音频样本A,终端可以按照第一预设间隔即10S对音频样本A进行切片处理,即可得到被切片处理后的6个切片,且每个切片的时长为10S,并将这6个切片作为第一音频切片(即短音频切片)。同理针对音频样本A,终端可以按照第二预设间隔即30S对音频样本A进行切片处理,即可得到被切片处理后的2个切片,且每个切片的时长为30S,并将这2个切片作为第二音频切片(即长音频切片)之后,终端可以将上述所得的6个切片(即短音频切片)作为输入数据,输入如图3中所示的识别模型中的第一分支网络即上分支网络中进行处理,即通过如图3中所示的识别模型的上分支中的Encoder网络(即编码网络)对6个切片(即短音频切片)进行处理后得到的Encoder特征即网络特征,并通过上分支中的Embedding层(即嵌入层)对6个切片(即短音频切片)的Encoder特征进行嵌入处理后得到的全局特征,最后通过如图3中所示的识别模型的上分支中的Project Head层(即映射层)对6个切片(即短音频切片)的全局特征进行特征变换后得到的高维度特征。即终端通过如图3中所示的识别模型的上分支网络中的Encoder网络、Embedding层、Project Head层依次对6个切片(即短音频切片)进行处理后得到短音频切片的高维度特征。由此,实现了利用大批量无监督音频数据进行联合预训练的目的,使得训练得到的目标识别模型能够识别出说话人的区分性信息,可以很好的兼顾区分性以及解决模型坍缩问题,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在一个实施例中,所述通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征,包括:

通过识别模型中第二分支网络的编码网络对所述第二音频切片进行编码,得到第二编码特征;

通过所述第二分支网络的嵌入层对所述第二编码特征进行嵌入处理,得到第二全局特征;

通过所述第二分支网络中的映射层对所述第二全局特征进行特征变换,得到所述第二高维全局特征。

具体地,以音频样本集内的音频样本A为例进行说明。假设音频样本A为一段时长为60S的音频数据,针对音频样本A,终端可以按照第一预设间隔即10S对音频样本A进行切片处理,即可得到被切片处理后的6个切片,且每个切片的时长为10S,并将这6个切片作为第一音频切片(即短音频切片)。同理针对音频样本A,终端可以按照第二预设间隔即30S对音频样本A进行切片处理,即可得到被切片处理后的2个切片,且每个切片的时长为30S,并将这2个切片作为第二音频切片(即长音频切片)之后,终端可以将上述所得的2个切片(即长音频切片)作为输入数据,输入如图3中所示的识别模型中的第二分支网络即下分支网络中进行处理,即通过如图3中所示的识别模型的下分支中的Encoder网络(即编码网络)对2个切片(即长音频切片)进行处理后得到的Encoder特征即网络特征,并通过下分支中的Embedding层(即嵌入层)对2个切片(即长音频切片)的Encoder特征进行嵌入处理后得到的全局特征,最后通过如图3中所示的识别模型的下分支中的Project Head层(即映射层)对2个切片(即长音频切片)的全局特征进行特征变换后得到的高维度特征。即终端通过如图3中所示的识别模型的下分支网络中的Encoder网络、Embedding层、Project Head层依次对2个切片(即长音频切片)进行处理后得到长音频切片的高维度特征。由此,实现了利用大批量无监督音频数据进行联合预训练的目的,使得训练得到的目标识别模型能够识别出说话人的区分性信息,可以很好的兼顾区分性以及解决模型坍缩问题,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在一个实施例中,音频样本集内的音频样本包括第一音频样本和其他音频样本;根据相同音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值的步骤,包括:

根据第一音频样本的第一高维全局特征、第一音频样本的第二高维全局特征和预设常数确定第一特征值;

根据第一音频样本的第一高维全局特征、预设常数和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值。

其中,预设常数可以是τ,其他音频样本的第一高维全局特征可以记作Vkj,其他音频样本的第二高维全局特征可以记作V’kj。

具体地,终端可以根据同一个音频样本A的第一高维全局特征Vqi、第二高维全局特征V’ki和预设常数τ确定第一特征值为:exp(Vqi·V’ki/τ),并根据音频样本集内音频样本A的第一高维全局特征Vqi、预设常数τ和其他音频样本的第一高维全局特征Vkj或第二高维全局特征V’kj确定第二特征值为:exp(Vqi·V’kj/τ)或者exp(Vqi·Vkj/τ),进一步的,终端可以根据第一特征值、第二特征值和音频样本集的音频样本数量N确定第一损失值loss1,其中,第一损失值loss1的计算方式可以是如前述公式(1)所示。由此使得,实现了联合预训练的目的,使得训练出的目标识别模型能够识别出说话人的区分性信息,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在一个实施例中,根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值的步骤,包括:

根据第一特征值和第二特征值确定目标值;

基于目标值、音频样本集的音频样本数量和预设值确定所述第一损失值。

其中,预设值可以是:-1/N

具体地,终端可以根据同一个音频样本A的第一高维全局特征Vqi、第二高维全局特征V’ki和预设常数τ确定第一特征值为:exp(Vqi·V’ki/τ),以及根据音频样本集内音频样本A的第一高维全局特征Vqi、预设常数τ和其他音频样本的第一高维全局特征Vkj或第二高维全局特征V’kj确定第二特征值为:exp(Vqi·V’kj/τ)或者exp(Vqi·Vkj/τ)之后,终端可以根据第一特征值和第二特征值确定目标值为:

进一步的,终端可以基于上述目标值、音频样本集的音频样本数量N和预设值-1/N

在一个实施例中,所述方法还包括:

对音频样本集内的音频样本进行分帧,得到音频样本的多帧音频数据;

对多帧音频数据进行遮挡处理,得到包含遮挡区域帧的音频样本;

所述对音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片,包括:

对包含遮挡区域帧的音频样本进行切片,得到第一音频切片;

对不包含遮挡区域帧的音频样本进行切片,得到第二音频切片。

其中,第一音频切片和第二音频切片也可以用于区分基于相同间隔进行切分所得到的包含遮挡区域帧的音频切片和不包含遮挡区域帧的音频切片。比如,本申请中的第一音频切片可以是包含遮挡区域帧的音频,第二音频切片可以是不包含遮挡区域帧的音频切片。

具体地,如图5所示,为Data2vec利用大量的无标签数据进行无监督预训练的模型的结构示意图,如图5中所示的输入teacher网络中的音频样本是未进行随机掩膜mask操作的,即输入teacher网络中的音频样本是不包含遮挡区域帧的音频样本;同时如图5中所示的输入student网络中的音频样本是进行了随机掩膜mask操作的,即输入student网络中的音频样本是包含遮挡区域帧的音频样本。比如,以音频样本集内的音频样本A为例进行说明,终端可以对音频样本集内的音频样本A进行分帧,得到音频样本A的多帧音频数据,并对多帧音频数据进行遮挡处理,得到包含遮挡区域帧的音频样本A;进一步的,终端在计算第二损失值之前,终端可以按照第一预设间隔,对包含遮挡区域帧的音频样本A进行切片,得到第一音频切片;同时,终端也可以按照第一预设间隔,对不包含遮挡区域帧的音频样本进行切片,得到第二音频切片。或者,终端还可以直接将包含遮挡区域帧的音频样本A作为输入数据输入如图5中所示的student网络中进行处理,同时,终端还可以直接将不包含遮挡区域帧的音频样本A作为输入数据输入如图5中所示的teacher网络中进行处理,即终端在计算第二损失值时,需要确保输入如图5中所示的student网络和teacher网络中的输入数据的长度是相同的,即输入如图5中所示的student网络和teacher网络中的输入数据可以是同一个音频样本的长音频切片(或者短音频切片),区别在于输入如图5中所示的student网络中的长音频切片(或者短音频切片)需要包含遮挡区域,输入如图5中所示的teacher网络中的长音频切片(或者短音频切片)不需要包含遮挡区域。由此使得,实现了联合预训练的目的,并且通过在模型网络中间引入了data2vec预训练方法,增强了网络底层的表征能力,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在一个实施例中,通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征的步骤,包括:

通过识别模型中的第一分支网络编码遮挡区域帧,得到第一编码特征;

所述通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,包括:

基于第一音频切片中的遮挡区域帧,确定第二音频切片中相同位置的区域帧;

通过识别模型中的第二分支网络编码区域帧,得到第二编码特征。

其中,第一编码特征可以是指:对输入student网络中的音频切片中遮挡区域帧进行编码所得的编码特征。

第二编码特征可以是指:对输入teacher网络中的音频切片中相同位置的区域帧进行编码所得的编码特征。

具体地,终端在计算第二损失值时,终端可以通过如图3中所示的识别模型中的上分支网络(student网络)编码遮挡区域帧,得到第一编码特征;同时,终端可以基于第一音频切片中的遮挡区域帧,确定第二音频切片中相同位置的区域帧,并通过如图3中所示的识别模型中的下分支网络(teacher网络)编码区域帧,得到第二编码特征。由此使得,实现了联合预训练的目的,并且通过在模型网络中间引入了data2vec预训练方法,增强了网络底层的表征能力,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在其中一个实施例中,根据第一编码特征和第二编码特征确定第二损失值的步骤,包括:

确定第一编码特征和第二编码特征之间差值的绝对值;

基于差值的绝对值和预设数值,确定第二损失值。

其中,预设数值可以是β。

具体地,终端可以确定第一编码特征和第二编码特征之间差值的绝对值为:

在一个实施例中,所述方法还包括:

根据相同音频样本的第一高维全局特征、第二高维全局特征和音频样本集的音频样本数量确定第三特征值;

根据相同音频样本的第一高维全局特征和第二高维全局特征确定协方差矩阵,并基于协方差矩阵确定第四特征值;

根据第三特征值和第四特征值确定第三损失值;

所述根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,包括:

根据第一损失值、第二损失值和第三损失值对第一分支网络进行参数调整。

其中,协方差矩阵包括同一个音频样本的第一高维全局特征所对应的第一协方差矩阵,以及同一个音频样本的第二高维全局特征所对应的第二协方差矩阵,比如,音频样本A的第一高维全局特征z1所对应的第一协方差矩阵为Rz1,以及音频样本A的第二高维全局特征z2所对应的第二协方差矩阵为Rz2。

具体地,终端得到第一高维全局特征和第二高维全局特征之后,终端还可以根据相同音频样本的第一高维全局特征z1、第二高维全局特征z2和音频样本集的音频样本数量N确定第三特征值为:

(3)

其中,

进一步的,终端可以根据第一损失值loss1、第二损失值loss2和第三损失值loss3对第一分支网络进行参数调整,比如,终端可以计算第一损失值loss1、第二损失值loss2和第三损失值loss3之间的和值loss=loss1+loss2+loss3,并基于和值loss对第一分支网络进行参数调整,以得到用于对目标对象的音频进行声纹识别的目标识别模型。由此,实现了联合预训练的目的,使得训练出的目标识别模型能够识别出说话人的区分性信息,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在一个实施例中,所述方法还包括:

对第一编码特征进行嵌入处理所得的第一全局特征进行分类处理,得到第一概率值;

对第二编码特征进行嵌入处理所得的第二全局特征进行分类处理,得到第二概率值;

基于第一概率值和第二概率值确定第四损失值;

所述根据所述第一损失值、所述第二损失值和所述第三损失值对所述第一分支网络进行参数调整,包括:

根据第一损失值、第二损失值、第三损失值和第四损失值对第一分支网络进行参数调整。

其中,第一概率值和第二概率值用于表征音频切片的概率分布,可以是由多个概率值组成的,即本申请中的第一概率值和第二概率值可以包括多个概率值,比如,如图3中所示的第一概率值P1的概率分布图中至少包括:P11、P12、P13、P14、P15、P16等多个概率值;同理,如图3中所示的第二概率值P2的概率分布图中也至少包括:P21、P22、P23、P24、P25、P26等多个概率值。

具体地,终端对音频样本集内的音频样本A进行切片,得到第一音频切片和第二音频切片,并通过如图3中所示的识别模型中的上分支网络,编码第一音频切片得到第一编码特征,并对第一编码特征进行嵌入处理得到第一全局特征之后,终端还可以通过如图3中所示的识别模型中的上分支网络的DINO Head层(分类层)对第一全局特征进行分类处理,并对分类处理后的概率分布值进行归一化处理,即可得到第一概率值P1;同时,终端也可以通过如图3中所示的识别模型中的下分支网络,编码第二音频切片得到第一编码特征,并对第二编码特征进行嵌入处理得到第二全局特征之后,终端还可以通过如图3中所示的识别模型中的下分支网络的DINO Head层(分类层)对第二全局特征进行分类处理,并对分类处理后的概率分布值进行归一化处理,即可得到第二概率值P2;进一步的,终端可以基于第一概率值P1和第二概率值P2确定第四损失值loss4,比如,终端基于第一概率值P1和第二概率值P2确定第四损失值loss4的计算方式可以是如下公式(4)所示:

loss4=- P2log P1 (4)

进一步的,终端可以根据第一损失值loss1、第二损失值loss2、第三损失值loss3和第四损失值loss4对第一分支网络进行参数调整,比如,终端可以计算第一损失值loss1、第二损失值loss2、第三损失值loss3和第四损失值loss4之间的和值loss=loss1+loss2+loss3+loss4,并基于和值loss对第一分支网络进行参数调整,以得到用于对目标对象的音频进行声纹识别的目标识别模型。由此,实现了联合预训练的目的,使得训练出的目标识别模型能够识别出说话人的区分性信息,进而能快速准确的识别出不同对象的身份信息,有效提高了识别模型识别说话人身份的准确性。

在一个实施例中,所述方法还包括:

获取待处理的音频数据;

通过目标识别模型对所述音频数据进行处理,输出音频全局特征;

将音频全局特征与预存的音频身份特征进行比较,得到比较结果;

当比较结果表示音频全局特征与音频身份特征之间的差异满足预设对比条件时,确定音频数据对应的身份信息。

具体地,本申请提供的识别模型的训练方法可以广泛地应用于社交、游戏、影视剧制作的场景等多种个性化音频数据的识别领域,即不同的用户(操作对象)所使用的设备均可以与多媒体信息平台(或应用程序)进行交互,当用户(操作对象)想要进行声纹识别时,用户可以通过触发操作打开终端上的多媒体应用(Application,APP),并通过选取操作进入到该多媒体应用的主页面中,即用户可以通过触发操作登录多媒体应用(比如图像编辑应用、社交应用)中,进一步的,用户可以在多媒体应用显示的主页面中,通过触发操作发起进行声纹识别的请求。比如,在终端显示的社交应用的主页面中,各个使用该社交应用的对象(比如开发人员)可以查看该社交主页面中的具体内容和相关的功能信息,各个使用该社交应用的对象也可以触发针对特定素材的发布请求,比如,使用该社交应用的操作对象A可以在主页面中点击“素材发布”图标,以使终端响应于操作对象A在该社交应用的主页面中触发的“素材发布”请求,实时获取该操作对象A的音频数据,并通过训练好的目标识别模型对音频数据进行处理,输出音频全局特征;进一步的,终端可以将音频全局特征与预存的音频身份特征进行比较,得到比较结果;当比较结果表示音频全局特征与音频身份特征之间的差异满足预设对比条件时,终端可以快速准确的确定该操作对象A的音频数据所对应的身份信息是否符合发布素材的身份要求。由此,实现了利用大批量无监督音频数据进行联合预训练的目的,使得训练得到的目标识别模型能够识别出说话人的区分性信息,可以很好的兼顾区分性以及解决模型坍缩问题,进而能快速准确的识别出不同对象的身份信息,实现了有效提高目标识别模型识别说话人身份的准确性的技术效果。

本申请还提供一种应用场景,该应用场景应用上述识别模型的训练方法。具体地,该识别模型的训练方法在该应用场景的应用如下:

当需要对不同用户的音频数据进行身份识别时,可以采用上述的识别模型的训练方法,即当需要对识别模型进行训练时,终端可以对获取到的同一个批次的音频样本集内的音频样本进行切片,得到第一音频切片和第二音频切片,通过识别模型中的第一分支网络,编码第一音频切片得到第一编码特征,对第一编码特征进行嵌入处理和维度变换得到第一高维全局特征,以及通过识别模型中的第二分支网络,编码第二音频切片得到第二编码特征,对第二编码特征进行嵌入处理和维度变换得到第二高维全局特征;进一步的,终端可以根据同一个音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,以及根据音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;进一步的,终端可以根据第一特征值、第二特征值和音频样本集的音频样本数量确定第一损失值,以及根据第一编码特征和第二编码特征确定第二损失值,并根据第一损失值和第二损失值对第一分支网络进行参数调整,以得到用于对目标对象的音频进行声纹识别的目标识别模型。由此使得,通过提出一种混合多种预训练方法的说话人识别的预训练模型,并采用无监督数据进行预训练就可以获得与有监督训练相近的结果,进一步还可以基于不同业务中少量有标签数据对预训练模型(即目标识别模型)再进一步进行微调,使得在业务上取得了20%的性能提升,实现了有效提高了识别模型识别说话人身份的准确性的技术效果。

本申请实施例提供的方法,可以应用于各种说话人的识别场景中。以下以用户与社交应用进行交互的场景为例,对本申请实施例提供的识别模型的训练方法进行说明。

其中,Corinfomax: 信息最大准则。

DINO:无标签自蒸馏。

Data2vec: 语音、视觉和语言的自监督学习的通用框架。

传统的说话人识别,需要大量有标注的音频数据,这种数据标注难度大而且价格比较昂贵。本申请在音频说话人识别领域,提出了一种多种预训练方法融合的说话人识别自监督学习方法,提出了基于Data2Vec、MoCo、Dino和CorinfoMax联合预训练模型,利用大批量无监督音频数据,大大提升说话人识别模型在业务场景上的识别能力。

自监督预训练是比较火的研究方向,充分挖掘无监督数据中的信息,增强模型性能,大多数自监督方法主要集中在图像领域,在语音方向尤其是说话人识别领域应用较少,并且模型坍缩是自监督学习中最常见的问题,不同样本在空间上映射到相同的区域。MoCo预训练方法通过对比学习思想,拉近正例样本对之间的距离,拉大负例样本对之间的距离来避免模型坍缩,但是MoCo在训练时存在假负例的情况对模型性能有一定的损失。Dino是非对比学习的自蒸馏预训练模型,用教师模型去指导学生模型的学习,它学习到的是语音中通用信息,对于说话人的区分性信息不够,因此,本申请提出的方法在MoCo和Dino的基础上引入信息最大化准则,可以很好的兼顾区分性以及解决模型坍缩问题。另外在模型网络中间引入了data2vec预训练方法,有效增强了网络底层的表征能力。

在产品侧,说话人识别(声纹识别),也称为说话人识别或声纹辨认,是一种通过分析语音信号特征来识别或验证说话人身份的技术,与其他生物识别技术相比,声纹识别具有非侵犯性、低成本、易用性等优势,因此在安全认证、智能家居、医疗保健等领域得到了广泛应用。

在技术侧,如图3所示,为本申请提出的一种基于多种预训练方法联合的说话人识别预训练模型的模型结构示意图。

如图3中所示,整个模型分为上下两个模型分支,上分支称为student网络,下分支称为teacher分支。对于模型输入的音频特征,分别切分为长音频切片和短音频切片,短切片输入student分支网络,长切片输入teacher分支网络。长短切片经过Encoder网络之后,得到各自的网络特征,对于长短切片的特征,终端采用Data2vec预训练loss(记为loss1)对模型进行预训练。

另外Encoder特征经过Embedding层(嵌入层)处理得到长短切片全局特征,然后经过Project Head即映射层对全局特征进行特征变换(变换到高维度特征),然后分别采用Moco和Corinfomax对比学习loss(记为loss2和loss3)对模型进行预训练。

另外全局特征输入DINO Head(分类层)得到长短切片的Dino概率分布,并进行归一化处理,概率的取值范围0-1、且所有概率之和为1,计算Dino loss(记为loss4),最终模型训练loss=loss1+loss2+loss3+loss4,即四种预训练联合一起训练模型。

以下分别介绍Data2vec、Moco、DINO和Corinfomax四种预训练方法:

Data2vec利用大量的无标签数据进行无监督预训练,对输入特征(文本、图像、语音)进行随机掩膜mask操作,然后利用未遮挡的部分(网络输入)去预测遮挡部分(自监督target)的信息,最终让模型学习到目标的关键特征。整体结构如图5中所示。data2vec的关键就在于target获取不再由当前模型的特征获得,而是通过一个伴生的教师模型提供。“学生模型”的输入是带mask的,其主要目的是通过网络训练,学习到足够有表征能力的特征,使模型可以利用unmask特征去预测mask区域的特征。自监督框架默认的假设就是:如果一个特征可以很好的预测上下文信息,那么它就是一个好特征。“教师模型”的输入是不带mask的完整输入,相当于参考答案,利用mask区域教师模型输出的特征作为target来训练学生模型。教师模型的结构跟学生模型是完全一样的,只是参数有差别。选择smooth L1loss作为训练损失函数如前述公式(2)所示,其中ft是mask区域学生模型的特征值,yt是教师模型在mask区域的特征值。

如图6所示,为一种对比学习的方式进行无监督训练的模型的结构示意图。MoCo是用一种对比学习的方式进行无监督训练的模型。对比学习是无监督学习的一种,希望相似数据(图片、语音,文本)最终学到的特征是相似的,在特征空间(embedding space)中,特征向量尽量靠近;反之还希望不同的数据学到的特征向量尽量远离。

即从一堆音频样本中调出任意一个音频,将其做一次转换(比如随机加噪声混响、切片等),得到新的音频,这个样本叫做基准点(锚点),被认为是正样本(两者都是从变化得到的,虽然看起来有差异,但语义信息不应该发生变化),数据集中其它所有音频都是负样本。在得到正负样本之后,采用对比学习目标函数比如NCE loss来更新模型,如前述公式(1)所示,N是所有训练样本的数目,K是负样本数目,qi和vki是来自同一段音频的正样本对,vkj是不同音频的负样本,τ是常数。

Corinfomax 采用二阶互信息最大化可以有效避免模型崩塌,如前述公式(3)所示。其中z1和z2是来自同一样本的正样本对,Rz1和Rz2分别是对应的自协方差矩阵。如图7所示,为采用二阶互信息最大化进行无监督训练的模型的结构示意图。

DINO可以理解为一种没有标签的知识蒸馏方法,它通过使用标准 Cross-EntropyLoss将教师网络的输出作为软标签来简化自监督训练。如图8所示,为采用DINO算法进行无监督训练的模型的结构示意图。一段音频的两个切片分别输入给学生模型和教师模型,两个网络具有相同的架构但参数不同。教师网络的输出通过一个Batch(批次)的平均值进行centering操作(减去每个均值),每个网络输出一个维的特征,并使用 Softmax 进行归一化处理。然后使用交叉熵损失作为目标函数计算学生模型和教师模型之间的相似度,在教师模型上使用停止梯度 (stop-gradient,sg) 算子来阻断梯度的传播,只把梯度传给学生模型使其更新参数。教师模型使用学生模型的 EMA(指数滑动平均)进行参数更新,以使教师网络更加稳定。

总结:Data2vec、MoCo、Corinfomax以及DINO,除却训练目标不一致,网络结构是相似的,都是孪生网络结构(学生网络+教师网络),教师网络不参与训练,采用学生网络的参数滑动平均进行参数更新。因此,将这四种预训练方式合在一起,取长补短可以综合这四种方法的优点,进而提升模型性能。

可以理解,在本申请提供的上述技术方案的基础上,可以继续融合其他预训练方法,比如Hubert、Wav2vec等预训练方法。

本申请技术方案所产生的有益效果包括:

本申请提出了一种混合多种预训练方法的说话人识别预训练模型,采用纯无监督数据进行预训练就可以获得与有监督训练相近的结果,还可以进一步以业务少量有标签数据对预训练模型进行进一步的微调,以使在业务上取得了20%的性能提升,即能够有效提高识别模型识别说话人身份的准确性。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的识别模型的训练方法的识别模型的训练装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个识别模型的训练装置实施例中的具体限定可以参见上文中对于识别模型的训练方法的限定,在此不再赘述。

在一个实施例中,如图9所示,提供了一种识别模型的训练装置,包括:切片模块902、处理模块904、确定模块906和调整模块908,其中:

切片模块902,用于对音频样本集内的音频样本进行切片,得到第一音频切片 和第二音频切片。

处理模块904,用于通过识别模型中的第一分支网络,编码所述第一音频切片得到第一编码特征,对所述第一编码特征进行嵌入处理和维度变换得到第一高维全局特征;通过所述识别模型中的第二分支网络,编码所述第二音频切片得到第二编码特征,对所述第二编码特征进行嵌入处理和维度变换得到第二高维全局特征。

确定模块906,用于根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定第一特征值,根据所述音频样本集内第一音频样本的第一高维全局特征和其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值;根据所述第一特征值、所述第二特征值和所述音频样本集的音频样本数量确定第一损失值,根据所述第一编码特征和所述第二编码特征确定第二损失值。

调整模块908,用于根据所述第一损失值和所述第二损失值对所述第一分支网络进行参数调整,得到用于对目标对象的音频进行声纹识别的目标识别模型。

在一个实施例中,所述音频样本集内的音频样本包括第一音频样本;切片模块还用于按照第一预设间隔对所述第一音频样本进行切片,得到第一音频切片;按照第二预设间隔对所述第一音频样本进行切片,得到第二音频切片;其中,所述第一预设间隔小于所述第二预设间隔。

在一个实施例中,处理模块还用于通过识别模型中第一分支网络的编码网络对所述第一音频切片进行编码,得到第一编码特征;通过所述第一分支网络的嵌入层对所述第一编码特征进行嵌入处理,得到第一全局特征;通过所述第一分支网络中的映射层对所述第一全局特征进行特征变换,得到所述第一高维全局特征。

在一个实施例中,处理模块还用于通过识别模型中第二分支网络的编码网络对所述第二音频切片进行编码,得到第二编码特征;通过所述第二分支网络的嵌入层对所述第二编码特征进行嵌入处理,得到第二全局特征;通过所述第二分支网络中的映射层对所述第二全局特征进行特征变换,得到所述第二高维全局特征。

在一个实施例中,所述音频样本集内的音频样本包括第一音频样本和其他音频样本;确定模块还用于根据所述第一音频样本的第一高维全局特征、所述第一音频样本的第二高维全局特征和预设常数确定第一特征值;根据所述第一音频样本的第一高维全局特征、预设常数和所述其他音频样本的第一高维全局特征或第二高维全局特征确定第二特征值。

在一个实施例中,确定模块还用于根据所述第一特征值和所述第二特征值确定目标值;基于所述目标值、所述音频样本集的音频样本数量和预设值确定所述第一损失值。

在一个实施例中,所述装置还包括:分帧模块,用于对音频样本集内的音频样本进行分帧,得到所述音频样本的多帧音频数据;处理模块还用于对所述多帧音频数据进行遮挡处理,得到包含遮挡区域帧的音频样本;切片模块还用于对包含遮挡区域帧的所述音频样本进行切片,得到第一音频切片;对不包含遮挡区域帧的所述音频样本进行切片,得到第二音频切片。

在一个实施例中,所述装置还包括:编码模块,用于通过所述识别模型中的第一分支网络编码所述遮挡区域帧,得到第一编码特征;确定模块还用于基于所述第一音频切片中的遮挡区域帧,确定所述第二音频切片中相同位置的区域帧;编码模块还用于通过所述识别模型中的第二分支网络编码所述区域帧,得到第二编码特征。

在一个实施例中,确定模块还用于确定所述第一编码特征和所述第二编码特征之间差值的绝对值;基于所述差值的绝对值和预设数值,确定所述第二损失值。

在一个实施例中,确定模块还用于根据相同所述音频样本的第一高维全局特征、第二高维全局特征和所述音频样本集的音频样本数量确定第三特征值;根据相同所述音频样本的第一高维全局特征和第二高维全局特征确定协方差矩阵,并基于所述协方差矩阵确定第四特征值;根据所述第三特征值和所述第四特征值确定第三损失值;调整模块还用于根据所述第一损失值、所述第二损失值和所述第三损失值对所述第一分支网络进行参数调整。

在一个实施例中,处理模块还用于对所述第一编码特征进行嵌入处理所得的第一全局特征进行分类处理,得到第一概率值;对所述第二编码特征进行嵌入处理所得的第二全局特征进行分类处理,得到第二概率值;确定模块还用于基于所述第一概率值和所述第二概率值确定第四损失值;调整模块还用于根据所述第一损失值、所述第二损失值、所述第三损失值和所述第四损失值对所述第一分支网络进行参数调整。

在一个实施例中,所述装置还包括:获取模块,用于获取待处理的音频数据;处理模块还用于通过所述目标识别模型对所述音频数据进行处理,输出音频全局特征;所述装置还包括:比较模块,用于将所述音频全局特征与预存的音频身份特征进行比较,得到比较结果;确定模块还用于当所述比较结果表示所述音频全局特征与所述音频身份特征之间的差异满足预设对比条件时,确定所述音频数据对应的身份信息。

上述识别模型的训练装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端或服务器,在本实施例中,以该计算机设备是终端为例进行说明,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种识别模型的训练方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置,显示屏可以是液晶显示屏或电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

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

相关技术
  • 车牌识别模型训练方法、车牌识别方法、装置及设备
  • 尿检识别分类器的构造训练方法、装置及计算机设备
  • 一种人脸表情识别模型训练方法、装置及设备
  • 用于识别作弊用户的模型的训练方法、装置及电子设备
  • 机器学习模型训练方法、装置、存储介质和计算机设备
  • 识别模型的训练方法、装置、计算机设备及识别方法
  • 人员违章行为识别模型训练方法、识别方法及计算机设备
技术分类

06120116679060