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

一种听歌识人方法、终端设备及存储介质

文献发布时间:2023-06-19 19:07:35


一种听歌识人方法、终端设备及存储介质

技术领域

本发明涉及人工智能领域,尤其涉及一种听歌识人方法、终端设备及存储介质。

背景技术

听歌识人是一种根据播放的歌曲判断演唱歌曲的歌手的应用。听歌识人本质上是一种声纹识别的应用,但是一方面鉴于版权原因,收集大量用于模型训练的数据花费巨大,另一方面,歌曲里面通常包含乐器声以及合音合唱的情况,这就导致了用传统的有监督的声纹识别方法在听歌识人上的效果不佳。

现有的基于有监督学习的声纹识别的听歌识人方法存在以下的局限性:

(1)需要大量有标签的歌手语音,版权花费巨大;

(2)需要人工将歌手声音部分截取出来作为训练集;

(3)语音本身包含的信息远比稀疏的标签更加丰富,因此有监督学习训练的模型有时候容易被攻击,导致识别结果出错率较高;

(4)有监督学习通过标签训练得到的模型只能学到一些任务特定的知识,无法学习到一种通用的知识,因此有监督学习学到的特征难以迁移到其他任务,通用性差。

发明内容

为了解决上述问题,本发明提出了一种听歌识人方法、终端设备及存储介质,无需支付高额版权费收集大量歌手歌曲,也无需人工对歌曲进行截取,只需要适量正常的带说话人标注的语音及歌手歌曲片段即可实现对听歌识人模型的训练。

具体方案如下:

一种听歌识人方法,包括以下步骤:

S1:采集单一说话人的音频数据,并基于采集的音频数据构建第一训练集;

S2:基于卷积神经网络和残差神经网络构建自监督学习模型;

S3:基于第一训练集中的音频,通过不同方式提取n种不同类型的声学特征后,将提取的每个类型的声学特征作为一次回归任务的标签,对自监督学习模型进行n次回归训练;

S4:将第一训练集中的各音频作为第n+1次回归任务的标签,对第n次回归训练后得到的自监督学习模型进行第n+1次回归训练;

S5:基于第n+1次回归训练结果构建自监督学习模型的鉴别任务,提取第一训练集中包含的正样本对和负样本对,并通过正样本对和负样本对自监督学习模型的第n+1次回归训练结果进行鉴别训练,将鉴别训练后的自监督学习模型作为听歌识人模型;

S6:采集标注有歌手名的独唱歌曲音频数据并进行声纹特征提取后,进行人声和伴奏声的分离,将歌手名和伴奏作为听歌识人模型分类任务的标签,基于分离后的音频数据构建第二训练集。

S7:通过第二训练集对听歌识人模型进行分类训练,得到最终听歌识人模型;

S8:通过最终听歌识人模型对待识别歌曲的歌手进行识别。

进一步的,步骤S1和S6中第一训练集和第二训练集的构建方法均为:将音频数据进行切分和转码处理后的结果组成训练集。

进一步的,步骤S2中卷积神经网络的激活函数采用sinc函数。

进一步的,步骤S3中声学特征提取的方式为采用n种特征提取算法分别提取多种声学特征,并对每个声学特征分别进行时间弯折和频率随机掩码处理后得到对应的两种声学特征。

进一步的,步骤S3中进行的前n次回归训练中,将自监督学习模型的输出进行批一化操作后,输入至三层全连接网络。

进一步的,步骤S4中在第n+1次回归任务中,将自监督学习模型的输出依次进行批一化操作和解卷积操作后,输入至三层全连接网络。

进一步的,步骤S7中在对听歌识人模型进行分类训练中,将听歌识人模型的输出输入AAM-Softmax函数。

进一步的,步骤S8的具体过程包括以下步骤:

S81:将歌曲库中的各歌曲的声纹特征输入最终听歌识人模型后得到对应歌手的特征;

S82:将待识别歌曲的声纹特征输入最终听歌识人模型后,将最终听歌识人模型输出的未知歌手的特征与步骤S81中得到的已知歌手的特征进行相似度计算,将相似度最高时对应的歌手作为待识别歌曲的歌手。

一种听歌识人终端设备,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例上述的方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述的方法的步骤。

本发明采用如上技术方案,可以仅利用未标注的音频生成大量的训练数据,降低了收集数据的成本;可以对噪声、混响等干扰有很强的抗干扰性。

附图说明

图1所示为本发明实施例一的流程图。

具体实施方式

为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。

现结合附图和具体实施方式对本发明进一步说明。

实施例一:

本发明实施例提供了一种听歌识人方法,如图1所示,所述方法包括以下步骤:

S1:采集单一说话人的音频数据,并基于采集的音频数据构建第一训练集。

由于采集的音频数据来源可能不同,因此编码格式可能不同,为了提高候选模型训练的准确性,该实施例中还包括将音频进行转码处理。

该实施例中还包括对音频数据进行切分,以增加训练集中的样本数量,对于切分后的过短的音频可以去除,以保证音频中包含足够的信息。

综上,将每个采集的音频数据进行切分和转码处理后的结果组成训练集。

该实施例中将音频数据切分为时长为2秒的音频数据,转码处理为统一转码为PCM编码的wav格式,在其他实施例中也可以根据需要切分为其他时长或转码为其他格式,在此不做限定。

S2:基于卷积神经网络(CNN)和残差神经网络(ResNet)构建自监督学习模型。

该实施例中卷积神经网络的激活函数优选采用sinc函数,一方面参数数量不会随着卷积核的变化而变化,因此卷积核可以设为更大的尺寸,捕获更大区间的上下文信息,另一方面sinc函数可以更好地捕获说话人特性,有利于提升声纹识别效果。残差神经网络采用34层。

S3:基于第一训练集中的音频,通过不同方式提取n种不同类型的声学特征后,将提取的每个类型的声学特征作为一次回归任务的标签,对自监督学习模型进行n次回归训练。

该实施例中声学特征的提取方式为:采用MFCC、Fbank、LPS和prosody四种特征提取算法分别提取四种声学特征,并对每个声学特征分别进行时间弯折(time wraping)和频率随机掩码处理后得到对应的两种声学特征。由于包含六种声学特征,因此,步骤S3中包含六次回归任务,对应前四种声学特征的回归任务中,模型的输入和标签均为某一声学特征;对应于后两种声学特征的回归任务中,模型的输入为时间弯折或频率随机掩码处理前的声学特征,模型的标签为时间弯折或频率随机掩码处理后的声学特征。在其他实施例中也可以采用其他的算法得到其他类型的声学特征,在此不做限定。通过多次回归任务对模型进行训练,一方面可以增加训练集中的样本数量,另一方面可以让模型学习到这些处理后的特征,进而提高模型的准确率。

在前n(该实施例中n=6)次回归训练中,将自监督学习模型的输出embedding进行非仿射的批一化操作后,输入至三层全连接网络。采用的损失函数为最小均方误差(MSE)。

S4:将第一训练集中的各音频作为第n+1次回归任务的标签,对第n次回归训练后得到的自监督学习模型进行第n+1次回归训练。

第n+1次回归任务中,模型的输入为第一训练集中的原始音频。在第n+1次回归任务中,将自监督学习模型的输出embedding依次进行非仿射的批一化操作和解卷积操作后,输入至三层全连接网络。采用的损失函数为1范数的平均绝对误差(MAE)。

S5:基于第n+1次回归训练结果构建自监督学习模型的鉴别任务,提取第一训练集中包含的正样本对和负样本对,并通过正样本对和负样本对自监督学习模型的第n+1次回归训练结果进行鉴别训练,将鉴别训练后的自监督学习模型作为听歌识人模型。

正样本对包括两个属于同一说话人的音频,负样本对包括两个属于不同说话人的音频。

该实施例中鉴别训练时的损失函数采用二交叉熵损失函数。

第n+1次回归训练将原始音频作为回归任务的标签,可以使得训练后的模型具有抗噪、抗混响、抗变形失真等功能。

S6:采集标注有歌手名的独唱歌曲音频数据并进行声纹特征提取后,进行人声和伴奏声的分离,将歌手名和伴奏作为听歌识人模型分类任务的标签,基于分离后的音频数据构建第二训练集。

人声和伴奏声的分离可以采用开源工具Spleeter进行,也可以采用聚类算法进行,在此不做限定。标签中的歌手名为具体的名字,伴奏为所有伴奏声的标签。

与第一训练集类似,第二训练集的构建中也需要将音频数据进行切分和转码处理后的结果组成训练集。

S7:通过第二训练集对听歌识人模型进行分类训练,训练后得到最终听歌识人模型。

该实施例在对听歌识人模型进行分类训练中,将听歌识人模型的输出输入AAM-Softmax函数。分类训练时采用的损失函数为交叉熵损失函数。

S8:通过最终听歌识人模型对待识别歌曲的歌手进行识别。

该实施例中步骤S8的具体过程包括以下步骤:

S81:将歌曲库中的各歌曲的声纹特征输入最终听歌识人模型后得到对应歌手的特征embedding。

歌曲库为包含所有歌手的歌曲为最佳。

S82:将待识别歌曲的声纹特征输入最终听歌识人模型后,将最终听歌识人模型输出的未知歌手的特征embedding与步骤S81中得到的已知歌手的特征embedding进行相似度计算,将相似度最高时对应的歌手作为待识别歌曲的歌手。

实施例二:

本发明还提供一种听歌识人终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例一的上述方法实施例中的步骤。

进一步地,作为一个可执行方案,所述听歌识人终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述听歌识人终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,上述听歌识人终端设备的组成结构仅仅是听歌识人终端设备的示例,并不构成对听歌识人终端设备的限定,可以包括比上述更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述听歌识人终端设备还可以包括输入输出设备、网络接入设备、总线等,本发明实施例对此不做限定。

进一步地,作为一个可执行方案,所称处理器可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述听歌识人终端设备的控制中心,利用各种接口和线路连接整个听歌识人终端设备的各个部分。

所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述听歌识人终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述方法的步骤。

所述听歌识人终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)以及软件分发介质等。

尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。

相关技术
  • 一种终端设备的充电方法、终端设备及计算机存储介质
  • 一种存储管理方法、计算机可读存储介质及终端设备
  • 一种基于NAND FLASH的数据存储方法、终端设备及存储介质
  • 一种网格划分方法、计算机可读存储介质及终端设备
  • 一种无线投屏方法、终端设备及存储介质
  • 一种说话人音频分离方法、终端设备及存储介质
  • 一种机器人的控制方法、装置、终端设备及存储介质
技术分类

06120115802010