一种语音主体识别方法及装置与流程

文档序号:33701158发布日期:2023-03-31 19:09阅读:51来源:国知局
一种语音主体识别方法及装置与流程

1.本发明涉及人工智能应用技术领域,具体涉及一种语音主体识别方法及装置。另外,还涉及一种电子设备及处理器可读存储介质。


背景技术:

2.随着人工智能技术的快速发展,各种语音识别应用越来越广泛,而其中语音主体识别技术尤为重要。语音主体识别是指从一段音频文件中分离出各个语音主体的音频。通常情况下,语音主体识别是基于时频分析后的语音谱完成的,要想提高语音主体识别准确率,就需要克服音频信号所面临各种各样的多样场景,包括语音主体的多样性,环境的多样性等。
3.然而,现有技术方案所得到的语音主体准确率不高,识别语音主体的效率和鲁棒性较差。因此,如何设计一种精准、高效的语音主体识别方案成为亟待解决的难题。


技术实现要素:

4.为此,本发明提供一种语音主体识别方法及装置,以解决现有技术存在的语音主体识别方案局限性较高,导致识别语音主体的效率和鲁棒性较差的问题。
5.第一方面,本发明提供一种语音主体识别方法,包括:
6.确定待处理的音频文件;
7.将所述待处理的音频文件输入到音频嵌入模型,得到所述音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量;
8.确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据;
9.其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
10.在一个实施例中,所述确定待处理的音频文件,具体包括:
11.获取待识别的原始音频文件;其中,所述原始音频文件包含至少两个语音主体的音频数据;
12.将所述原始音频文件分割为至少一个音频片段,并对所述音频片段进行快速傅里叶变换处理,得到所述待处理的音频文件。
13.在一个实施例中,基于所述相似度队列,确定语音主体对应的音频数据,具体包括:
14.确定所述相似度队列中元素数值的突变信息;
15.基于所述突变信息对所述音频嵌入向量进行初步分组,得到初步分组结果;
16.对所述初步分组结果取均值后,输入到预设的聚类模型中进行聚类,得到目标聚类结果;
17.基于所述目标聚类结果,从原始音频文件中分割出每个语音主体分别对应的音频数据。
18.在一个实施例中,确定所述相似度队列中元素数值的突变信息,具体包括:
19.获得所述相似度队列中元素数值按照预设顺序形成的图示信息;
20.基于所述图示信息,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息;
21.其中,所述突变信息为按照预设顺序排列的所述元素数值之间突变的时间点。
22.在一个实施例中,基于所述图示信息,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息,具体包括:
23.根据所述图示信息确定所述双滑动平均窗口检测突变模型的窗口大小参数;
24.基于所述窗口大小参数,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息。
25.在一个实施例中,所述聚类模型为k均值聚类模型。
26.第二方面,本发明还提供一种语音主体识别装置,包括:
27.音频文件确定单元,用于确定待处理的音频文件;
28.音频文件向量化单元,用于将所述待处理的音频文件输入到音频嵌入模型,得到所述音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量;
29.语音主体识别单元,用于确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据;
30.其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
31.在一个实施例中,所述语音主体识别单元,具体用于:
32.确定所述相似度队列中元素数值的突变信息;
33.基于所述突变信息对所述音频嵌入向量进行初步分组,得到初步分组结果;
34.对所述初步分组结果取均值后,输入到预设的聚类模型中进行聚类,得到目标聚类结果;
35.基于所述目标聚类结果,从原始音频文件中分割出每个语音主体分别对应的音频数据。
36.在一个实施例中,所述音频文件确定单元,具体用于:
37.获取待识别的原始音频文件;其中,所述原始音频文件包含至少两个语音主体的音频数据;
38.将所述原始音频文件分割为至少一个音频片段,并对所述音频片段进行快速傅里叶变换处理,得到所述待处理的音频文件。
39.在一个实施例中,确定所述相似度队列中元素数值的突变信息,具体包括:
40.获得所述相似度队列中元素数值按照预设顺序形成的图示信息;
41.基于所述图示信息,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息;
42.其中,所述突变信息为按照预设顺序排列的所述元素数值之间突变的时间点。
43.在一个实施例中,基于所述图示信息,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息,具体包括:
44.根据所述图示信息确定所述双滑动平均窗口检测突变模型的窗口大小参数;
45.基于所述窗口大小参数,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息。
46.在一个实施例中,所述聚类模型为k均值聚类模型。
47.第三方面,本发明还提供一种电子设备,包括:存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项所述的语音主体识别方法的步骤。
48.第四方面,本发明还提供一种处理器可读存储介质,所述处理器可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现如上述任意一项所述的语音主体识别方法的步骤。
49.本发明实施例提供的所述语音主体识别方法,通过分析待处理的音频文件对应音频嵌入向量之间的点积相似度矩阵,得到相应的相似度队列,并基于相似度队列识别语音主体的音频数据,能够有效提高语音主体识别的精度,提高了语音环境较为复杂的特定场景下的语音主体识别效率和鲁棒性。
附图说明
50.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。
51.图1为本发明实施例提供的语音主体识别方法的流程示意图;
52.图2为本发明实施例提供的音频嵌入模型训练过程的示意图;
53.图3为本发明实施例提供的语音主体识别方法的具体流程图;
54.图4为本发明实施例提供的相似度队列中元素数值按照预设顺序形成的图示信息的示意图;
55.图5为本发明实施例提供的语音主体识别装置的结构示意图;
56.图6为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
57.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。
58.下面基于本发明所述的语音主体识别方法,对其实施例进行详细描述。如图1所示,其为本发明实施例提供的语音主体识别方法的流程示意图,具体实现过程包括以下步骤:
59.步骤101:确定待处理的音频文件。
60.在本步骤中,首先需要获取待识别的原始音频文件。其中,该原始音频文件通常为一段长音频文件,具体包含至少两个语音主体的音频数据。每个原始音频文件有其对应的语音主体标签。将所述原始音频文件分割为至少一个音频片段,并对所述音频片段进行快速傅里叶变换处理,得到所述待处理的音频文件。例如,将原始音频文件按照1s时间间隔(或更小的时间间隔)分割成多个音频片段,然后对这些音频片段进行快速傅里叶变换,保留结果前半部分数据取绝对值(比如结果长度为x,则保留前半部分x/2的值,并取绝对值),余下的后半部分数据丢弃,变换后数据的标签保留原始音频文件的标签。
61.其中,由于有些音频信号在时域上是很难看出其特征,因此使用快速傅里叶变换可以将音频信号变换到频域以确定其信号特征。
62.步骤102:将所述待处理的音频文件输入到音频嵌入模型,得到音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量。其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
63.在本发明实施例中,执行本步骤之前,需要预先进行数据预处理,并对模型进行训练以得到所述音频嵌入模型。模型训练过程如图2所示,首先获得经过预处理的数据集(即作为训练样本的音频文件的集合),将经过预处理的数据集输入到训练数据batch生成程序,获得按照预定规则生成的训练数据batcha和按照预定规则生成的训练数据batchb。进一步的,将训练数据batcha和训练数据batchb输入到待训练的初始的音频嵌入模型中,得到训练过程中的音频嵌入向量,比如batcha嵌入向量和batchb嵌入向量。
64.具体的,假设经过预处理的数据集有9种标签,训练数据batch生成程序分别将从9种标签中随机抽取2个训练样本(即作为训练样本的音频文件),并将这2个训练样本随机分配到batch a或batch b,即batch a和batchb最终都有9个训练样本,所述9个训练样本对应的标签各不相同,并且batch a和batch b中训练样本按相同的标签顺序排序,比如batch a标签排序为“3、1、2、0”,则batch b中标签排序也需要为“3、1、2、0”,进而得到训练数据batcha和训练数据batchb。
65.所述初始的音频嵌入模型输入数据为作为训练样本的音频文件的数组,输出为有元素x个的1维度数组(即音频嵌入向量)。需要说明的是,本发明不对音频嵌入模型的结构做具体限定。
66.所述点积相似度损失函数具体计算步骤为:分别计算训练数据batch a和训练数据batch b通过初始的音频嵌入模型的音频嵌入向量c、d计算音频嵌入向量c和d中任意两元素之间的点积,得到点积相似度矩阵e,由于在训练数据batch生成程序中,训练数据batch a和训练数据batch b中训练样本按相同的标签顺序排序,所以在本发明实施例中,进行模型训练时,以位于点积相似度矩阵e对角线上的元素应该最大作为模型训练目标,即将两个相同标签之间的点积相似度最大作为模型训练目标。具体如下表所示,位于点积相似度矩阵e对角线上的元素最大分别为0.9、0.9、0.9。
67.表1为:点积相似度矩阵
[0068][0069]
在具体实施过程中,以位于点积相似度矩阵e对角线上的元素最大为训练目标,通过预设的分类损失函数计算最终损失函数。由于本发明训练目标为两个相同标签之间的点积相似度最大,所以对具体标签数值并没有要求,对所有标签均取值为range(num_classes),其中,num_classes为训练样本的标签类别数量。最终损失函数为sparse categorical crossentropy(range(num_classes),e)。
[0070]
通过上述模型训练过程得到训练完成的音频嵌入模型之后,在本步骤中,可将所述待处理的音频文件输入到音频嵌入模型,得到音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量。所述音频嵌入模型的数据处理过程与上述训练过程类似,所述音频嵌入向量包括第一音频嵌入向量与第二音频嵌入向量两组向量。在本发明实施例中,模型数据处理过程类似于模型训练阶段,参考图2所示,第一音频嵌入向量对应batch a嵌入向量,所述第二音频嵌入向量对应batch b嵌入向量。其中,所述音频嵌入模型输入数据为待处理的音频文件的数组,输出为有元素x个的1维度数组(即所述待处理的音频文件对应的音频嵌入向量)。需要说明的是,本发明不对音频嵌入模型的结构做具体限定。
[0071]
步骤103:确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据。其中,所述第一音频嵌入向量与所述第二音频嵌入向量包含的频嵌入向量不同。
[0072]
在本步骤中,基于所述相似度队列,确定语音主体对应的音频数据,具体实现过程包括:确定所述相似度队列中元素数值的突变信息;基于所述突变信息对所述音频嵌入向量进行初步分组,得到初步分组结果;对所述初步分组结果取均值后,输入到预设的聚类模型中进行聚类,得到目标聚类结果;基于所述目标聚类结果,从原始音频文件中分割出每个语音主体分别对应的音频数据。
[0073]
其中,确定所述相似度队列中元素数值的突变信息,具体实现过程包括:获得所述相似度队列中元素数值按照预设顺序形成的图示信息;根据所述图示信息确定所述双滑动平均窗口检测突变模型的窗口大小参数;基于所述窗口大小参数,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息;其中,所述突变信息为按照预设顺序排列的所述元素数值之间突变的时间点。所述聚类模型为k均值聚类模型。
[0074]
举例而言,在一个完整实施例中,确定经过预处理的推理数据(待处理的音频文件)之后,经过训练好的音频嵌入模型,能够基于相似度的解码算法,按语音主体截取其对应的音频数据。如图3所示,获取待识别的原始音频文件,其数据预处理方法和模型训练过程中的数据预处理方法相同,假设将一段60s的音频文件经过数据预处理,得到60段1s的音频片段数据,经过快速傅里叶变换处理后得到待处理的音频文件,将待处理的音频文件输入训练好的音频嵌入模型,得到60个音频嵌入向量(即1s音频嵌入向量),假设语音主体有3个。
[0075]
进一步的,基于相似度的解码算法:首先取第一音频嵌入向量(比如按标签顺序取的第1个音频嵌入向量),并与第一音频嵌入向量(比如余下59个音频嵌入向量)计算点积相似度矩阵,得到相似度队列s。由于在实际实施过程中,一般说话的音频数据是连续的,所以将相似度队列s的元素数值作图,获得所述相似度队列中元素数值按照预设顺序形成的图示信息。具体如图4所示,可得出类似如下图标的图示信息(假设音频文件1~4对应同一语音主体,音频文件5~7对应同一语音主体,8~11对应同一语音主体。因此,只要检测到4-5,7-8之间的元素数值的突变信息,就能确定语音主体的变化。具体的,可基于所述图示信息,利用双滑动平均窗口检测突变模型检测所述相似度队列中元素数值的突变信息。
[0076]
利用双滑动平均窗口检测突变模型(双滑动平均窗口检测突变算法)检测所述相似度队列中元素数值的突变信息,具体包括:本发明使用两个滑动平均窗口movavg1和movavg2,窗口大小参数可以根据实际情况设置调优。以图4中7-8之间的突变为例:使movavg1的窗口大小参数为3,movavg1计算5、6、7三个点的均值为2;使movavg2的窗口大小参数为3,movavg2计算8,9,10三个点的均值为4;再设定一个规则:如果movavg2计算得出的均值与movavg1计算得出的均值绝对值差距大小在50%(可按实际情况设置)以上,则认为movavg1与movavg2覆盖区域为不同语音主体,movavg1与movavg2交叉点即为语音主体改变的时间点,即突变时间点。使用双滑动平均窗口检测突变算法,基于所述突变时间点可以将原来60个音频嵌入向量进行初步的分组,得到初步分组结果,比如(1-10,11-19,20-40,40-60),但仍然无法确定1-10和40-60是否为同一语音主体所说。因此,对所述初步分组结果取均值后,输入到预设的聚类模型中进行聚类,得到目标聚类结果,输入到k均值聚类模型(kmeans算法)进行聚类,得到目标聚类结果。根据目标聚类结果从原始音频文件中分割出每个语音主体分别对应的音频数据。
[0077]
本发明实施例提供的所述语音主体识别方法,通过分析待处理的音频文件对应音频嵌入向量之间的点积相似度矩阵,得到相应的相似度队列,并基于相似度队列识别语音主体的音频数据,从而能够有效提高语音主体识别的精度,提高了语音环境较为复杂的特定场景下的语音主体识别效率和鲁棒性。
[0078]
与上述提供的一种语音主体识别方法相对应,本发明还提供一种语音主体识别装置。由于该装置的实施例相似于上述方法实施例,所以描述得比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的语音主体识别装置的实施例仅是示意性的。请参考图5所示,其为本发明实施例提供的一种语音主体识别装置的结构示意图。本发明所述的语音主体识别装置包括如下部分:
[0079]
音频文件确定单元501,用于确定待处理的音频文件;
[0080]
音频文件向量化单元502,用于将所述待处理的音频文件输入到音频嵌入模型,得到所述音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量;其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
[0081]
语音主体识别单元503,用于确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据。
[0082]
本发明实施例提供的所述语音主体识别装置,通过分析待处理的音频文件对应音
频嵌入向量之间的点积相似度矩阵,得到相应的相似度队列,并基于相似度队列识别语音主体的音频数据,从而能够有效提高语音主体识别的精度,提高了语音环境较为复杂的特定场景下的语音主体识别效率和鲁棒性。
[0083]
与上述提供的语音主体识别方法相对应,本发明还提供一种电子设备。由于该电子设备的实施例相似于上述方法实施例,所以描述得比较简单,相关之处请参见上述方法实施例部分的说明即可,下面描述的电子设备仅是示意性的。如图6所示,其为本发明实施例公开的一种电子设备的实体结构示意图。该电子设备可以包括:处理器(processor)601、存储器(memory)602和通信总线603,其中,处理器601,存储器602通过通信总线603完成相互间的通信,通过通信接口604与外部进行通信。处理器601可以调用存储器602中的逻辑指令,以执行语音主体识别方法。该方法包括:确定待处理的音频文件;将所述待处理的音频文件输入到音频嵌入模型,得到所述音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量;确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据;其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
[0084]
此外,上述的存储器602中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:存储芯片、u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0085]
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在处理器可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的语音主体识别方法。该方法包括:确定待处理的音频文件;将所述待处理的音频文件输入到音频嵌入模型,得到所述音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量;确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据;其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
[0086]
又一方面,本发明实施例还提供一种处理器可读存储介质,所述处理器可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的语音主体识别方法。该方法包括:确定待处理的音频文件;将所述待处理的音频文件输入到音频嵌入模型,得到所述音频嵌入模型输出的所述待处理的音频文件对应的音频嵌入向量;确定所述音频嵌入向量中第一音频嵌入向量与第二音频嵌入向量之间的点积相似度矩阵,获得相应的相似度队列;并基于所述相似度队列,确定语音主体对应的音频数据;其中,所述音频嵌入模型以位于所述点积相似度矩阵对角线上的元素数值最大为训练目标进行训练得到的。
[0087]
所述处理器可读存储介质可以是处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nand flash)、固态硬盘(ssd))等。
[0088]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0089]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0090]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1