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

模型训练方法、用户识别方法、系统、设备及介质

文献发布时间:2023-06-19 12:24:27


模型训练方法、用户识别方法、系统、设备及介质

技术领域

本发明涉及声纹识别技术领域,特别涉及一种模型训练方法、用户识别方法、系统、设备及介质。

背景技术

随着非接触多模态技术的蓬勃发展,多态融合验证逐渐成为趋势,单个技术识别具有较强的局限性,精度无法达到某些场景下的商业要求,同时仅凭单一识别技术存在漏洞和安全风险,“声纹识别+”的多模态技术融合后的产品形态将会明显提升用户使用体验。最近DeepFake(由人工智能生成的语音或视频)诈骗兴起,声纹识别也逐步成为音视频鉴伪技术的焦点,模仿、合成说话人的声音易于欺骗人耳,但难以欺骗声纹识别系统,因此声纹识别技术对反欺诈效果具有较好的鉴别性。而由于各场景的特殊性,通用的声纹识别系统无法满足业务需求。

目前在OTA(Online Travel Agency,在线旅游社)场景中的基于声纹识别的系统中,仍然没有实时性较高的声纹识别框架用于用户身份的验证,由于用户量大,录音环境复杂,建立上千万声纹库困难极大。

而在OTA行业中用户下完酒店订单后存在“陌生人”查房或者修改酒店订单信息的行为,此行为严重损害了用户的信息安全和OTA平台的利益。在OTA行业需要有巨大的呼叫中心支撑,定然每天产生大量的通话录音,电话录音中涉及客人和客服两端,客服环境相对单一,但是客人环境极其复杂,且动态变化,给声纹识别系统带来较大的挑战,而现有的模型由于难收敛、辨别度低以及性能差,导致识别进线用户身份的准确率低、安全性差的缺陷。

发明内容

本发明要解决的技术问题是为了克服现有技术中的模型由于难收敛、辨别度低以及性能差,导致识别进线用户身份的准确率低、安全性差的缺陷,提供一种模型训练方法、用户识别方法、系统、设备及介质。

本发明是通过下述技术方案来解决上述技术问题:

本发明第一方面提供了一种模型训练方法,包括:

获取训练样本,所述训练样本包括多个音频数据;

设置神经网络模型训练时所使用的损失函数;

基于每个所述音频数据以及所述损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型;

所述损失函数包括第一损失函数和第二损失函数,所述第一损失函数为基于特征角度进行分类的损失函数,所述第二损失函数为区分类间和类内的损失函数。

较佳地,所述损失函数的表达式为:L

其中,

L

较佳地,所述神经网络模型包括3层卷积层、9层残差链接层、3层SE-block(特征提取)层、attention pooling(注意力集中)层和affine(仿射)层;每层所述卷积层与3层残差链接层以及1层SE-block层进行结合组成15层神经网络。

较佳地,所述获取训练样本的步骤之后,所述模型训练方法还包括:

对每个音频数据进行数据增强处理;

对每个数据增强后的音频数据进行噪音去除处理,以得到每个去除噪音后的音频数据;

所述基于每个所述音频数据以及所述损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型的步骤具体包括:

基于所述每个去除噪音后的音频数据以及所述损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型。

本发明第二方面提供了一种模型训练系统,包括第一获取模块、设置模块和训练模块;

所述第一获取模块用于获取训练样本,所述训练样本包括多个音频数据;

所述设置模块用于设置神经网络模型训练时所使用的损失函数;

所述训练模块用于基于每个所述音频数据以及所述损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型;

所述损失函数包括第一损失函数和第二损失函数,所述第一损失函数为基于特征角度进行分类的损失函数,所述第二损失函数为区分类间和类内的损失函数。

较佳地,所述损失函数的表达式为:L

其中,

L

较佳地,所述神经网络模型包括3层卷积层、9层残差链接层、3层SE-block层、attention pooling层和affine层;每层所述卷积层与3层残差链接层以及1层SE-block层进行结合组成15层神经网络。

较佳地,所述模型训练系统还包括第一处理模块和第二处理模块;

所述第一处理模块用于对每个音频数据进行数据增强处理;

所述第二处理模块用于对每个数据增强后的音频数据进行噪音去除处理,以得到每个去除噪音后的音频数据;

所述训练模块具体用于基于所述每个去除噪音后的音频数据以及所述损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型。

本发明第三方面提供了一种用户识别方法,包括:

获取进线用户的音频数据和所述音频数据对应的标识信息;

提取所述音频数据的声纹特征;

将所述声纹特征输入声纹识别模型,得到第一声纹特征向量,所述声纹识别模型利用上述第一方面所述的模型训练方法训练得到;

从声纹数据库中获取所述标识信息对应的第一历史声纹特征向量;

计算所述第一声纹特征向量与所述第一历史声纹特征向量的第一相似度得分;

若所述第一相似度得分大于相似度阈值,则确定所述进线用户与所述第一历史声纹特征向量对应的用户为同一个人。

较佳地,所述提取所述音频数据的声纹特征的步骤之前,所述用户识别方法还包括:

对所述进线用户的音频数据进行编码转换,以得到编码转换后的音频数据;

对所述编码转换后的音频数据进行音频切割及噪音去除处理;

拼接音频切割及噪音去除后的音频数据;

所述提取所述音频数据的声纹特征的步骤具体包括:

提取拼接后的音频数据的声纹特征。

较佳地,若所述第一相似度得分大于所述相似度阈值,则确定所述进线用户与所述第一历史声纹特征向量对应的用户为同一个人的步骤之后,所述用户识别方法还包括:

计算所述第一声纹特征向量对应的音频数据与所述第一历史声纹特征向量对应的音频数据的音频质量得分;

将音频质量得分高的声纹特征向量更新至所述声纹数据库中;

和/或,

所述用户识别方法还包括:

若所述第一相似度得分不大于所述相似度阈值,则判断所述声纹数据库中是否有所述标识信息对应的第二历史声纹特征向量,若有,则计算所述第一声纹特征向量与所述第二历史声纹特征向量的第二相似度得分,在所述第二相似度得分大于所述相似度阈值时,将所述声纹数据库中的所述第一历史声纹特征向量替换为所述第二历史声纹特征向量。

本发明第四方面提供了一种用户识别系统,包括第二获取模块、提取模块、第三获取模块、第四获取模块、第一计算模块和确定模块;

所述第二获取模块用于获取进线用户的音频数据和所述音频数据对应的标识信息;

所述提取模块用于提取所述音频数据的声纹特征;

所述第三获取模块用于将所述声纹特征输入声纹识别模型,得到第一声纹特征向量,所述声纹识别模型利用上述第二方面所述的模型训练系统训练得到;

所述第四获取模块用于从声纹数据库中获取所述标识信息对应的第一历史声纹特征向量;

所述第一计算模块用于计算所述第一声纹特征向量与所述第一历史声纹特征向量的第一相似度得分;

所述确定模块用于若所述第一相似度得分大于相似度阈值,则确定所述进线用户与所述第一历史声纹特征向量对应的用户为同一个人。

较佳地,所述用户识别系统还包括转换模块、第三处理模块和拼接模块;

所述转换模块用于对所述进线用户的音频数据进行编码转换,以得到编码转换后的音频数据;

所述第三处理模用于对所述编码转换后的音频数据进行音频切割及噪音去除处理;

所述拼接模块用于拼接音频切割及噪音去除后的音频数据;

所述提取模块具体用于提取拼接后的音频数据的声纹特征。

较佳地,所述用户识别系统还包括第二计算模块和存储模块;

所述第二计算模块用于计算所述第一声纹特征向量对应的音频数据与所述第一历史声纹特征向量对应的音频数据的音频质量得分;

所述存储模块用于将音频质量得分高的声纹特征向量更新至所述声纹数据库中;

和/或,

所述用户识别系统还包括判断模块、第三计算模块和替换模块;

所述判断模块用于若所述第一相似度得分不大于所述相似度阈值,则判断所述声纹数据库中是否有所述标识信息对应的第二历史声纹特征向量,若有,则调用所述第三计算模块;

所述第三计算模块用于计算所述第一声纹特征向量与所述第二历史声纹特征向量的第二相似度得分;

所述替换模块用于在所述第二相似度得分大于所述相似度阈值时,将所述声纹数据库中的所述第一历史声纹特征向量替换为所述第二历史声纹特征向量。

本发明第五方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的模型训练方法,或执行如第三方面所述的用户识别方法。

本发明第六方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的模型训练方法,或执行如第三方面所述的用户识别方法。

本发明的积极进步效果在于:

本发明利用获取的训练样本中的多个音频数据以及设置的神经网络模型训练时所使用的损失函数对神经网络模型进行模型训练,以得到声纹识别模型,损失函数包括第一损失函数和第二损失函数,实现了基于第一损失函数和第二损失函数相结合对神经网络模型进行模型训练,提升了声纹识别模型的辨别度和性能,避免了声纹识别模型难收敛的问题,进而提高了声纹识别模型识别进线用户身份的准确率低和安全性。

附图说明

图1为本发明实施例1的模型训练方法的流程图。

图2为本发明实施例2的模型训练系统的模块示意图。

图3为本发明实施例3的电子设备的结构示意图。

图4为本发明实施例5的用户识别方法的流程图。

图5为本发明实施例6的用户识别系统的模块示意图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

实施例1

如图1所示,本实施例提供一种模型训练方法,该模型训练方法包括:

步骤101、获取训练样本,该训练样本包括多个音频数据。

在OTA行业中,当客人或酒店和OTA客服通过电话实时语音沟通时,对于单通道音频而言,无论是客人端还是客服端,都是包含整通音频时长,本实施例可以收集不同用户的音频数据作为训练样本,也可以收集不同用户以及不同客服的音频数据作为训练样本。

步骤102、对每个音频数据进行数据增强处理。

步骤103、对每个数据增强后的音频数据进行噪音去除处理,以得到每个去除噪音后的音频数据。

例如,本实施例收集1600个客服的音频数据和8000个客人的音频数据作为训练样本,音频数据共达120万个音频片段,对120万个音频数据进行数据增强处理,数据增强处理包括变速、加机械噪音、加混响,将120万个音频数据进行数据增强处理后音频数据达到250万个音频片段,共涉及9600个不同说话人,以使训练样本数量更多更丰富,然后使用VAD(语音端点检测)对音频数据进行端点检测,去除音频数据中部分噪音,最终得到去除噪音后的音频数据,再按批次训练神经网络模型。

步骤104、设置神经网络模型训练时所使用的损失函数。

本实施例中,损失函数包括第一损失函数和第二损失函数,第一损失函数为基于特征角度进行分类的损失函数,其具有特征表达的角度空间中最大化分类界限的优势;第二损失函数为区分类间和类内的损失函数,其具有类间距离最大化同时类内距离最小化的作用。本实施例中第一损失函数具体为AAM-softmax(Additive Angular Margin Loss附加角裕度损失函数),第二损失函数具体为cos-softmax(余弦损失函数),将AAM-softmax与cos-softmax进行结合形成神经网络模型训练时所使用的损失函数,以使神经网络模型对说话人类间和类内有更优的区分效果。

本实施例中,损失函数的表达式为:L

其中,

L

步骤105、基于每个去除噪音后的音频数据以及损失函数对神经网络模型进行模型训练,以得到声纹识别模型。

本实施例中,基于每个音频数据以及损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型,具体地,基于每个去除噪音后的音频数据以及损失函数对神经网络模型进行模型训练,以得到声纹识别模型。

本实施例中将每个去除噪音后的音频数据输入神经网络模型,采用损失函数对神经网络模型进行模型训练,以得到声纹识别模型。

本实施例中,神经网络模型包括3层卷积层、9层残差链接层、3层SE-block层、attention pooling层和affine层;每层卷积层与3层残差链接层以及1层SE-block层进行结合组成15层神经网络。具体地,神经网络模型设置输入特征的维度为(400,101),提取了101维的频谱图特征作为该神经网络模型的输入,神经网络结构设计为3层卷积层、9层残差链接层和3层SE-block层,每层卷积层和3层残差层、1层SE-block层进行结合,共组成15层有效神经网络设计,其中,卷积层可以有效提取音频频谱图深层声纹特征,残差层可以有效调节神经网络的收敛性能,SE-block层可以添加音频数据中的channel(通道)的注意力,让有用的特征表现的更加明显,神经网络模型最后接一层attention pooling层,该层可以将音频的帧级特征转换为音频的段级特征,同时还可以增强每帧数据的重要性,神经网络网络模型后再接一个affine层生成一个512维的声纹特征向量,将生成的512维的声纹特征向量传输给AAM-softmax和cos-softmax计算损失。

本实施例利用获取的训练样本中的多个音频数据以及设置的神经网络模型训练时所使用的损失函数对神经网络模型进行模型训练,以得到声纹识别模型,损失函数包括第一损失函数和第二损失函数,实现了基于第一损失函数和第二损失函数相结合对神经网络模型进行模型训练,提升了声纹识别模型的辨别度和性能,避免了声纹识别模型难收敛的问题,进而提高了声纹识别模型识别进线用户身份的准确率低和安全性。

实施例2

如图2所示,本实施例提供一种模型训练系统,该模型训练系统包括第一获取模块1、第一处理模块2、第二处理模块3、设置模块4和训练模块5。

第一获取模块1用于获取训练样本,该训练样本包括多个音频数据。

在OTA行业中,当客人或酒店和OTA客服通过电话实时语音沟通时,对于单通道音频而言,无论是客人端还是客服端,都是包含整通音频时长,本实施例可以收集不同用户的音频数据作为训练样本,也可以收集不同用户以及不同客服的音频数据作为训练样本。

第一处理模块2用于对每个音频数据进行数据增强处理。

第二处理模块3用于对每个数据增强后的音频数据进行噪音去除处理,以得到每个去除噪音后的音频数据。

例如,本实施例收集1600个客服的音频数据和8000个客人的音频数据作为训练样本,音频数据共达120万个音频片段,对120万个音频数据进行数据增强处理,数据增强处理包括变速、加机械噪音、加混响,将120万个音频数据进行数据增强处理后音频数据达到250万个音频片段,共涉及9600个不同说话人,以使训练样本数量更多更丰富,然后使用VAD对音频数据进行端点检测,去除音频数据中部分噪音,最终得到去除噪音后的音频数据,再按批次训练神经网络模型。

设置模块4用于设置神经网络模型训练时所使用的损失函数。

本实施例中,损失函数包括第一损失函数和第二损失函数,第一损失函数为基于特征角度进行分类的损失函数,其具有特征表达的角度空间中最大化分类界限的优势;第二损失函数为区分类间和类内的损失函数,其具有类间距离最大化同时类内距离最小化的作用。本实施例中第一损失函数具体为AAM-softmax,第二损失函数具体为cos-softmax,将AAM-softmax与cos-softmax进行结合形成神经网络模型训练时所使用的损失函数,以使神经网络模型对说话人类间和类内有更优的区分效果。

本实施例中,损失函数的表达式为:L

其中,

L

训练模块5具体用于基于每个去除噪音后的音频数据以及损失函数对神经网络模型进行模型训练,以得到声纹识别模型。

本实施例中,训练模块5用于基于每个音频数据以及损失函数对所述神经网络模型进行模型训练,以得到声纹识别模型,具体地,训练模块5具体基于每个去除噪音后的音频数据以及损失函数对神经网络模型进行模型训练,以得到声纹识别模型。

本实施例中将每个去除噪音后的音频数据输入神经网络模型,采用损失函数对神经网络模型进行模型训练,以得到声纹识别模型。

本实施例中,神经网络模型包括3层卷积层、9层残差链接层、3层SE-block层、attention pooling层和affine层;每层卷积层与3层残差链接层以及1层SE-block层进行结合组成15层神经网络。具体地,神经网络模型设置输入特征的维度为(400,101),提取了101维的频谱图特征作为该神经网络模型的输入,神经网络结构设计为3层卷积层、9层残差链接层和3层SE-block层,每层卷积层和3层残差层、1层SE-block层进行结合,共组成15层有效神经网络设计,其中,卷积层可以有效提取音频频谱图深层声纹特征,残差层可以有效调节神经网络的收敛性能,SE-block层可以添加音频数据中的channel的注意力,让有用的特征表现的更加明显,神经网络模型最后接一层attention pooling层,该层可以将音频的帧级特征转换为音频的段级特征,同时还可以增强每帧数据的重要性,神经网络网络模型后再接一个affine层生成一个512维的声纹特征向量,将生成的512维的声纹特征向量传输给AAM-softmax和cos-softmax计算损失。

本实施例利用获取的训练样本中的多个音频数据以及设置的神经网络模型训练时所使用的损失函数对神经网络模型进行模型训练,以得到声纹识别模型,损失函数包括第一损失函数和第二损失函数,实现了基于第一损失函数和第二损失函数相结合对神经网络模型进行模型训练,提升了声纹识别模型的辨别度和性能,避免了声纹识别模型难收敛的问题,进而提高了声纹识别模型识别进线用户身份的准确率低和安全性。

实施例3

图3为本发明实施例3提供的一种电子设备的结构示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例1的模型训练方法。图3显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图3所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。

总线33包括数据总线、地址总线和控制总线。

存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。

存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1的模型训练方法。

电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图3所示,网络适配器36通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例4

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例1所提供的模型训练方法。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例1所述的模型训练方法。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

实施例5

如图4所示,本实施例提供一种用户识别方法,该用户识别方法包括:

步骤201、获取进线用户的音频数据和音频数据对应的标识信息。

在OTA场景中通话录音为双通道的,需要对音频进行分离,声音分成两个通道,一个通道存放客服的录音,一个通道存放客人的录音,这样可以对不同通道的录音进行处理。根据录音交叉式的存储方式进行音频分离,并分别收集用户端和客服端的录音。

本实施例中接收电话信道实时传输的音频数据,将音频数据进行逻辑判断,筛选出应用场景内的通话录音,其中逻辑判断包括录音属性编码方式,通道分离得到进线用户和客服端的录音,对电话状态进线的判断以及搜索声纹信息,并针对不同部门调取不同服务;具体地,先获取用户打给客服的音频数据,再将该音频数据进行左右声道分离,获取进线用户的音频数据,在判断出电话在接通状态时,获取进线用户的音频数据对应的标识信息(该标识信息可以为电话号码,也可以为其他标识,本实施例中以电话号码为例),若在声纹数据库中能搜索到该电话号码对应的第一历史声纹特征向量,则判断出该电话号码属于哪个部门负责。

步骤202、对进线用户的音频数据进行编码转换,以得到编码转换后的音频数据。

本实施例中,对进线用户的音频数据进行编码转换具体是将字母音频数据转换为数字音频数据,以提高对进线用户识别的效率。

步骤203、对编码转换后的音频数据进行音频切割及噪音去除处理。

步骤204、拼接音频切割及噪音去除后的音频数据。

本实施例中,将接收到的音频数据进行音频转码和VAD操作,对编码转换后的音频数据进行音频切割及噪音去除处理,然后将音频切割及噪音去除后的音频数据再次拼接在一起。

本实施例中,使用VAD对音频数据进行端点检测,该检测流程经过两次VAD组合,第一次经过TDNN(时延神经网络)深度学习端点检测,检测出一通电话中端点处位置;第二次再经过连续帧的TDNN的VAD处理方法,若该音频数据中连续N帧音频中有一帧大于经过实验得到的阈值(该阈值根据实际情况进行设置)时,则这N帧都视为有效帧,若该音频中连续N帧音频的能量值均小于该阈值时,则该N帧视为无效帧,将其剔除,此方法可有效保留说话人原有的说话风格,不会过度对音频数据进行切割。

步骤205、提取拼接后的音频数据的声纹特征。

本实施例中,提取音频数据的声纹特征,具体地,提取拼接后的音频数据的声纹特征。

步骤206、将声纹特征输入声纹识别模型,得到第一声纹特征向量,该声纹识别模型利用实施例1的模型训练方法训练得到。

本实施例中,第一声纹特征向量为512维的向量,在具体实施过程中将提取的拼接后的音频数据的声纹特征输入声纹识别模型进行解码,解码出一个512维的第一声纹特征向量作为该段音频的信息。

步骤207、从声纹数据库中获取标识信息对应的第一历史声纹特征向量。

本实施例中,根据进线用户的电话号码从声纹数据库中获取该电话号码对应的第一历史声纹特征向量。

步骤208、计算第一声纹特征向量与第一历史声纹特征向量的第一相似度得分。

本实施例通过余弦相似度算法计算第一声纹特征向量与第一历史声纹特征向量的第一相似度得分。

步骤209、若第一相似度得分大于相似度阈值,则确定进线用户与第一历史声纹特征向量对应的用户为同一个人。

本实施例基于AAM-softmax与cos-softmax相结合训练得到的声纹识别模型实现了端到端的训练和预测模式,避免了人工设置阈值,可直接判断进线用户是否是该电话号码对应的用户本人,加强了客服对来电客人的审核力度,减少了OTA客服处理的失误率,保证了真实客人和OTA平台的安全性,为后续离线客服质检提供了帮助。

在一可实施的方案中,如图4所示,该用户识别方法还包括:

步骤210、计算第一声纹特征向量对应的音频数据与第一历史声纹特征向量对应的音频数据的音频质量得分。

本实施例中,根据音频的信噪比或截幅大小计算得到音频数据的音频质量得分,信噪比越大,噪音越小,音频质量得分越高,截幅越小音频质量得分越高。

步骤211、将音频质量得分高的声纹特征向量更新至声纹数据库中。

本实施例中,根据音频质量分筛除质量过差的音频数据,将音频质量得分高的声纹特征向量更新至声纹数据库中。

本实施例中,该用户识别方法还包括:若第一相似度得分不大于相似度阈值,则判断声纹数据库中是否有标识信息对应的第二历史声纹特征向量,若有,则计算第一声纹特征向量与第二历史声纹特征向量的第二相似度得分,在第二相似度得分大于相似度阈值时,将声纹数据库中的第一历史声纹特征向量替换为第二历史声纹特征向量。

本实施例中,调用事先训练好的声纹识别模型,先判断声纹数据库中是否有进线用户电话号码对应的历史声纹特征向量(即第一历史声纹特征向量),若没有,则将该电话号码当前的声纹特征向量(即第一声纹特征向量)保存至声纹数据库中,若有,则计算历史声纹特征向量(即第一历史声纹特征向量)和当前声纹特征向量(即第一声纹特征向量)的相似度得分(即第一相似度得分),若第一相似度得分大于相似度阈值,则第一历史声纹特征向量与第一声纹特征向量相似,再计算第一声纹特征向量对应的音频数据与第一历史声纹特征向量对应的音频数据的音频质量得分;将音频质量得分高的声纹特征向量更新至声纹数据库中。若第一相似度得分不大于相似度阈值,则第一历史声纹特征向量与第一声纹特征向量不相似,则判断声纹数据库中是否有该电话号码对应的第二历史声纹特征向量,若有,则计算第一声纹特征向量与第二历史声纹特征向量的第二相似度得分,在第二相似度得分大于相似度阈值时,则第一声纹特征向量与第二历史声纹特征向量相似,将声纹数据库中的第一历史声纹特征向量替换为第二历史声纹特征向量。若第一声纹特征向量与第二历史声纹特征向量也不相似,则停止更新声纹数据库;若声纹数据库中不存在第二声纹特征向量,则在客服校验用户身份后,根据客服校验的结果决定是否保存第二声纹特征向量。实现了对声纹数据库的更新,以便为基于声纹识别模型识别用户提供服务保障。

实施例6

如图5所示,本实施例提供一种用户识别系统,该用户识别系统包括第二获取模块6、转换模块7、第三处理模块8、拼接模块9、提取模块10、第三获取模块11、第四获取模块12、第一计算模块13和确定模块14。

第二获取模块6用于获取进线用户的音频数据和音频数据对应的标识信息。

在OTA场景中通话录音为双通道的,需要对音频进行分离,声音分成两个通道,一个通道存放客服的录音,一个通道存放客人的录音,这样可以对不同通道的录音进行处理。根据录音交叉式的存储方式进行音频分离,并分别收集用户端和客服端的录音。

本实施例中接收电话信道实时传输的音频数据,将音频数据进行逻辑判断,筛选出应用场景内的通话录音,其中逻辑判断包括录音属性编码方式,通道分离得到进线用户和客服端的录音,对电话状态进线的判断以及搜索声纹信息,并针对不同部门调取不同服务;具体地,先获取用户打给客服的音频数据,再将该音频数据进行左右声道分离,获取进线用户的音频数据,在判断出电话在接通状态时,获取进线用户的音频数据对应的标识信息(该标识信息可以为电话号码,也可以为其他标识,本实施例中以电话号码为例),若在声纹数据库中能搜索到该电话号码对应的第一历史声纹特征向量,则判断出该电话号码属于哪个部门负责。

转换模块7用于对进线用户的音频数据进行编码转换,以得到编码转换后的音频数据。

本实施例中,对进线用户的音频数据进行编码转换具体是将字母音频数据转换为数字音频数据,以提高对进线用户识别的效率。

第三处理模8用于对编码转换后的音频数据进行音频切割及噪音去除处理。

拼接模块9用于拼接音频切割及噪音去除后的音频数据。

本实施例中,将接收到的音频数据进行音频转码和VAD操作,对编码转换后的音频数据进行音频切割及噪音去除处理,然后将音频切割及噪音去除后的音频数据再次拼接在一起。

本实施例中,使用VAD对音频数据进行端点检测,该检测流程经过两次VAD组合,第一次经过TDNN深度学习端点检测,检测出一通电话中端点处位置;第二次再经过连续帧的TDNN的VAD处理方法,若该音频数据中连续N帧音频中有一帧大于经过实验得到的阈值(该阈值根据实际情况进行设置)时,则这N帧都视为有效帧,若该音频中连续N帧音频的能量值均小于该阈值时,则该N帧视为无效帧,将其剔除,此方法可有效保留说话人原有的说话风格,不会过度对音频数据进行切割。

提取模块10具体用于提取拼接后的音频数据的声纹特征。

本实施例中,提取模块10用于提取音频数据的声纹特征,具体地,提取模块10具体用于提取拼接后的音频数据的声纹特征。

第三获取模块11用于将声纹特征输入声纹识别模型,得到第一声纹特征向量,该声纹识别模型利用实施例2的模型训练系统训练得到。

本实施例中,第一声纹特征向量为512维的向量,在具体实施过程中将提取的拼接后的音频数据的声纹特征输入声纹识别模型进行解码,解码出一个512维的第一声纹特征向量作为该段音频的信息。

第四获取模块12用于从声纹数据库中获取标识信息对应的第一历史声纹特征向量。

本实施例中,根据进线用户的电话号码从声纹数据库中获取该电话号码对应的第一历史声纹特征向量。

第一计算模块13用于计算第一声纹特征向量与第一历史声纹特征向量的第一相似度得分。

本实施例通过余弦相似度算法计算第一声纹特征向量与第一历史声纹特征向量的第一相似度得分。

确定模块14用于若第一相似度得分大于相似度阈值,则确定进线用户与第一历史声纹特征向量对应的用户为同一个人。

本实施例基于AAM-softmax与cos-softmax相结合训练得到的声纹识别模型实现了端到端的训练和预测模式,避免了人工设置阈值,可直接判断进线用户是否是该电话号码对应的用户本人,加强了客服对来电客人的审核力度,减少了OTA客服处理的失误率,保证了真实客人和OTA平台的安全性,为后续离线客服质检提供了帮助。

在一可实施的方案中,如图5所示,该用户识别系统还包括第二计算模块15、存储模块16、判断模块17、第三计算模块18和替换模块19。

第二计算模块15用于计算第一声纹特征向量对应的音频数据与所述第一历史声纹特征向量对应的音频数据的音频质量得分。

本实施例中,根据音频的信噪比或截幅大小计算得到音频数据的音频质量得分,信噪比越大,噪音越小,音频质量得分越高,截幅越小音频质量得分越高。

存储模块16用于将音频质量得分高的声纹特征向量更新至所述声纹数据库中。

判断模块17用于若第一相似度得分不大于相似度阈值,则判断声纹数据库中是否有标识信息对应的第二历史声纹特征向量,若有,则调用第三计算模块18。

第三计算模块18用于计算第一声纹特征向量与第二历史声纹特征向量的第二相似度得分。

替换模块19用于在第二相似度得分大于相似度阈值时,将声纹数据库中的第一历史声纹特征向量替换为第二历史声纹特征向量。

本实施例中,调用事先训练好的声纹识别模型,先判断声纹数据库中是否有进线用户电话号码对应的历史声纹特征向量(即第一历史声纹特征向量),若没有,则将该电话号码当前的声纹特征向量(即第一声纹特征向量)保存至声纹数据库中,若有,则计算历史声纹特征向量(即第一历史声纹特征向量)和当前声纹特征向量(即第一声纹特征向量)的相似度得分(即第一相似度得分),若第一相似度得分大于相似度阈值,则第一历史声纹特征向量与第一声纹特征向量相似,再计算第一声纹特征向量对应的音频数据与第一历史声纹特征向量对应的音频数据的音频质量得分;将音频质量得分高的声纹特征向量更新至声纹数据库中。若第一相似度得分不大于相似度阈值,则第一历史声纹特征向量与第一声纹特征向量不相似,则判断声纹数据库中是否有该电话号码对应的第二历史声纹特征向量,若有,则计算第一声纹特征向量与第二历史声纹特征向量的第二相似度得分,在第二相似度得分大于相似度阈值时,则第一声纹特征向量与第二历史声纹特征向量相似,将声纹数据库中的第一历史声纹特征向量替换为第二历史声纹特征向量。若第一声纹特征向量与第二历史声纹特征向量也不相似,则停止更新声纹数据库;若声纹数据库中不存在第二声纹特征向量,则在客服校验用户身份后,根据客服校验的结果决定是否保存第二声纹特征向量。实现了对声纹数据库的更新,以便为基于声纹识别模型识别用户提供服务保障。

实施例7

本发明实施例7提供的一种电子设备的结构示意图,该实施例中的电子设备的结构示意图与图3的结构相同。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例5的用户识别方法。图3显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图3所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。

总线33包括数据总线、地址总线和控制总线。

存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。

存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例5的用户识别方法。

电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图3所示,网络适配器36通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。

应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。

实施例8

本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例5所提供的用户识别方法。

其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。

在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例5所述的用户识别方法。

其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

相关技术
  • 模型训练方法、用户识别方法、系统、设备及介质
  • 字符验证码识别模型训练方法、识别方法、系统、设备及介质
技术分类

06120113282769