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

语音验证模型的训练方法、装置以及计算机设备

文献发布时间:2023-06-19 12:00:51


语音验证模型的训练方法、装置以及计算机设备

技术领域

本发明涉及人工智能领域,特别涉及一种语音验证模型的训练方法、装置以及计算机设备。

背景技术

在手机支付渐成主流、“金融+互联网+消费”兴盛的双重背景下,余额宝、花呗/借呗等场景金融产品开始崛起。建立在个人信用体系基础上的信用消费模式与“随时随地安全消费”的诉求背景无形中提高了个人财产的安全风险。目前,越来越多的客户选择使用“人脸识别”和“指纹识别”作为支付验证手段,但是若人脸/指纹的资料泄露,则依然存在被盗刷的风险,声音识别领域具有对隐私侵犯小,接受度高,而且不易被盗取的优点,但是目前的声纹识别系统需要用户录入大量的自身语音数据,而用户很难提供大量的自身数据,因此,亟需一种语音验证模型的训练方法。

发明内容

本发明的主要目的为提供一种语音验证模型的训练方法、装置以及计算机设备,旨在解决目前的声纹识别系统需要用户录入大量的自身语音数据的问题。

本发明提供了一种语音验证模型的训练方法,包括:

获取待训练的语音样本数据;

将所述待训练的语音样本数据进行预处理,得到对应的标准待训练的语音样本数据;

根据标准待训练的语音样本数据中各帧语音数据的先后顺序以及各帧语音数据对应的矢量值,得到对应的语音矢量集;

计算所述语音矢量集与预设语音类别中各个类别的相关度;

根据计算的相关度值,选取相关度值最大的目标类别,并获取所述目标类别的目标参数;其中,所述目标参数为对应所述目标类别预先训练得到的参数;

将所述目标参数输入至待训练的语音验证模型中,得到语音验证暂时模型,再将所述语音矢量集输入至所述语音验证暂时模型中进行训练,得到语音验证模型。

本发明还提供了一种语音验证模型的训练装置,包括:

获取模块,用于获取待训练的语音样本数据;

预处理模块,用于将所述待训练的语音样本数据进行预处理,得到对应的标准待训练的语音样本数据;

构建模块,用于根据标准待训练的语音样本数据中各帧语音数据的先后顺序以及各帧语音数据对应的矢量值,得到对应的语音矢量集;

计算模块,用于计算所述语音矢量集与预设语音类别中各个类别的相关度;

选取模块,用于根据计算的相关度值,选取相关度值最大的目标类别,并获取所述目标类别的目标参数;

训练模块,用于将所述目标参数输入至待训练的语音验证模型中,得到语音验证暂时模型,再将所述语音矢量集输入至所述语音验证暂时模型中进行训练,得到语音验证模型。

进一步地,所述预处理模块,包括:

获取子模块,用于获取待训练的语音样本数据中语音数据的声音强度;

判断子模块,用于判断所述语音数据中的声音强度的平均大小是否小于预设分贝值;

预加重处理子模块,用于若小于所述预设分贝值,则对所述语音数据进行语音预加重处理,得到标准语音数据;

计算子模块,用于计算所述标准语音数据中语音长度和声音强度之间的变化参数;

输入子模块,用于将所述变化参数和所述标准语音数据输入至语音增益参数计算公式中,得到对应的增益参数;

增益子模块,用于根据所述增益参数对所述标准语音数据进行增益处理,得到所述标准待训练的语音样本数据。

本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。

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

本发明的有益效果:通过对用户输入的待训练的语音样本数据进行预处理,并建立对应的语音矢量集,计算与各个类别的相关度,获取到目标类别,以及对应的目标参数,将其和用户输入的待训练的语音样本数据输入至待训练的语音验证模型深层次的训练,从而实现无需提供大量的元素,只需要用户输入的待训练的语音样本数据和对应的目标参数即可得到对应的语音验证模型。

附图说明

图1是本发明一实施例的一种语音验证模型的训练方法的流程示意图;

图2是本发明一实施例的一种语音验证模型的训练方法的结构示意框图;

图3为本申请一实施例的计算机设备的结构示意框图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后等)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变,所述的连接可以是直接连接,也可以是间接连接。

本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。

另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

参照图1,本发明提出一种语音验证模型的训练方法,包括:

S1:获取用户输入的待训练的语音样本数据;

S2:将所述待训练的语音样本数据进行预处理,得到对应的标准待训练的语音样本数据;

S3:根据标准待训练的语音样本数据中各帧语音数据的先后顺序以及各帧语音数据对应的矢量值,得到对应的语音矢量集;

S4:计算所述语音矢量集与预设语音类别中各个类别的相关度;

S5:根据计算的相关度值,选取相关度值最大的目标类别,并获取所述目标类别的目标参数;其中,所述目标参数为对应所述目标类别预先训练得到的参数;

S6:将所述目标参数输入至待训练的语音验证模型中,得到语音验证暂时模型,再将所述语音矢量集输入至所述语音验证暂时模型中进行训练,得到语音验证模型。

如上述步骤S1所述,获取用户输入的待训练的语音样本数据,获取的方式可以是通过终端进行采集,也可以是获取其他软件上保存的语音数据,需要说明的是,在进行语音验证时,一般会由APP端显示指定的文字,用户需要读出该文字,以便于验证,故而获取该待训练的语音样本数据一般通过麦克风进行实时录取。

如上述步骤S2所述,将所述待训练的语音样本数据进行预处理,得到对应的标准待训练的语音样本数据。其中,用户在输入语音时,其周围环境可能或多或少存在噪声,另外,用户有可能通过低声录入的方式,因此,需要对语音进行降噪,增益等预处理,其中,具体地预处理方式后续有实施例进行说明,此处不再赘述,预处理后得到对应的标准待训练的语音样本数据。

如上述步骤S3所述,根据标准待训练的语音样本数据中各帧语音数据的先后顺序以及各帧语音数据对应的矢量值,得到对应的语音矢量集。其中建立语音矢量集的方式为,根据标准待训练的语音样本数据中各帧语音数据的先后顺序以及各帧语音数据对应的矢量值,得到对应的语音矢量集。

如上述步骤S4所述,计算所述语音矢量集与预设语音类别中各个类别的相关度。其中,预设语音类别可以根据年龄段进行划分,也可以根据性别进行划分,还可以根据音色进行划分,另外,计算相关度的方式不做限定,可以计算语音矢量集中的各帧语音数据与各个类别的相关度,也可以先计算语音矢量集中的平均值,再根据平均值与各个类别对应的值计算相关度。相关度的计算公式可以是通过欧式距离进行计算,也可以通过余弦相关度计算的方式进行计算,本申请优选采用高斯相关度的计算方式,后续有实施例进行说明,此处不再赘述。此外,还可以计算语音长度I,用于分析低声语音长I与声音强度的关系,低声耳语说话的场景下,人们说话时长与音调都会发生一定程度的变化,因此可以对语音时长和声音强度关系进行提取,以便于更好地提取在低声情况下人们说话的特征。

如上述步骤S5所述,根据计算的相关度值,选取相关度值最大的目标类别,并获取所述目标类别的目标参数。即选取相关度最大的目标类别,由于用户输入的待训练的语音样本数据有限,需要获取到对应的类别的目标参数,如用户的声音为男性,较为沧桑,则可以确定目标类别为中年男性,获取到目标参数后,将其输入至待训练的语音验证模型中,需要说明的是,目标类别的目标参数通过多个对应目标类别的人群的语音数据,输入至待训练的语音验证模型训练得到。

如上述步骤S6所述,将所述目标参数输入至待训练的语音验证模型中,得到语音验证暂时模型,再将所述语音矢量集输入至所述语音验证暂时模型中进行训练,得到语音验证模型。当获取当对应的目标参数后,可以将其输入至语音验证模型中,再基于用户输入的待训练的语音样本数据进行深层次的训练,从而无需提供大量的元素,只需要用户输入的待训练的语音样本数据和对应的目标参数即可得到对应的语音验证模型。

在一个具体地实施例中,第一次录入声纹特征时,需要用户同意开通声纹识别的功能,并绑定对应的手机号码、身份信息,即在后台将用户、声纹、权限等关系进行关联,并构建对应的声纹数据库,以保存对应的声纹和关联关系,其中声纹数据库:将会对用户的数据库以中台形式设计,用作同一企业不同业务的调用,促进资源调用效率的最大化;另一方面用作模型训练学习的数据集来源,帮助形成AI声纹识别模型优化的正循环。

在一个实施例中,所述将所述待训练的语音样本数据进行预处理,得到对应的标准待训练的语音样本数据的步骤S2,包括:

S201:获取待训练的语音样本数据中语音数据的声音强度;

S202:判断所述语音数据中的声音强度的平均大小是否小于预设分贝值;

S203:若小于所述预设分贝值,则对所述语音数据进行语音预加重处理,得到标准语音数据;

S204:计算所述标准语音数据中语音长度和声音强度之间的变化参数;

S205:将所述变化参数和所述标准语音数据输入至语音增益参数计算公式中,得到对应的增益参数;

S206:根据所述增益参数对所述标准语音数据进行增益处理,得到所述标准待训练的语音样本数据。

如上述步骤S201-S206所述,实现对待训练的语音样本数据进行预处理。即通过获取到用户的语音数据,由于在用户的使用过程中,一般人都不习惯大声进行语音验证,因此可以检测语音数据中的声音强度大小,若其小于预设分贝值,则需要进行预加重的处理,其中,预加重的处理方式可以是提高高频部分,让信号频谱变得更为平坦,保持在低频到高频的整个频带中,能用同样的信噪比求频谱,便于分析频谱和声道参数,可以采用一阶数字滤波器进行分析,然后对耳语音进行分帧加窗,对语音进行预加重后可以便于后续的数据分析,然后计算标准语音数据中的语音长度和声音强度之间的变化参数,将其输入至语音增益参数计算公式中,得到对应的增益参数,然后根据对应的增益参数对标准语音数据进行增益处理,从而实现了对语音数据的预处理,便于后续语音验证模型的训练。

在一个实施例中,所述将所述变化参数和所述标准语音数据输入至语音增益参数计算公式中,得到对应的增益参数的步骤S205,包括:

S2051:根据所述语音增益参数计算公式

如上述步骤S2051所述,根据语音增益参数计算公式

在一个实施例中,所述计算所述语音矢量集与预设语音类别中各个类别的相关度的步骤S4,包括:

S401:获取所述各个类别的高斯分布;

S402:根据公式

S403:根据所述语音矢量集中各帧的所述帧相关度,计算得到与各个类别的相关度。

如上述步骤S401-S403所述,实现了计算所述语音矢量集与预设语音类别中各个类别的相关度。即根据各个类别的高斯分布,对于不同的类别,其基于对应类别的数据进行训练时,其语音数据一般呈高斯分布,例如,对于同一个人来说,其语音一般会集中在一个数值,有帧的语音值会大于该数值,有的帧语音值会小于该数值,因此对于同类的数据来说,一般呈高斯分布,只需预先存储各个类别的高斯分布,然后根据公式计算各帧语音的帧相关度,然后再根据各帧的帧相关度计算与该类别的相关度即可,计算的方式,可以是将各帧相关度的数值进行累加,再将累加的值作为相关度,也可以是求取平均数作为相关度,本申请对此不做限定,可以根据帧相关度得到对应的相关度均可。

在一个实施例中,所述获取所述目标类别的目标参数的步骤S5之前,还包括:

S411:通过sqoop脚本获取各个所述预设语音类别中各个类别的训练数据;

S412:将各个类别的训练数据分别输入至对应的语音识别模型中进行训练;

S413:训练完成后获取各个类别对应的语音识别模型中的模型参数作为各个类别的参数。

如上述步骤S411-S412所述,实现了对各个类别的参数的获取。即先通过sqoop脚本在对应的数据库中搜寻对应各个类别的语音数据,搜寻的方式,需要依据各个语音数据对应的标签信息,即标签信息中含有各个该语音数据对应的类别信息,以此对各个语音数据按照预设类别进行分类,然后将各个语音数据输入至对应的语音识别模型中进行训练,从而完成对参数的获取。具体地,本实施例的目的主要是为了将语音数据按照类别进行分类训练,从而可以得到该类别的大致参数,即各个类别对应的参数,该语音识别模型与后续的语音验证暂时模型优选为同一种模型,以便于参数的直接替换,再输入对应的语音样本数据,对语音验证模型进行更进一步的训练。

在一个实施例中,所述计算所述语音矢量集与预设语音类别中各个类别的相关度的步骤S4之前,还包括:

S301:获取用户的个人信息;

S302:根据所述个人信息从预先划分的各个类别中选取预设个数的所述预设语音类别。

如上述步骤S301-S302所述,实现了对预设语音类别的选取,即先获取到用户的个人信息,例如用户的个人信息为女,25岁,那么对应的则是青年女性,考虑到人的声音会有些不同,可以将范围进行放大,少年女性,中年女性等不同类别,需要说明的是,本申请划分的类别与用户的年龄不完全挂钩,而是与用户的声音所表示出的年龄挂钩,例如部分女孩声音比较成熟,那么其划分的类别为青年女性和中年女性。本实施事例只是针对普通用户,一般而言,普通用户的声音与其个人信息是相对应的,因此可以根据个人信息对预设语音类别进行选取。而若存在特殊用户,即预设语音类别中没有最合适的类别,也只是最终形成的语音验证模块不佳,但是依然可以对用户进行识别。

在一个实施例中,所述将所述目标参数输入至待训练的语音验证模型中,得到语音验证暂时模型,再将所述语音矢量集输入至所述语音验证暂时模型中进行训练,得到语音验证模型的步骤S6之后,还包括:

S701:将所述语音矢量集中的元素依次输入至所述语音验证模型中,得到各个所述元素对应的实际输出值;

S702:根据损失函数公式计算所述语音验证模型的损失值,其中,所述损失函数为:

y

S703:根据所述损失值判断所述语音验证模型是否训练成功。

如上述步骤S701-S703所述,实现了损失值的计算。其中,元素为语音样本数据中各帧语音数据对应的矢量值,损失值的计算方式可以是通过获取各元素的真实值,以及将元素输入至语音验证模型中得到的预测值进行计算,其中,损失函数为:

计算完成后得到相应的损失值,基于该计算的损失值,可以得到训练完成后语音验证模型的精确度,以此判断语音验证模型是否成功,具体地判定方式可以是设置一个损失阈值,当大于该损失阈值时,即认为该语音验证模型没有训练成功,通过计算该语音验证模型的损失值来判定该语音验证模型是否训练成功,从而实现了对语音验证模型的检测,并且,由于该输入的语音样本数据实为该用户所对应的声音,将该语音样本数据的代入,该损失值可以直接体现出该语音验证模型的训练结果,从而完成对语音验证模型的训练程度的精确检测。

本发明的有益效果:通过对用户输入的待训练的语音样本数据进行预处理,并建立对应的语音矢量集,计算与各个类别的相关度,获取到目标类别,以及对应的目标参数,将其和用户输入的待训练的语音样本数据输入至待训练的语音验证模型深层次的训练,从而实现无需提供大量的元素,只需要用户输入的待训练的语音样本数据和对应的目标参数即可得到对应的语音验证模型。

参照图2,本申请实施例中还提供一种语音验证模型的训练装置,包括:

获取模块10,用于获取待训练的语音样本数据;

预处理模块20,用于将所述待训练的语音样本数据进行预处理,得到对应的标准待训练的语音样本数据;

构建模块30,用于根据标准待训练的语音样本数据中各帧语音数据的先后顺序以及各帧语音数据对应的矢量值,得到对应的语音矢量集;

计算模块40,用于计算所述语音矢量集与预设语音类别中各个类别的相关度;

选取模块50,用于根据计算的相关度值,选取相关度值最大的目标类别,并获取所述目标类别的目标参数;其中,所述目标参数为对应所述目标类别预先训练得到的参数;

训练模块60,用于将所述目标参数输入至待训练的语音验证模型中,得到语音验证暂时模型,再将所述语音矢量集输入至所述语音验证暂时模型中进行训练,得到语音验证模型。

在一个实施例中,所述预处理模块20,包括:

获取子模块,用于获取待训练的语音样本数据中语音数据的声音强度;

判断子模块,用于判断所述语音数据中的声音强度的平均大小是否小于预设分贝值;

预加重处理子模块,用于若小于所述预设分贝值,则对所述语音数据进行语音预加重处理,得到标准语音数据;

计算子模块,用于计算所述标准语音数据中语音长度和声音强度之间的变化参数;

输入子模块,用于将所述变化参数和所述标准语音数据输入至语音增益参数计算公式中,得到对应的增益参数;

增益子模块,用于根据所述增益参数对所述标准语音数据进行增益处理,得到所述标准待训练的语音样本数据。

参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储各种待训练的语音样本数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时可以实现上述任一实施例所述的语音验证模型的训练方法。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。

本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时可以实现上述任一实施例所述的语音验证模型的训练方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM一多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。

区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

相关技术
  • 语音验证模型的训练方法、装置以及计算机设备
  • 语音识别和语音合成的模型训练方法、装置和计算机设备
技术分类

06120113134675