数据分类模型训练方法和装置转让专利

申请号 : CN201710109745.5

文献号 : CN106897746B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘巍葛彦昊陈宇翁志

申请人 : 北京京东尚科信息技术有限公司北京京东世纪贸易有限公司

摘要 :

本发明公开了一种数据分类模型训练方法和装置,涉及计算机技术领域。通过先采用类别数较少、类内样本数较多的识别对象通用数据集使分类模型具有初步识别性能,然后采用类别数较多的识别对象实际数据集训练分类模型顶部若干层的参数值,使分类模型适应实际识别场景并达到收敛效果,再采用识别对象实际数据集对分类模型进行整体训练,从而使分类模型能够保证收敛、防止过拟合,确保了数据分类的性能和准确性。

权利要求 :

1.一种数据分类模型训练方法,其特征在于,包括:

采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;

采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型;

再次采用所述识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型;

其中,当完成训练的第三神经网络分类模型用于人脸识别时,识别对象通用数据集包括标准的人脸图像数据,识别对象实际数据集包括在神经网络分类模型的应用环境中采集的人脸图像数据;或者,当完成训练的第三神经网络分类模型用于声纹识别时,识别对象通用数据集包括标准的人声数据,识别对象实际数据集为在神经网络分类模型的应用环境中采集的人声数据;

识别对象通用数据集中数据的类别数量小于第一类别数量预设值、类别内的样本数量大于第一类内样本数预设值,识别对象实际数据集中数据的类别数量大于第二类别数量预设值,第一类别数量预设值小于第二类别数量预设值。

2.根据权利要求1所述的方法,其特征在于,所述采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型包括:采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练和调整,当分类误差小于预设的初步收敛误差时结束调整,获得第二神经网络分类模型;

其中,预设的初步收敛误差与标准误差的差大于预设值。

3.根据权利要求1或2所述的方法,其特征在于,所述顶部若干层的参数值为最顶层的参数值。

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

在所述采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型之前,所述方法还包括:采用多对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第四神经网络分类模型;

所述采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型包括:采用识别对象通用数据集对第四神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;

其中,多对象通用数据集中数据的类别数量小于第三类别数量预设值、类别内的样本数量大于第三类内样本数预设值,第三类别数量预设值小于第二类别数量预设值。

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

当完成训练的第三神经网络分类模型用于人脸识别时,多对象通用数据集包括人脸图像数据和非人脸图像数据;

或者,

当完成训练的第三神经网络分类模型用于声纹识别时,多对象通用数据集包括人声数据和非人声数据。

6.一种数据分类模型训练装置,其特征在于,包括:

通用数据集训练模块,用于采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;

实际数据集部分训练模块,用于采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型;

实际数据集全局训练模块,用于再次采用所述识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型;

其中,当完成训练的第三神经网络分类模型用于人脸识别时,识别对象通用数据集包括标准的人脸图像数据,识别对象实际数据集包括在神经网络分类模型的应用环境中采集的人脸图像数据;或者,当完成训练的第三神经网络分类模型用于声纹识别时,识别对象通用数据集包括标准的人声数据,识别对象实际数据集为在神经网络分类模型的应用环境中采集的人声数据;

识别对象通用数据集中数据的类别数量小于第一类别数量预设值、类别内的样本数量大于第一类内样本数预设值,识别对象实际数据集中数据的类别数量大于第二类别数量预设值,第一类别数量预设值小于第二类别数量预设值。

7.根据权利要求6所述的装置,其特征在于,所述实际数据集部分训练模块进一步用于采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练和调整,当分类误差小于预设的初步收敛误差时结束调整,获得第二神经网络分类模型;

其中,预设的初步收敛误差与标准误差的差大于预设值。

8.根据权利要求6或7所述的装置,其特征在于,所述顶部若干层的参数值为最顶层的参数值。

9.根据权利要求6所述的装置,其特征在于,所述装置还包括:多对象数据集训练模块,用于采用多对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第四神经网络分类模型;

所述通用数据集训练模块进一步用于采用识别对象通用数据集对第四神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;

其中,多对象通用数据集中数据的类别数量小于第三类别数量预设值、类别内的样本数量大于第三类内样本数预设值,第三类别数量预设值小于第二类别数量预设值。

10.根据权利要求9所述的装置,其特征在于,

当完成训练的第三神经网络分类模型用于人脸识别时,多对象通用数据集包括人脸图像数据和非人脸图像数据;

或者,

当完成训练的第三神经网络分类模型用于声纹识别时,多对象通用数据集包括人声数据和非人声数据。

11.一种数据分类模型训练装置,其特征在于,包括:

存储器;以及

耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1-5中任一项所述的数据分类模型训练方法。

12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述的数据分类模型训练方法。

说明书 :

数据分类模型训练方法和装置

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种数据分类模型训练方法和装置。

背景技术

[0002] 目前,在图像识别、语音识别、声纹识别等领域,会采用基础的分类网络进行训练得到特征,再进行进一步的分类,通过分类来识别出输入数据所属的人或者语音内容等。
[0003] 以图像识别为例,一般的训练方法为:输入若干图像,每张图像会对应相应的类别标签,神经网络在采用输入的若干图像进行训练后,通过对输出的误差的迭代学习来优化网络参数。最终模型误差收敛于一个较小的区间时,训练完成。传统的深度网络借助这种训练方法,可以在公共的学术数据集上获得较好的识别效果。
[0004] 然而,实际场景中可以获取的数据则与学术数据集有很大的差异。以人脸识别为例,实际场景中可以获取的人脸数据所属的人的数量较多,如50万人左右,而单人的样本数据却比较少,例如只有1~3张。如果使用这种结构的数据集训练神经网络模型,往往很难实现收敛的目标,或者神经网络非常容易过拟合,导致模型的识别率低下,无法达到预期的效果。

发明内容

[0005] 本发明实施例所要解决的一个技术问题是:在数据分类过程中,如何避免由分类模型难以收敛和过拟合而导致的分类模型识别率低问题。
[0006] 根据本发明实施例的第一个方面,提供一种数据分类模型训练方法,包括:采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型;再次采用识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型;其中,识别对象通用数据集中数据的类别数量小于第一类别数量预设值、类别内的样本数量大于第一类内样本数预设值,识别对象实际数据集中数据的类别数量大于第二类别数量预设值,第一类别数量预设值小于第二类别数量预设值。
[0007] 在一个实施例中,采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型包括:采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练和调整,当分类误差小于预设的初步收敛误差时结束调整,获得第二神经网络分类模型;其中,预设的初步收敛误差与标准误差的差大于预设值。
[0008] 在一个实施例中,顶部若干层的参数值为最顶层的参数值。
[0009] 在一个实施例中,在采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型之前,方法还包括:采用多对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第四神经网络分类模型;采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型包括:采用识别对象通用数据集对第四神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;其中,多对象通用数据集中数据的类别数量小于第三类别数量预设值、类别内的样本数量大于第三类内样本数预设值,第三类别数量预设值小于第二类别数量预设值。
[0010] 在一个实施例中,当完成训练的第三神经网络分类模型用于人脸识别时,多对象通用数据集包括人脸图像数据和非人脸图像数据,识别对象通用数据集包括标准的人脸图像数据,识别对象实际数据集包括在神经网络分类模型的应用环境中采集的人脸图像数据;或者,当完成训练的第三神经网络分类模型用于声纹识别时,多对象通用数据集包括人声数据和非人声数据、识别对象通用数据集包括标准的人声数据,识别对象实际数据集为在神经网络分类模型的应用环境中采集的人声数据。
[0011] 根据本发明实施例的第二个方面,提供一种数据分类模型训练装置,包括:通用数据集训练模块,用于采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;实际数据集部分训练模块,用于采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型;实际数据集全局训练模块,用于再次采用识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型;其中,识别对象通用数据集中数据的类别数量小于第一类别数量预设值、类别内的样本数量大于第一类内样本数预设值,识别对象实际数据集中数据的类别数量大于第二类别数量预设值,第一类别数量预设值小于第二类别数量预设值。
[0012] 在一个实施例中,实际数据集部分训练模块进一步用于采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练和调整,当分类误差小于预设的初步收敛误差时结束调整,获得第二神经网络分类模型;其中,预设的初步收敛误差与标准误差的差大于预设值。
[0013] 在一个实施例中,顶部若干层的参数值为最顶层的参数值。
[0014] 在一个实施例中,装置还包括:多对象数据集训练模块,用于采用多对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第四神经网络分类模型;通用数据集训练模块进一步用于采用识别对象通用数据集对第四神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;其中,多对象通用数据集中数据的类别数量小于第三类别数量预设值、类别内的样本数量大于第三类内样本数预设值,第三类别数量预设值小于第二类别数量预设值。
[0015] 在一个实施例中,当完成训练的第三神经网络分类模型用于人脸识别时,多对象通用数据集包括人脸图像数据和非人脸图像数据,识别对象通用数据集包括标准的人脸图像数据,识别对象实际数据集包括在神经网络分类模型的应用环境中采集的人脸图像数据;或者,当完成训练的第三神经网络分类模型用于声纹识别时,多对象通用数据集包括人声数据和非人声数据、识别对象通用数据集包括标准的人声数据,识别对象实际数据集为在神经网络分类模型的应用环境中采集的人声数据。
[0016] 根据本发明实施例的第三个方面,提供一种数据分类模型训练装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述任意一种数据分类模型训练方法。
[0017] 根据本发明实施例的第四个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任意一种数据分类模型训练方法。
[0018] 上述发明中的一个实施例具有如下优点或有益效果:通过先采用类别数较少、类内样本数较多的识别对象通用数据集使分类模型具有初步识别性能,然后采用类别数较多的识别对象实际数据集训练分类模型顶部若干层的参数值,使分类模型适应实际识别场景并达到收敛效果,再采用识别对象实际数据集对分类模型进行整体训练,从而使分类模型能够保证收敛、防止过拟合,确保了数据分类的性能和准确性。
[0019] 通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。

附图说明

[0020] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0021] 图1为本发明数据分类模型训练方法一个实施例的流程图。
[0022] 图2为本发明数据分类模型训练方法另一个实施例的流程图。
[0023] 图3为本发明数据分类模型训练装置一个实施例的结构图。
[0024] 图4为本发明数据分类模型训练装置另一个实施例的结构图。
[0025] 图5为本发明数据分类模型训练装置的又一个实施例的结构图。
[0026] 图6为本发明数据分类模型训练装置的再一个实施例的结构图。

具体实施方式

[0027] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028] 除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
[0029] 同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
[0030] 对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
[0031] 在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
[0032] 应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0033] 本发明的实施例对神经网络分类模型进行训练。在神经网络分类模型的训练过程中,通常采用反向传播算法对模型中的参数进行调整,该方法为现有技术,因此本发明仅对神经网络分类模型的一种训练过程进行简要的介绍,本领域技术人员可以在现有的公开文档中获取具体的训练过程。
[0034] 神经网络分类模型包括多个层,每个层中包括若干神经元。在模型中,位于两侧的层,例如最下层和最上层,分别为输入层和输出层,输入层和输出层之间的层叫做隐藏层。
[0035] 同一层的神经元之间没有连接;相邻的不同层之间通过不同层中的神经元进行连接,并且每个连接都有一个权值,该权值即为相互连接的两个节点中距离输入层较近的节点的参数之一。第N-1层神经元的输出经过加权计算之后作为第N层神经元的输入。
[0036] 在训练阶段,首先输入训练数据并获得训练数据的输出结果,即输出层各个节点的输出值,将输出值与训练数据的目标值进行比较,获得输出层节点的误差值;然后,根据输出层各个节点的误差值、最后一层隐藏层中节点的输出值以及最后一层隐藏层中节点与输出层节点之间的连接权重,确定最后一层隐藏层中节点的误差;最后,根据最后一层隐藏层中节点的误差以及最后一层隐藏层中节点的输出值,调整最后一层隐藏层中节点与输出层节点之间的连接权重,从而完成了最后一层隐藏层中节点的参数调整。
[0037] 采用类似的方法从输出层向输入层方向逐步对分类模型中的参数进行调整,当误差低于预设值时结束调整,完成神经网络分类模型的训练过程。
[0038] 后文的各个实施例中,多次对神经网络分类模型进行了训练,训练方法可以参考以上过程,也可以参考现有技术的方法,在实施例中将不再赘述。
[0039] 图1为本发明数据分类模型训练方法一个实施例的流程图。如图1所示,该实施例的方法包括:
[0040] 步骤S102,采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型。
[0041] 在训练之前,神经网络分类模型中各个层的参数值可以是随机设置的,也可以是根据经验值或者其他训练结果设置的,本领域技术人员可以根据需要以及具体实施时的条件进行选择。
[0042] 识别对象为数据分类模型的识别目标所属的类型,例如识别对象可以为图像数据、声音数据,或者可以根据识别的需要进行更细致的划分,例如可以为人脸图像数据、商品图像数据、人声数据、歌曲音频数据等等。
[0043] 而识别对象通用数据集是指包括识别对象的、并且不特别地限于某一应用场景的数据。例如,当识别对象为人脸图像数据时,识别对象通用数据集可以为人脸图像的学术数据集、标准数据集、名人人脸数据集或者公开数据集等等。
[0044] 识别对象通用数据集的特点为:数据的类别数量小于第一类别数量预设值,类别内的样本数量大于第一类内样本数预设值。即,数据的类别数量相对较少,类别内的样本数量较为充足。例如对于人脸识别的场景,识别对象通用数据集中的人数可以为1千、1万人,每人的照片可以有20张以上,如每人50张等。
[0045] 由于识别对象通用数据集的类别数量较少,类别内的样本数量较多,因此这一阶段的训练容易收敛,并且也不会出现过拟合的情况。通过这一阶段的训练,能够使神经网络分类模型具有初步的人脸识别性能。
[0046] 步骤S104,采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型。
[0047] 即,将步骤S102中完成训练的第一神经网络分类模型中的参数作为初始值继续进行训练。
[0048] 其中,识别对象实际数据集中数据的类别数量大于第二类别数量预设值,并且,第一类别数量预设值小于第二类别数量预设值。即,识别对象实际数据集中数据的类别较多,并且大于识别对象通用数据集中数据的类别数。
[0049] 识别对象实际数据集包括在神经网络分类模型的应用场景中实际采集的数据。例如,在用户通过人脸识别登录终端或应用账号的场景中,识别对象实际数据集中的人脸图像数据可以是通过终端采集的用户照片;在对火车站中的人进行识别的场景中,识别对象实际数据集中的人脸图像数据可以是从火车站的监控视频中提取的用户照片。
[0050] 由于在实际应用场景中,能够获取的类别很多,但是每个类别的样本数量却很少。因此如果直接采用识别对象实际数据集进行模型训练,会产生模型难以收敛和过拟合的问题。
[0051] 然而,在本发明的实施例中,由于采用了步骤S102中的训练,第一神经网络分类模型已具有了初步进行人脸识别的特征,因此可以在此基础上对第一神经网络分类模型逐步调整为适用于实际应用场景的模型。
[0052] 由于识别对象通用数据集和识别对象实际数据集中类别数量相差较大,因此,发明人想到,可以首先仅对神经网络分类模型顶部若干层的参数值进行训练。由于需要训练的层数较少,因此可以保证模型收敛。其中,顶层是指接近输出层侧的层。
[0053] 在一个实施例中,可以采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练和调整,当分类误差小于预设的初步收敛误差时结束调整,获得第二神经网络分类模型。
[0054] 其中,预设的初步收敛误差与标准误差的差大于预设值。即,只需要将顶部若干层的参数训练到初步收敛即可,例如可以在误差达到80%、90%时即可停止这一阶段的训练,从而可以防止过拟合的问题。
[0055] 顶部若干层在模型的总层数中所占的比重较小,例如可以为模型的总层数的十分之一。
[0056] 在一个实施例中,还可以采用识别对象实际数据集对第一神经网络分类模型最顶层参数值进行训练,获得第二神经网络分类模型。最顶层是直接与输出层连接的层,训练最顶层的参数相当于训练单层分类器,能够有效地保证收敛。
[0057] 步骤S106,再次采用识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型。
[0058] 在这一阶段中,不对训练的参数进行限制,而是对第二神经网络分类模型进行整体训练。由于有前面两个阶段的训练作为基础,因此当再次采用识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练时,模型不会出现无法收敛或者过拟合的问题。并且,由于这一阶段采用了与实际应用环境所采集的数据最接近的数据进行训练,可以使获得的第三神经网络分类模型更准确。
[0059] 之后,可以直接采用第三神经网络分类模型进行分类预测。此外,还可以在输入待测数据后,将第三神经网络分类模型的最后一层的各个节点的输出值作为待测数据的输出特征,并且根据不同输入数据之间的输出特征之间的欧式距离判定分类结果,例如可以在距离小于预设值时,将不同的输入数据确定为一类。
[0060] 本发明的实施例通过先采用类别数较少、类内样本数较多的识别对象通用数据集使分类模型具有初步识别性能,然后采用类别数较多的识别对象实际数据集训练分类模型顶部若干层的参数值,使分类模型适应实际识别场景并达到收敛效果,再采用识别对象实际数据集对分类模型进行整体训练,从而使分类模型能够保证收敛、防止过拟合,确保了数据分类的性能和准确性。
[0061] 此外,本发明的实施例还可以进行更多个阶段的训练。例如,可以在采用识别对象通用数据集进行训练之前,采用类别数量更少、类别内的样本数量的数据集进行训练。下面参考图2描述本发明另一个实施例的数据分类模型训练方法。
[0062] 图2为本发明数据分类模型训练方法另一个实施例的流程图。如图2所示,该实施例的方法包括:
[0063] 步骤S202,采用多对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第四神经网络分类模型。
[0064] 多对象通用数据集中的数据既有识别对象类型的数据,也有非识别对象类型的数据。例如,当识别对象为人脸图像数据时,多对象通用数据集中除了包括人脸图像数据以外,还包括汽车、飞机、动物等等的图像数据。
[0065] 其中,多对象通用数据集中数据的类别数量小于第三类别数量预设值、类别内的样本数量大于第三类内样本数预设值,第三类别数量预设值小于第二类别数量预设值。即,多对象通用数据集相较于识别对象通用数据集类别数量更少、类别内的样本数量更多。
[0066] 虽然多对象通用数据集中包括非识别对象类型的数据,但识别对象和非识别对象的底层特征是互通的。例如,不论人脸、物品还是动物,均是由轮廓、边缘等特征组成的。因此,通过采用多对象通用数据集进行训练,能够将神经网络分类模型的底层参数优化到接近全局最优解的程度,从而能够避免模型不收敛或者过拟合。
[0067] 步骤S204,采用识别对象通用数据集对第四神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型。
[0068] 步骤S204的具体实施方式可以参考步骤S102,此步骤相当于将步骤S202的训练结果中的参数作为神经网络分类模型的初始值,再采用识别对象通用数据集进行训练。
[0069] 步骤S206,采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型。
[0070] 步骤S208,再次采用识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型。
[0071] 步骤S206~S208的具体实施方式可以参考步骤S104~S106。
[0072] 通过采用上述方法,数据集中的类别数由少至多、类内样本数由多至少,采用数据集本身进行训练的收敛难度由易到难,由于各个阶段在训练初始均采用上一阶段的先验知识,因此能够有助于分类模型避免过拟合问题,降低收敛难度,使模型所达到的分类效果逐步接近全局最优,提升了分类模型的性能和分类的准确性。
[0073] 本发明实施例的数据分类模型训练方法可以应用于多种应用场景,根据不同的应用场景可以选择不同的数据集。
[0074] 例如,当完成训练的第三神经网络分类模型用于人脸识别时,多对象通用数据集包括人脸图像数据和非人脸图像数据,识别对象通用数据集包括标准的人脸图像数据,识别对象实际数据集包括在神经网络分类模型的应用环境中采集的人脸图像数据。
[0075] 又例如,当完成训练的第三神经网络分类模型用于声纹识别时,多对象通用数据集包括人声数据和非人声数据、识别对象通用数据集包括标准的人声数据,识别对象实际数据集为在神经网络分类模型的应用环境中采集的人声数据。
[0076] 根据需要,本领域技术人员还可以将本发明实施例的数据分类模型训练方法应用于其他场景,这里不再赘述。
[0077] 下面参考图3描述本发明一个实施例的数据分类模型训练装置。
[0078] 图3为本发明数据分类模型训练装置一个实施例的结构图。如图3所示,该实施例的装置包括:通用数据集训练模块31,用于采用识别对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;实际数据集部分训练模块32,用于采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练,获得第二神经网络分类模型;实际数据集全局训练模块33,用于再次采用识别对象实际数据集对第二神经网络分类模型各个层的参数值进行训练,获得完成训练的第三神经网络分类模型。其中,识别对象通用数据集中数据的类别数量小于第一类别数量预设值、类别内的样本数量大于第一类内样本数预设值,识别对象实际数据集中数据的类别数量大于第二类别数量预设值,第一类别数量预设值小于第二类别数量预设值。
[0079] 其中,实际数据集部分训练模块32可以进一步用于采用识别对象实际数据集对第一神经网络分类模型顶部若干层的参数值进行训练和调整,当分类误差小于预设的初步收敛误差时结束调整,获得第二神经网络分类模型;其中,预设的初步收敛误差与标准误差的差大于预设值。
[0080] 其中,顶部若干层的参数值可以为最顶层的参数值。
[0081] 其中,当完成训练的第三神经网络分类模型用于人脸识别时,多对象通用数据集可以包括人脸图像数据和非人脸图像数据,识别对象通用数据集可以包括标准的人脸图像数据,识别对象实际数据集可以包括在神经网络分类模型的应用环境中采集的人脸图像数据。
[0082] 当完成训练的第三神经网络分类模型用于声纹识别时,多对象通用数据集可以包括人声数据和非人声数据,识别对象通用数据集可以包括标准的人声数据,识别对象实际数据集可以为在神经网络分类模型的应用环境中采集的人声数据。
[0083] 下面参考图4描述本发明另一个实施例的数据分类模型训练装置。
[0084] 图4为本发明数据分类模型训练装置另一个实施例的结构图。如图4所示,该实施例的装置还可以包括:多对象数据集训练模块34,用于采用多对象通用数据集对神经网络分类模型各个层的参数值进行训练,获得第四神经网络分类模型;通用数据集训练模块31进一步用于采用识别对象通用数据集对第四神经网络分类模型各个层的参数值进行训练,获得第一神经网络分类模型;其中,多对象通用数据集中数据的类别数量小于第三类别数量预设值、类别内的样本数量大于第三类内样本数预设值,第三类别数量预设值小于第二类别数量预设值。
[0085] 图5为本发明数据分类模型训练装置的又一个实施例的结构图。如图5所示,该实施例的装置500包括:存储器510以及耦接至该存储器510的处理器520,处理器520被配置为基于存储在存储器510中的指令,执行前述任意一个实施例中的数据分类模型训练方法。
[0086] 其中,存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
[0087] 图6为本发明数据分类模型训练装置的再一个实施例的结构图。如图6所示,该实施例的装置500包括:存储器510以及处理器520,还可以包括输入输出接口630、网络接口640、存储接口650等。这些接口630,640,650以及存储器510和处理器520之间例如可以通过总线660连接。其中,输入输出接口630为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口640为各种联网设备提供连接接口。存储接口650为SD卡、U盘等外置存储设备提供连接接口。
[0088] 此外,本发明的实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述任意一种数据分类模型训练方法。
[0089] 本领域内的技术人员应当明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0090] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0091] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0092] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0093] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。