基于声纹库的声纹识别方法、主控节点及计算节点技术

技术编号:24462253 阅读:19 留言:0更新日期:2020-06-10 17:21
本发明专利技术实施例涉及声纹识别技术领域,公开了一种基于声纹库的声纹识别方法、主控节点及计算节点。其中,应用于主控节点的基于声纹库的声纹识别方法包括:接收1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量;转发所述1:N声纹识别请求至至少两个计算节点,以使每一所述计算节点根据所述1:N声纹识别请求,将所述计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果;接收所述至少两个计算节点返回的所述声纹识别结果。本发明专利技术实施例能够降低声纹识别的时间复杂性,进而提升声纹识别系统的处理性能。

Voiceprint recognition method, master node and calculation node based on voiceprint Library

【技术实现步骤摘要】
基于声纹库的声纹识别方法、主控节点及计算节点
本专利技术涉及声纹识别
,特别是涉及一种基于声纹库的声纹识别方法、主控节点及计算节点。
技术介绍
目前,在1:N声纹识别场景中,采用最近邻搜索(NearestNeighborSearch,NNS)进行声纹识别。其中,NNS是一种线性搜索法,通过将待识别声纹数据的待识别声纹特征向量与声纹库的声纹数据的样本声纹特征向量逐条计算空间距离,最后得出距离最近的Top-K条结果向量。但是,随着声纹库规模的增大或者向量维度的增加,完成对待识别声纹数据的声纹识别的时间复杂性增加。
技术实现思路
本专利技术实施例旨在提供一种基于声纹库的声纹识别方法、主控节点及计算节点,其能够降低声纹识别的时间复杂性,进而提升声纹识别系统的处理性能。为解决上述技术问题,本专利技术实施例提供以下技术方案:第一方面,本专利技术实施例提供一种基于声纹库的声纹识别方法,包括:接收1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量;转发所述1:N声纹识别请求至至少两个计算节点,以使每一所述计算节点根据所述1:N声纹识别请求,将所述计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果;接收所述至少两个计算节点返回的所述声纹识别结果。在一些实施例中,每一所述计算节点的嵌入式内存数据库的容量等于所述声纹库的容量除以所述至少两个计算节点的个数。>在一些实施例中,所述方法还包括:对所述至少两个计算节点返回的所述声纹识别结果进行合并排序处理;将合并排序后的所述声纹识别结果发送给客户端。在一些实施例中,所述方法还包括:接收声纹数据更新请求;将待更新的声纹数据分发至目标计算节点,以使所述目标计算节点将所述待更新的声纹数据存储至对应的嵌入式内存数据库。在一些实施例中,所述将所述待更新的声纹数据分发至目标计算节点,以使所述目标计算节点将所述待更新的声纹数据存储至对应的嵌入式内存数据库,包括:利用负载均衡策略,从所述至少两个计算节点中选取目标计算节点;将所述待更新的声纹数据分发至所述目标计算节点,以使所述目标计算节点将所述待更新的声纹数据存储至对应的嵌入式内存数据库。第二方面,本专利技术实施例提供一种主控节点,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上任一项所述的基于声纹库的声纹识别方法。第三方面,本专利技术实施例提供一种基于声纹库的声纹识别方法,包括:接收主控节点转发的1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量;根据所述1:N声纹识别请求,将计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果。在一些实施例中,所述将计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,包括:启动所述计算节点的声纹识别引擎;将所述声纹识别引擎对应的嵌入式内存数据库中的所述声纹数据加载至所述声纹识别引擎的进程内存;将所述进程内存中的所述声纹数据平均分配至所述计算节点的至少两个CPU核。在一些实施例中,一个所述声纹数据包括一个样本声纹特征向量和所述样本声纹特征向量对应的样本用户信息,所述待识别声纹数据包括待识别声纹特征向量和所述待识别声纹特征向量对应的待识别用户信息。在一些实施例中,所述并行处理所述待识别声纹数据,得到声纹识别结果,包括:并行计算所述计算节点的至少两个CPU核的每一所述样本声纹特征向量与所述待识别声纹特征向量的相似度值;将所述相似度值放入对应的所述CPU核的待排序列表;根据预设规则,从所述待排序列表中筛选出所述计算节点的声纹识别结果。第四方面,本专利技术实施例提供一种计算节点,包括:嵌入式内存数据库;与所述嵌入式内存数据库通信连接的声纹识别引擎,包括至少两个CPU核,所述声纹识别引擎用于接收主控节点转发的1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量,根据所述1:N声纹识别请求,将所述嵌入式内存数据库存储的声纹数据分配至所述至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果。第五方面,本专利技术实施例提供一种声纹识别系统,包括:如上所述的主控节点;以及与所述主控节点通信连接的至少两个如上所述的计算节点。第六方面,本专利技术实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使主控节点能够执行如上对应所述的基于声纹库的声纹识别方法,以及使计算节点能够执行如上对应所述的基于声纹库的声纹识别方法。本专利技术实施例的有益效果是:区别于现有技术的情况下,本专利技术实施例提供的一种基于声纹库的声纹识别方法、主控节点及计算节点,通过接收1:N声纹识别请求,1:N声纹识别请求包括待识别声纹数据,N为声纹库的容量,转发1:N声纹识别请求至至少两个计算节点,以使每一计算节点根据1:N声纹识别请求,将计算节点的嵌入式内存数据库存储的声纹数据分配至计算节点的至少两个CPU核,以并行处理待识别声纹数据,得到声纹识别结果,接收至少两个计算节点返回的声纹识别结果。因此,本专利技术实施例通过将基于声纹库的串行NNS计算进行一级分解至至少两个计算节点,再经过二级分解至每一计算节点的至少两个CPU核中进行并行NNS计算,能够降低声纹识别的时间复杂性,进而提升声纹识别系统的处理性能;通过增加计算节点和/或CPU核的数量,使本专利技术实施例的声纹识别系统具有可扩展性。另外,通过采用嵌入式内存数据库在计算节点的内存中处理待识别声纹数据,避免了声纹库C/S网络访问模式带来的磁盘I/O、网络I/O、内存拷贝的开销。附图说明一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。图1是本专利技术实施例提供的一种声纹识别系统的结构示意图;图2是本专利技术实施例提供的一种主控节点和计算节点的结构示意图;图3是本专利技术实施例提供的应用于主控节点的其中一种基于声纹库的声纹识别方法的方法流程图;图4是本专利技术实施例提供的应用于主控节点的其中一种基于声纹库的声纹识别方法的方法流程图;图5是本专利技术实施例提供的基于图3或图4的一种基于声纹库的声纹识别方法的方法流程图;图6是图5中步骤S17的其中一种方法流程图;图7是本专利技术实施例提供的应用于主控节点的其中一种基于声纹库的本文档来自技高网...

【技术保护点】
1.一种基于声纹库的声纹识别方法,其特征在于,包括:/n接收1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量;/n转发所述1:N声纹识别请求至至少两个计算节点,以使每一所述计算节点根据所述1:N声纹识别请求,将所述计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果;/n接收所述至少两个计算节点返回的所述声纹识别结果。/n

【技术特征摘要】
1.一种基于声纹库的声纹识别方法,其特征在于,包括:
接收1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量;
转发所述1:N声纹识别请求至至少两个计算节点,以使每一所述计算节点根据所述1:N声纹识别请求,将所述计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果;
接收所述至少两个计算节点返回的所述声纹识别结果。


2.根据权利要求1所述的方法,其特征在于,每一所述计算节点的嵌入式内存数据库的容量等于所述声纹库的容量除以所述至少两个计算节点的个数。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述至少两个计算节点返回的所述声纹识别结果进行合并排序处理;
将合并排序后的所述声纹识别结果发送给客户端。


4.根据权利要求1或3所述的方法,其特征在于,所述方法还包括:
接收声纹数据更新请求;
将待更新的声纹数据分发至目标计算节点,以使所述目标计算节点将所述待更新的声纹数据存储至对应的嵌入式内存数据库。


5.根据权利要求4所述的方法,其特征在于,所述将所述待更新的声纹数据分发至目标计算节点,以使所述目标计算节点将所述待更新的声纹数据存储至对应的嵌入式内存数据库,包括:
利用负载均衡策略,从所述至少两个计算节点中选取目标计算节点;
将所述待更新的声纹数据分发至所述目标计算节点,以使所述目标计算节点将所述待更新的声纹数据存储至对应的嵌入式内存数据库。


6.一种基于声纹库的声纹识别方法,其特征在于,包括:
接收主控节点转发的1:N声纹识别请求,所述1:N声纹识别请求包括待识别声纹数据,N为所述声纹库的容量;
根据所述1:N声纹识别请求,将计算节点的嵌入式内存数据库存储的声纹数据分配至所述计算节点的至少两个CPU核,以并行处理所述待识别声纹数据,得到声纹识别结果。


7.根据权利要求6所述的方法,其特征在于...

【专利技术属性】
技术研发人员:郑立松
申请(专利权)人:深圳市声扬科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1