Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020108474 - PROCÉDÉ DE CLASSIFICATION D'IMAGES, PROCÉDÉ ET APPAREIL DE GÉNÉRATION DE MODÈLE D'IDENTIFICATION DE CLASSIFICATION, DISPOSITIF ET SUPPORT

Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12  

附图

1   2   3   4   5   6   7   8  

说明书

发明名称 : 图片分类、分类识别模型的生成方法、装置、设备及介质

[0001]
本申请要求在2018年11月30日提交中国专利局、申请号为201811457125.1的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。

技术领域

[0002]
本申请实施例涉及数据处理技术,例如涉及一种图片分类、分类识别模型的生成方法、装置、设备及介质。

背景技术

[0003]
随着深度学习技术的快速发展,深度神经网络在图片分类领域被大量的使用。
[0004]
相关技术中,为了使基于深度神经网络训练生成的分类识别模型具有较高的分类准确率,通常采用增加深度神经网络的深度的方式。
[0005]
上述相关技术至少存在如下问题:其一、由于深度神经网络在训练过程中主要采用反向梯度传播的方法,因此,随着网络深度的不断增大,训练难度也逐步加大;其二、由于深度神经网络的前向推理过程的运算量巨大,因此,随着网络深度的不断增大,运算量也逐步增加,进而降低了分类效率。
[0006]
发明内容
[0007]
本申请实施例提供一种图片分类、分类识别模型的生成方法、装置、设备及介质,以提高图片分类的准确率和效率。
[0008]
本申请实施例提供了一种图片分类方法,该方法包括:
[0009]
获取待分类的图片集,所述图片集包括至少两张图片;
[0010]
将所述图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分;
[0011]
在所述每张图片的分类结果满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足所述预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片集的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[0012]
本申请实施例还提供了一种分类识别模型的生成方法,该方法包括:
[0013]
获取训练样本,所述训练样本包括训练图片和所述训练图片的原始分类标签;
[0014]
将所述训练图片和所述训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于所述训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于所述训练图片的分类得分和分类标签,所述神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1];
[0015]
根据第一级神经网络层对于所述训练图片的分类得分和所述训练图片的原始分类标签,得到所述第一级神经网络层的第一级损失函数;
[0016]
根据第P-1级全连接层对于所述训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N];
[0017]
根据多级损失函数确定所述神经网络模型的损失函数,并且根据所述神经网络模型的损失函数调整所述多级神经网络层的网络参数和所述多级全连接层的网络参数,基于调整后的所述网络参数重新计算所述神经网络模型的损失函数,直至所述神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0018]
本申请实施例还提供了一种图片分类装置,该装置包括:
[0019]
图片集获取模块,设置为获取待分类的图片集,所述图片集包括至少两张图片;
[0020]
分类结果生成模块,设置为将所述图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分;
[0021]
分类识别结果生成模块,设置为在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足所述预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[0022]
本申请实施例还提供了一种分类识别模型的生成装置,该装置包括:
[0023]
训练样本获取模块,设置为获取训练样本,所述训练样本包括训练图片和所述训练图片的原始分类标签;
[0024]
分类得分和分类标签生成模块,设置为将所述训练图片和所述训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于所述训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于 所述训练图片的分类得分和分类标签,所述神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1];
[0025]
第一级损失函数生成模块,设置为根据第一级神经网络层对于所述训练图片的分类得分和所述训练图片的原始分类标签,得到所述第一级神经网络层的第一级损失函数;
[0026]
第P级损失函数生成模块,设置为根据第P-1级全连接层对于所述训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N];
[0027]
分类识别模型生成模块,设置为根据多级损失函数确定所述神经网络模型的损失函数,并且根据所述神经网络模型的损失函数调整所述多级神经网络层的网络参数和所述多级全连接层的网络参数,基于调整后的所述网络参数重新计算所述神经网络模型的损失函数,直至所述神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0028]
本申请实施例还提供了一种设备,该设备包括:
[0029]
一个或多个处理器;
[0030]
存储器,设置为存储一个或多个程序;
[0031]
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本申请实施例所述的方法。
[0032]
本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的方法。

附图说明

[0033]
图1是本申请实施例提供的一种图片分类方法的流程图;
[0034]
图2是本申请实施例提供的另一种图片分类方法的流程图;
[0035]
图3是本申请实施例提供的一种分类识别模型的生成方法的流程图;
[0036]
图4是本申请实施例提供的另一种分类识别模型的生成方法的流程图;
[0037]
图5是本申请实施例提供的一种神经网络模型的结构示意图;
[0038]
图6是本申请实施例提供的一种图片分类装置的结构示意图;
[0039]
图7是本申请实施例提供的一种分类识别模型的生成装置的结构示意图;
[0040]
图8是本申请实施例提供的一种设备的结构示意图。

具体实施方式

[0041]
下述实施例中,每个实施例中同时提供了多个特征和示例,本申请实施例中记载的多个特征可进行组合,形成多个方案,不应将每个编号的实施例仅视为一个技术方案。下面结合附图和实施例对本申请进行说明。此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
[0042]
随着网络技术的不断发展,网络的功能越来越强大。人们可以通过网络将自己拍摄的图片上传至网络平台,供网络平台的其他用户观看,网络平台如短视频应用程序或直播平台。由于用户上传的图片的质量参差不齐,有的图片不但会影响其他用户的身心健康,还可能违反法律。因此,就需要对用户上传的图片进行审核,而进行审核的前提是准确实现对上传的图片进行分类识别。并且,由于上传的图片的不同,存在简单图片,以及难图片之分,这里所述的简单或难指的是分类识别难度,如果容易确定该图片所属分类,则可将该图片称为简单图片;如果不容易确定该图片所属分类,则可将该图片称为难图片。上述仅是一个需要进行图片分类的应用场景。
[0043]
相关技术中,可以采用基于深度神经网络训练生成的分类识别模型对图片进行分类。为了使分类识别模型具有较高的分类准确率,即无论是简单图片,还是难图片,均可以准确确定其所属分类,可以采用增加深度神经网络的深度的方式,但是随之而来将产生如下问题:由于深度神经网络在训练过程中主要采用反向梯度传播的方法,因此,随着网络深度的不断增大,训练难度也逐步加大。此外,由于深度神经网络的前向推理过程的运算量巨大,因此,随着网络深度的不断增大,运算量也逐步增加,进而降低了分类效率。
[0044]
为了解决上述问题,即实现在不增加网络深度的基础上,获得较高的分类准确率以及提高分类效率,可考虑采用多级分类识别模型的方式,这里所述的多级指的是不同级别的分类识别模型,每级分类识别模型用于对相应难易程度的图片进行分类识别,下面将结合具体实施例对上述内容进行说明。
[0045]
图1为本申请实施例提供的一种图片分类方法的流程图,本实施例可适用于提高图片分类的准确率和效率的情况,该方法可以由图片分类装置来执行,该装置可以采用软件和/或硬件的方式实现,该装置可以配置于设备中,例如计算机或移动终端等。如图1所示,该方法包括如下步骤:
[0046]
步骤110、获取待分类的图片集,图片集包括至少两张图片。
[0047]
在本申请的实施例中,待分类的图片集可以为用户上传至网络平台的图片集,也可以为预先存储的图片集,图片集的来源可以根据实际情况选择,在此 不作设定。图片集包括至少两张图片,至少两张图片的分类识别难度可能相同,也可能不同,即图片集中至少两张图片的分类识别程度有难易之分,换句话说,图片集中的至少两张张图片可能需要通过不同级分类识别模型才可以确定。
[0048]
步骤120、将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分。
[0049]
步骤130、判断所述每张图片的分类得分是否满足预设条件;若所述每张图片的分类得分满足预设条件,则执行步骤140;若所述每张图片的分类得分不满足预设条件,则执行步骤150。
[0050]
步骤140、根据所述每张图片的分类得分确定所述每张图片的分类识别结果。
[0051]
步骤150、将所述每张图片继续输入至预先训练的下一级分类识别模型中,得到所述每张图片的分类得分,并返回执行步骤130。
[0052]
在本申请的实施例中,存在不同级别的分类识别模型,每级分类识别模型可以用于对相应难易程度的图片进行分类识别,,由于每级分类识别模型所用于进行分类识别的图片的难易程度不同,因此,每级分类识别模型的网络结构的复杂程度通常也是不同的,分类识别模型的网络结构越复杂,用于分类识别的图片越难,上述不同级别的分类识别模型可以实现对图片的分级识别。在上述分级识别过程中,经过每级分类识别模型的图片的个数不断减少,相应的,减少了运算量,从而提高了分类效率。这里所述的网络结构的复杂程度是相对而言的。每级分类识别模型均是基于神经网络训练生成的,且是协同训练生成的,而不是分别训练生成的,即在训练过程中,多级分类识别模型的分类得分相互影响。
[0053]
当前级分类识别模型可以指用于分类识别最简单图片的分类识别模型,可将当前级分类识别模型理解为第一级分类识别模型,下一级分类识别模型可以指用于分类识别除最简单图片外其它难度程度图片的分类识别模型,可将下一级分类识别模型理解为第二级分类识别模型、第三级分类识别模型等。
[0054]
获取到待分类的图片集后,会将图片集输入至预先训练的当前级分类识别模型中,得到图片集中每张图片的分类得分,并根据每张图片的分类得分确定是否需要将该图片输入至下一级分类识别模型中,直至得到图片集中每张图片的分类得分。一实施例中,将图片集输入至预先训练的当前级分类识别模型中,得到图片集中每张图片的分类得分,确定该图片的分类得分是否满足预设条件,如果该图片的分类得分满足预设条件,则可以根据该图片的分类得分确定该图片的分类识别结果,并不再将该图片输入至下一级分类识别模型中;如果该图 片的分类得分不满足预设条件,则将该图片继续输入至下一级分类识别模型中,得到该图片的分类得分,并继续确定该图片的分类得分是否满足预设条件,如果该图片的分类得分满足预设条件,则根据该图片的分类得分确定该图片的分类识别结果,并不再将该图片输入至下一级分类识别模型中,如果该图片的分类得分不满足预设条件,则将该图片输入至下一级分类识别模型中,直至得到图片集中每张图片的分类识别结果。一实施例中,预设条件可以为图片的分类概率大于或等于概率阈值,图片的分类概率根据图片的分类得分计算得到。
[0055]
本申请实施例所提供的技术方案,针对的是图片的二分类问题,所谓二分类即表示分类得分为是或者否。一实施例中,是或者否可以用预设标识表征。示例性的,如确定一张图片是否包含违法内容,“是”用“1”表征,“否”用“0”表征。如果分类得分为“1”(即是),则表示该图片包含违法内容,或者,如果分类得分为“0”(即否),则表示该图片不包含违法内容。
[0056]
基于上述,根据图片的分类得分确定图片的分类识别结果,可作如下理解:预先对分类得分进行设定,如分类得分可以包括“1”和“0”,“1”表示“是”,“0”表示“否”,“是”和“否”的含义需要根据所要识别的内容确定,如前文所述的确定一张图片是否包含违法内容,如果分类得分为“1”(即是),则表示该图片包含违法内容,或者,如果分类得分为“0”(即不是),则表示该图片不包含违法内容。
[0057]
如果图片集中的图片的难易程度不同,则输入至下一级分类识别模型的图片的张数依次减少。此外,通常由于简单图片的张数较多,换句话说,图片集中大多数图片通过当前级分类识别模型便可以被准确分类识别,因此,对于下一级分类识别模型来说,由于待分类的图片的张数较少,因此,可以提高分类识别模型的分类效率。同时,上述过程也体现了根据图片的难易程度,进行分级识别,相比于所有难易程度的图片均由同一分类识别模型进行分类识别而言,提高了分类准确率。上述提高了分类准确率可作如下理解:对同一分类识别模型进行训练时,对反向梯度传播起作用的包括多种难易程度的图片的分类得分,而并不只包括难图片的分类得分。对不同级别的分类识别模型进行训练时,对反向梯度传播起作用的将不包括已分类识别出的图片的分类得分,即级别越靠后的分类识别模型,在训练时,对反向梯度传播起作用的将是越难图片的分类得分,上述训练模型机制,使得训练得到的分类识别模型的特异性更加突出。
[0058]
如果通过所有预先训练的分类识别模型,仍存在一些图片的分类得分不满足预设条件,则可根据这些图片经过最后一级分类识别模型得到的分类得分确定该图片的分类识别结果。
[0059]
示例性的,如存在N级分类识别模型,N级分类识别模型可以包括第一级 分类识别模型、第二级分类识别模型、……、第N-1级分类识别模型和第N级分类识别模型,待分类的图片集包括M张图片。将M张图片输入至第一级分类识别模型中,得到每张图片的分类得分,确定U张图片的分类得分满足预设条件,则根据U张图片的分类得分确定U张图片的分类识别结果,将(M-U)张图片继续输入至第二级分类识别模型中,确定K张图片的分类得分满足预设条件,则根据K张图片的分类得分确定K张图片的分类识别结果,再将(M-U-K)张图片继续输入至第三级分类识别模型中,确定(M-U-K)张图片的分类得分满足预设条件,则根据(M-U-K)张图片的分类得分确定(M-U-K)张图片的分类识别结果。至此,得到图片集中每张图片的分类识别结果,结束对待分类的图片集的分类识别操作。
[0060]
本实施例的技术方案,通过获取待分类的图片集,图片集包括至少两张图片,将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分,在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足预设条件的情况下,继续将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果,每级分类识别模型基于神经网络训练生成,采用多级分类识别模型对图片进行分类,提高了图片分类的准确率和效率。
[0061]
一实施例中,在上述技术方案的基础上,在将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分之后,还可以包括:根据所述每张图片的分类得分,得到所述每张图片的分类概率。所述每张图片的分类得分满足预设条件包括:所述每张图片的分类概率大于或等于概率阈值;所述每张图片的分类得分不满足预设条件包括:所述每张图片的分类概率小于概率阈值。
[0062]
在本申请的实施例中,将图片集输入至预先训练的当前级分类识别模型中,将得到每张图片的分类得分,可将分类得分理解为向量,图片集的分类得分是由多张图片的分类得分所组成。
[0063]
采用分类器,根据图片的分类得分计算图片的分类概率,相应的,在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果,可以包括:在所述每张图片的分类概率大于或等于概率阈值的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果。在所述每张图片的分类得分不满足预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果,可以包括:在所述每张图片的分类概率小于概率阈值,将所述 每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果。分类器可以为Softmax或Logistic等。
[0064]
图2为本申请实施例提供的另一种图片分类方法的流程图,如图2所示,该方法包括如下步骤:
[0065]
步骤210、获取待分类的图片集,图片集包括至少两张图片。
[0066]
步骤220、将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分。
[0067]
步骤230、根据所述每张图片的分类得分,得到所述每张图片的分类概率。
[0068]
步骤240、判断所述每张图片的分类概率是否大于或等于概率阈值;若所述每张图片的分类得分满足预设条件,则执行步骤250;若所述每张图片的分类得分不满足预设条件,则执行步骤260。
[0069]
步骤250、根据所述每张图片的分类得分确定所述每张图片的分类识别结果。
[0070]
步骤260、将所述每张图片继续输入至预先训练的下一级分类识别模型中,得到所述每张图片的分类得分,并返回执行步骤240。
[0071]
在本申请的实施例中,每级分类识别模型基于神经网络训练生成。
[0072]
本实施例的技术方案,通过获取待分类的图片集,图片集包括至少两张图片,将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分,根据所述每张图片的分类得分,得到所述每张图片的分类概率,在所述每张图片的分类概率大于或等于概率阈值的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类概率小于概率阈值的情况下,继续将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果,每级分类识别模型基于神经网络训练生成,采用多级分类识别模型对图片进行分类,提高了图片分类的准确率和效率。
[0073]
图3为本申请实施例提供的一种分类识别模型的生成方法的流程图,本实施例可适用于提高图片分类的准确率和效率的情况,该方法可以由分类识别模型的生成装置来执行,该装置可以采用软件和/或硬件的方式实现,该装置可以配置于设备中,例如计算机或移动终端等。如图3所示,该方法包括如下步骤:
[0074]
步骤310、获取训练样本,训练样本包括训练图片和训练图片的原始分类标签。
[0075]
在本申请的实施例中,获取训练样本,训练样本可以包括训练图片和训练 图片的原始分类标签,训练图片的张数为至少两张。分类标签用于表征训练图片的所属分类。
[0076]
步骤320、将训练图片和训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]。
[0077]
在本申请的实施例中,神经网络模型可以包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层和第i+2级神经网络层之间,N≥3,i∈[1,N-1]。本实施例中,神经网络是基于生物学中神经网络的基本原理,在理解和抽象了人脑结构和外界刺激响应机制后,以网络拓扑知识为理论基础,模拟人脑的神经系统对复杂信息的处理机制的一种数学模型。该模型是依靠系统的复杂程度,通过调整内部大量节点(神经元)之间相互连接的权值,来实现处理信息的。
[0078]
神经网络可以包括卷积神经网络、循环神经网络和深度神经网络,下面以卷积神经网络为例进行说明,卷积神经网络解决的核心问题就是如何自动提取并抽象特征,进而将特征映射到任务目标解决实际问题,一个卷积神经网络一般由以下三部分组成,第一部分是输入层,第二部分由卷积层、激励层和池化层(或下采样层)组合而成,第三部分由一个全连接的多层感知机分类器(即全连接层)构成。卷积神经网络具有权值共享特性,权值共享即指卷积核,可以通过一个卷积核的操作提取图像数据的不同位置的同样特征,换句话说,即是在一张图像数据中的不同位置的相同目标,它们的特征是基本相同的。使用一个卷积核只能得到一部分特征,可以通过设置多核卷积,用每个卷积核来学习不同的特征来提取图片的特征。在图片分类中,卷积层的作用是将低层次的特征抽取分析为高层次特征,低层次的特征是基本特征,诸如纹理和边缘等特征,高层次特征如人脸和物体的形状等,更能表现样本的属性,这个过程就是卷积神经网络的层次性。
[0079]
全连接层在整个卷积神经网络中起到“分类器”的作用。如果说卷积层、激励层和池化层等操作是将原始数据映射到隐藏特征空间的话,全连接层则起到将学到的“分布式特征表示”映射到样本标记空间的作用。在实际使用中,全连接层可由卷积操作实现:对前层是全连接的全连接层可以转化为卷积核为1x1的卷积;而前层是卷积层的全连接层可以转化为卷积核为H×W的全局卷积,H和W分别为前层卷积结果的高和宽。由于全连接层参数冗余,仅全连接层参数就可占整个网络参数80%左右,因此一些性能优异的网络模型如残差网 络模型等采用全局平均池化取代全连接层来融合学到的深度特征,也即,卷积神经网络可能不包括全连接层。
[0080]
本申请实施例所提供的N-1级全连接层是N级神经网络层之外的全连接层,即每级神经网络层本身可能包括全连接层,但是,神经网络层中所包括的全连接层与神经网络模型中的N-1级全连接层不同。
[0081]
将训练样本输入至神经网络模型中,即将训练图片和训练图片的原始分类标签输入至神经网络模型中,分别得到多级神经网络层对于训练图片的分类得分,以及,分别得到多级全连接层对于训练图片的分类得分和分类标签,全连接层对于训练图片的分类得分和分类标签用于计算神经网络层的损失函数,神经网络层对于训练图片的分类得分用于计算全连接层的分类得分以及分类标签。
[0082]
步骤330、根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数。
[0083]
步骤340、根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N]。
[0084]
步骤350、根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0085]
在本申请的实施例中,损失函数是将一个或多个变量的一个事件或值映射为可以直观地表示一种与之相关“成本”的实数的函数,即损失函数将一个或多个变量的事件映射到与一个成本相关的实数上。损失函数可以用于测量模型性能以及实际值与预测值之间的不一致性,模型性能随着损失函数的值的降低而增加。针对本申请实施例来说,这里的预测值指的是第一级神经网络层对于训练图片的分类得分以及多级全连接层对于训练图片的分类得分,实际值指的是训练图片的原始分类标签以及多级全连接层对于训练图片的分类标签。损失函数可以为交叉熵损失函数、0-1损失函数、平方损失函数、绝对损失函数和对数损失函数等,可根据实际情况进行设定,在此不作限定。
[0086]
神经网络模型的训练过程是经过前向传播计算神经网络模型的损失函数,并计算损失函数对网络参数的偏导数,采用反向梯度传播方法,对多级神经网络层和多级全连接层的网络参数进行调整,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值。当神 经网络模型的损失函数值达到预设函数值时,表示神经网络模型已训练完成,此时,多级神经网络层和多级全连接层的网络参数也得以确定。在此基础上,将每级神经网络层作为对应级的分类识别模型,即第一级神经网络层作为第一级分类识别模型,第P级神经网络层作为第P级分类识别模型,P∈[2,N]。
[0087]
本申请实施例所述的神经网络模型的损失函数是由N级神经网络层的损失函数加权求和得到的。一实施例中,第一级神经网络层的第一级损失函数是根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签计算得到的,第P级神经网络层的第P级损失函数是根据第P-1级全连接层对于训练图片的分类得分和分类标签计算得到的,P∈[2,N]。
[0088]
多级全连接层均有对于训练图片的分类标签,换句话说,每经过一级全连接层便会对训练图片的分类标签更新一次,这里对更新进行说明。一实施例中,对于每张训练图片的分类标签而言,第P级全连接层对于该训练图片的分类标签可能与上级全连接层对于该训练图片的分类标签相同,也可能与上级全连接层对于该训练图片的分类标签不同,这里所述的上级指的是第P级之前的所有级,因此,这里所述的更新指的是执行更新操作,更新操作的结果可能是对该训练图片的分类标签进行了更新(即第P级全连接层对于该训练图片的分类标签与上级全连接层对于该训练图片的分类标签不同),也可能是对该训练图片的分类标签没有进行更新(即第P级全连接层对于该训练图片的分类标签与上级全连接层对于该训练图片的分类标签相同)。
[0089]
由于确定多级神经网络层的损失函数所依据的训练图片的分类得分和分类标签并不相同,得到的多级神经网络层的损失函数也不相同,因此,基于神经网络模型的损失函数对多级神经网络层的网络参数和多级全连接层的网络参数进行调整,最终确定的多级神经网络层结构的复杂程度也不相同,相应的,多级分类识别模型结构的复杂程度也不相同。基于上述,多级分类识别模型可用于对相应难度程度的图片进行分类,换句话说,简单图片通过结构简单的分类识别模型便可以得到符合要求的分类结果,而难图片则需要通过结构较复杂的分类模型才可以得到符合要求的分类结果,即多级分类识别模型分别处理相应难易程度的训练图片,而不是多级分类识别模型均处理全部训练图片。上述使得分类效率得到极大提升。
[0090]
本实施例中,N级神经网络层和N-1级全连接层是协同训练生成的,而不是分别训练生成的,多级神经网络层和多级全连接层的结果相互影响。通过上述方式训练得到的多级神经网络层的性能将优于只对一个神经网络层进行训练得到的神经网络层。而由于每级神经网络层作为对应级的分类识别模型,因此,通过上述方式训练得到的多级分类识别模型的性能将优于只对一个神经网络层 进行训练得到的分类识别模型。
[0091]
一实施例中,在对N级神经网络层训练时,可以通过加载预训练模型的方式,对N级神经网络层进行初始化,这里所述的预训练模型指的是已训练完成的模型,该模型与待训练的N级神经网络层均用于对相似训练样本进行分类。
[0092]
本实施例的技术方案,通过获取训练样本,训练样本包括训练图片和训练图片的原始分类标签,将训练图片和训练图片的原始分类标签输入至神经网络模型中,分别得到多级神经网络层对于训练图片的分类得分,以及,分别得到多级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]。根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数,根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N],根据多级损失函数确定神经网络模型的损失函数,并根据神经网络模型的损失函数且调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型,采用协同训练方式得到多级分类识别模型,提高了分类识别模型进行图片分类的准确率和效率。
[0093]
在上述技术方案的基础上,多级全连接层对于训练图片的分类得分可以通过如下方式生成:根据第一级神经网络层对于训练图片的分类得分和第二级神经网络层对于训练图片的分类得分,得到第一级全连接层对于训练图片的分类得分。根据第P-1级全连接层对于训练图片的分类得分和第P+1级神经网络层对于训练图片的分类得分,得到第P级全连接层对于训练图片的分类得分,P∈[2,N]。
[0094]
在本申请的实施例中,除第一级全连接层对于训练图片的分类得分外,其它多级全连接层对于训练图片的分类得分可通过如下方式生成:根据第P-1级全连接层对于训练图片的分类得分和第P+1级神经网络层对于训练图片的分类得分,得到第P级全连接层对于训练图片的分类得分,P∈[2,N]。
[0095]
第一级全连接层对于训练图片的分类得分可通过如下方式生成:根据第一级神经网络层对于训练图片的分类得分和第二级神经网络层对于训练图片的分类得分,得到第一级全连接层对于训练图片的分类得分。
[0096]
在上述技术方案的基础上,多级全连接层对于训练图片的分类标签可以通过如下方式生成:根据第一级神经网络层对于训练图片的分类得分更新训练图片的原始分类标签,得到第一级全连接层对于训练图片的分类标签。根据第P-1 级全连接层对于训练图片的分类得分更新第P-1级全连接层对于训练图片的分类标签,得到第P级全连接层对于训练图片的分类标签,P∈[2,N]。
[0097]
在本申请的实施例中,多级全连接层均有对于训练图片的分类标签,换句话说,每经过一级全连接层便会对训练图片的分类标签更新一次,多级全连接层对训练图片的分类标签可通过如下方式生成:根据第一级神经网络层对于训练图片的分类得分更新训练图片的原始分类标签,得到第一级全连接层对于训练图片的分类标签,根据第P-1级全连接层对于训练图片的分类得分更新第P-1级全连接层对于训练图片的分类标签。这里所述的更新指的是执行更新操作,是否对分类标签进行更新可以由网络层对于训练图片的分类得分是否满足预设条件所确定,这里所述的预设条件可以为:根据网络层对于训练图片的分类得分,得到网络层对于训练图片的分类概率;网络层对于训练图片的分类概率大于或等于概率阈值。
[0098]
在上述技术方案的基础上,根据第一级神经网络层对于训练图片的分类得分更新训练图片的原始分类标签,得到第一级全连接层对于训练图片的分类标签,可以包括:根据第一级神经网络层对于训练图片的分类得分,得到第一级神经网络层对于训练图片的分类概率。在第一级神经网络层对于训练图片的分类概率大于或等于第一概率阈值的情况下,将训练图片的原始分类标签修改为预设分类标签,并将预设分类标签作为第一级全连接层对于训练图片的分类标签。在第一级神经网络层对于训练图片的分类概率小于第一概率阈值的情况下,保持训练图片的原始分类标签不变,并将训练图片的原始分类标签作为第一级全连接层对于训练图片的分类标签。
[0099]
在本申请的实施例中,可以采用分类器将训练图片的分类得分转换为训练图片的分类概率,这里所述的分类器可以为Softmax函数,Softmax函数可将分类得分,映射到(0,1)区间内,可以看成概率来理解,即可通过Softmax将训练图片的分类得分转换为训练图片的分类概率。此外,分类器还可以为Logistic函数,选用哪种分类器可根据实际情况进行确定,在此不作限定。
[0100]
根据第一级神经网络层对于训练图片的分类得分,得到第一级神经网络层对于训练图片的分类概率,如果第一级神经网络层对于训练图片的分类概率大于或等于第一概率阈值,则可将训练图片的原始分类标签修改为预设分类标签,并将预设分类标签作为第一级全连接层对于训练图片的分类标签;如果第一级神经网络层对于训练图片的分类概率小于第一概率阈值,则可保持训练图片的原始分类标签不变,并将训练图片的原始分类标签作为第一级全连接层对于训练图片的分类标签。本实施例中,第一概率阈值可作为是否对训练图片的原始分类标签进行修改的标准,其数值大小可根据实际情况进行设定,在此不作限 定。
[0101]
这里针对的对象是每张训练图片,即需要确定每张训练图片的分类概率与第一概率阈值的关系,并根据结果确定对该张训练图片的分类标签是修改还是保留。
[0102]
如果第一级神经网络层对于训练图片的分类概率大于或等于第一概率阈值,则将训练图片的分类标签修改为预设分类标签的原因在于:如果第一级神经网络层对于训练图片的分类概率大于或等于第一概率阈值,则可以说明第一级神经网络层对于该训练图片的分类结果已符合要求,通过将该训练图片的分类标签修改为预设分类标签,使得后续根据损失函数对网络参数进行调整时,预设分类标签对应的训练图片不参与对下级神经网络层的网络参数和全连接层的网络参数的调整。
[0103]
如果第一级神经网络层对于训练图片的分类概率小于第一概率阈值,则保持训练图片的原始分类标签不变的原因在于:如果第一级神经网络层对于训练图片的分类概率小于第一概率阈值,则可以说明第一级神经网络层对于该训练图片的分类结果不符合要求,通过该训练图片的原始分类标签不变,使得后续根据损失函数对网络参数进行调整时,该训练图片参与对下级神经网络层的网络参数和全连接层的网络参数的调整。
[0104]
在上述技术方案的基础上,根据第P-1级全连接层对于训练图片的分类得分更新第P-1级全连接层对于训练图片的分类标签,得到第P级全连接层对于训练图片的分类标签,P∈[2,N],可以包括:根据第P-1级全连接层对于训练图片的分类得分,得到第P-1级全连接层对于训练图片的分类概率,P∈[2,N]。在第P-1级全连接层对于训练图片的分类概率大于或等于第P概率阈值的情况下,将第P-1级全连接层对于训练图片的分类标签修改为预设分类标签,并将预设分类标签作为第P级全连接层对于训练图片的分类标签。在第P-1级全连接层对于训练图片的分类概率小于第P概率阈值的情况下,保持第P-1级全连接层对于训练图片的分类标签不变,并将第P-1级全连接层对于训练图片的分类标签作为第P级全连接层对于训练图片的分类标签。
[0105]
在本申请的实施例中,如前文所述,同样可以采用分类器将训练图片的分类得分转换为训练图片的分类概率,这里所述的分类器可以为Softmax函数,还可以为Logistic函数,选用哪种分类器可根据实际情况进行确定,在此不作限定。
[0106]
根据第P-1级全连接层对于训练图片的分类得分,得到第P-1级全连接层对于训练图片的分类概率,P∈[2,N],如果第P-1级神经网络层对于训练图片的分类概率大于或等于第P概率阈值,则可将第P-1级全连接层对于训练图片的分类标签修改为预设分类标签,并将预设分类标签作为第P级全连接层对于训 练图片的分类标签;如果第P-1级全连接层对于训练图片的分类概率小于第P概率阈值,则可保持第P-1级全连接层对于训练图片的分类标签不变,并将第P-1级全连接层对于训练图片的分类标签作为第P级全连接层对于训练图片的分类标签。本实施例中,第P概率阈值可作为是否对第P-1级全连接层对训练图片的分类标签进行修改的标准,其数值大小可根据实际情况进行设定,在此不作限定。
[0107]
如前文所述,这里针对的对象依然是每张训练图片,即需要确定每张训练图片的分类概率与第P概率阈值的关系,并根据结果确定对该张训练图片的分类标签是修改还是保留。
[0108]
如果第P-1级全连接层对于训练图片的分类概率大于或等于第P概率阈值,则将第P-1级全连接层对于训练图片的分类标签修改为预设分类标签的原因在于:如果第P-1级全连接层对于训练图片的分类概率大于或等于第一概率阈值,则可以说明第P级神经网络层对于该训练图片的分类结果已符合要求,通过将该训练图片的分类标签修改为预设分类标签,使得后续根据损失函数对网络参数进行调整时,预设分类标签对应的训练图片不参与对下级神经网络层的网络参数和全连接层的网络参数的调整。
[0109]
如果第P-1级全连接层对于训练图片的分类概率小于第P概率阈值,则保持第P-1级全连接层对于训练图片的分类标签不变的原因在于:如果第P-1级全连接层对于训练图片的分类概率小于第P概率阈值,则可以说明第P级神经网络层对于该训练图片的分类结果不符合要求,通过该训练图片的分类标签不变,使得后续根据损失函数对网络参数进行调整时,该训练图片参与对下级神经网络层的网络参数和全连接层的网络参数的调整。
[0110]
上述每经过一级全连接层便对训练图片的分类标签更新一次,实现了简单训练图片不参与对下级神经网络层和全连接层的网络参数的调整,进而使得训练得到的多级神经网络层结构的复杂程度不同。
[0111]
在上述技术方案的基础上,根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型,可以包括:根据多级损失函数确定神经网络模型的损失函数。计算神经网络模型的损失函数对多级神经网络层的网络参数的偏导数和神经网络模型的损失函数对多级全连接层的网络参数的偏导数,并在一级全连接层的一张图片的分类标签为预设分类标签的情况下,将目标偏导数设置为零,其中,所述目标偏导数为将所述一张训练图片的分类得分代入所述神经网络模 型的损失函数后,得到的损失函数对所述一级全连接层的网络参数的偏导数。根据偏导数调整多级神经网络层的网络参数和多级全连接层的网络参数,并基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0112]
在本申请的实施例中,根据多级损失函数确定神经网络模型的损失函数可作如下理解:对多级损失函数进行加权求和,得到神经网络模型的损失函数,可以设定多级损失函数对应的比例系数,将多级损失函数分别与对应的比例系数相乘得到加权值,再将多个加权值相加得到神经网络模型的损失函数。示例性的,如每级神经网络层的损失函数用Loss(f i),每级损失函数对应的比例系数为T i,其中,i∈[1,N],则神经网络模型的损失函数可表示为 基于上述,可以通过调整每级损失函数对应的比例系数来调整每级损失函数Loss(f i)在神经网络模型的损失函数中所占的比例。损失函数可以为交叉熵损失函数、0-1损失函数、平方损失函数、绝对损失函数和对数损失函数等,可根据实际情况进行设定,在此不作限定。
[0113]
根据多级损失函数确定神经网络模型的损失函数后,计算神经网络模型的损失函数对多级神经网络层和多级全连接层的网络参数的偏导数,这里所述的网络参数包括权值和偏置,采用反向梯度传播方法,根据偏导数调整多级神经网络层和多级全连接层的网络参数,并基于调整后的网络参数重新计算损失函数,直至损失函数达到预设函数值,这里所述的预设函数值可以为最小损失函数值,当损失函数达到预设函数值后,则可以说明神经网络模型已训练完成,可以根据网络参数确定多级神经网络层,并将每级神经网络层作为对应级的分类识别模型。
[0114]
在神经网络模型训练过程中,在一级全连接层的一张图片的分类标签为预设分类标签的情况下,将目标偏导数设置为零,其中,所述目标偏导数为将所述一张训练图片的分类得分代入所述神经网络模型的损失函数后,得到的损失函数对所述一级全连接层的网络参数的偏导数,即预设分类标签对应的训练图片不参与下级神经网络层和全连接层的网络参数的调整。
[0115]
图4为本申请实施例提供的另一种分类识别模型的生成方法的流程图,本实施例可适用于提高图片分类的准确率和效率的情况,该方法可以由分类识别模型的生成装置来执行,该装置可以采用软件和/或硬件的方式实现,该装置可以配置于设备中,例如计算机或移动终端等。如图4所示,该方法包括如下步骤:
[0116]
步骤410、获取训练样本,训练样本包括训练图片和训练图片的原始分类标签。
[0117]
步骤420、将训练图片和训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于训练图片的分类得分。
[0118]
步骤430、根据第一级神经网层对于训练图片的分类得分和第二级神经网络层对于训练图片的分类得分,得到第一级全连接层对于训练图片的分类得分;根据第P-1级全连接层对于训练图片的分类得分和第P+1级神经网络层对于训练图片的分类得分,得到第P级全练级层对于训练图片的分类得分,P∈[2,N]。
[0119]
步骤440、根据第一级神经网络层对于训练图片的分类得分更新训练图片的原始分类标签,得到第一全连接层对于训练图片的分类标签;根据P-1级全连接层对于训练图片的分类得分更新第P-1级全连接层对于训练图片的分类标签,得到第P级全连接层对于训练图片的分类标签。
[0120]
步骤450、根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数;根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数。
[0121]
步骤460、根据多级损失函数确定神经网络模型的损失函数。
[0122]
步骤470、计算神经网络模型的损失函数对多级神经网络层的网络参数的偏导数和神经网络模型的损失函数对多级全连接层的网络参数的偏导数,并在一级全连接层的一张图片的分类标签为预设分类标签的情况下,将目标偏导数设置为零,其中,所述目标偏导数为将所述一张训练图片的分类得分代入所述神经网络模型的损失函数后,得到的损失函数对所述一级全连接层的网络参数的偏导数。
[0123]
步骤480、根据偏导数调整多级神经网络层的网络参数和多级全连接层的网络参数,并基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0124]
在本申请的实施例中,根据第一级神经网络层对于训练图片的分类得分更新训练图片的原始分类标签,得到第一级全连接层对于训练图片的分类标签,可以包括:根据第一级神经网络层对于训练图片的分类得分,得到第一级神经网络层对于训练图片的分类概率。在第一级神经网络层对于训练图片的分类概率大于或等于第一概率阈值的情况下,将训练图片的原始分类标签修改为预设分类标签,并将预设分类标签作为第一级全连接层对于训练图片的分类标签。在第一级神经网络层对于训练图片的分类概率小于第一概率阈值的情况下,保持训练图片的原始分类标签不变,并将训练图片的原始分类标签作为第一级全 连接层对于训练图片的分类标签。
[0125]
根据第P-1级全连接层对于训练图片的分类得分更新第P-1级全连接层对于训练图片的分类标签,得到第P级全连接层对于训练图片的分类标签,P∈[2,N],可以包括:根据第P-1级全连接层对于训练图片的分类得分,得到第P-1级全连接层对于训练图片的分类概率,P∈[2,N]。在第P-1级全连接层对于训练图片的分类概率大于或等于第P概率阈值的情况下,将第P-1级全连接层对于训练图片的分类标签修改为预设分类标签,并将预设分类标签作为第P级全连接层对于训练图片的分类标签。在第P-1级全连接层对于训练图片的分类概率小于第P概率阈值的情况下,保持第P-1级全连接层对于训练图片的分类标签不变,并将第P-1级全连接层对于训练图片的分类标签作为第P级全连接层对于训练图片的分类标签。
[0126]
为了理解本申请实施例所提供的技术方案,下面以神经网络模型包括三级神经网络层和两级全连接层为例进行说明。
[0127]
图5为本申请实施例提供的一种神经网络模型的结构示意图。该神经网络模型包括三级神经网络层和两级全连接层,分别为第一级神经网络层、第二级神经网络层和第三级神经网络层,以及,第一级全连接层和第二级全连接层,第一级全连接层位于第二级神经网络层之后,第二级全连接层位于第三级神经网络层之后。
[0128]
获取训练样本,训练样本包括训练图片和训练图片的原始分类标签,将训练样本输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于训练图片的分类得分。根据第一级神经网络层对于训练图片的分类得分和第二级神经网络层对于训练图片的分类得分,得到第一级全连接层对于训练图片的分类得分;根据第一级全连接层对于训练图片的分类得分和第三级神经网络层对于训练图片的分类得分,得到第二级全连接层对于训练图片的分类得分。
[0129]
根据第一级神经网络层对于训练图片的分类得分更新训练图片的原始分类标签,得到第一全连接层对于训练图片的分类标签;根据第一级全连接层对于训练图片的分类得分更新第一级全连接层对于训练图片的分类标签,得到第二级全连接层对于训练图片的分类标签。
[0130]
根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数;根据第一级全连接层对于训练图片的分类得分和分类标签,得到第二级神经网络层的第二级损失函数。
[0131]
根据第一级损失函数和第二级损失函数确定神经网络模型的损失函数。
[0132]
计算神经网络模型的损失函数对多级神经网络层和多级全连接层的网络参 数的偏导数,并在一级全连接层的一张图片的分类标签为预设分类标签的情况下,将目标偏导数设置为零,其中,所述目标偏导数为将所述一张训练图片的分类得分代入所述神经网络模型的损失函数后,得到的损失函数对所述一级全连接层的网络参数的偏导数。
[0133]
根据偏导数调整多级神经网络层的网络参数和多级全连接层的网络参数,并基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型,即第一级神经网络层作为第一级分类识别模型,第二级神经网络层作为第二级分类识别模型,第三级神经网络层作为第三级分类识别模型。
[0134]
本实施例的技术方案,通过获取训练样本,训练样本包括训练图片和训练图片的原始分类标签,将训练图片和训练图片的原始分类标签输入至神经网络模型中,分别得到多级神经网络层对于训练图片的分类得分,以及,分别得到多级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]。根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数,根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N],根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型,采用协同训练方式得到多级分类识别模型,提高了分类识别模型进行图片分类的准确率和效率。
[0135]
图6为本申请实施例提供的一种图片分类装置的结构示意图,本实施例可适用于提高图片分类的准确率和效率的情况,该装置可以采用软件和/或硬件的方式实现,该装置可以配置于设备中,例如计算机或移动终端等。如图6所示,该装置包括:
[0136]
图片集获取模块510,设置为获取待分类的图片集,图片集包括至少两张图片。
[0137]
分类结果生成模块520,设置为将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分。
[0138]
分类识别结果生成模块530,设置为在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足预设条件的情况下,将所述每张图片输入至 预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[0139]
本实施例的技术方案,通过获取待分类的图片集,图片集包括至少两张图片,将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分,在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果,每级分类识别模型基于神经网络训练生成,采用多级分类识别模型对图片进行分类,提高了图片分类的准确率和效率。
[0140]
图7为本申请实施例提供的一种分类识别模型的生成装置的结构示意图,本实施例可适用于提高图片分类的准确率和效率的情况,该装置可以采用软件和/或硬件的方式实现,该装置可以配置于设备中,例如计算机或移动终端等。如图7所示,该装置包括:
[0141]
训练样本获取模块610,设置为获取训练样本,训练样本包括训练图片和训练图片的原始分类标签。
[0142]
分类得分和分类标签生成模块620,设置为将训练图片和训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]。
[0143]
第一级损失函数生成模块630,设置为根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数。
[0144]
第P级损失函数生成模块640,设置为根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N]。
[0145]
分类识别模型生成模块650,设置为根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0146]
本实施例的技术方案,通过获取训练样本,训练样本包括训练图片和训练图片的原始分类标签,将训练图片和训练图片的原始分类标签输入至神经网络 模型中,到多级神经网络层中每级神经网络层对于训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]。根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数,根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N],根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型,采用协同训练方式得到多级分类识别模型,提高了分类识别模型进行图片分类的准确率和效率。
[0147]
图8为本申请实施例提供的一种设备的结构示意图。图8示出了适于用来实现本申请实施方式的示例性设备712的框图。图8显示的设备712仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0148]
如图8所示,设备712以通用计算设备的形式表现。设备712的组件可以包括但不限于:一个或者多个处理器716,系统存储器728,连接于不同系统组件(包括系统存储器728和处理器716)的总线718。
[0149]
处理器716通过运行存储在系统存储器728中的程序,从而执行多种功能应用以及数据处理,例如实现本申请实施例所提供的一种图片分类方法,该方法包括:获取待分类的图片集,图片集包括至少两张图片。将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分。在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[0150]
本申请实施例还提供了另一种设备,包括:一个或多个处理器;存储器,设置为存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本申请实施例所提供的一种分类识别模型的生成方法,该方法包括:获取训练样本,训练样本包括训练图片和训练图片的原始分类标签。将训练图片和所述训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第 i+1级神经网络层之后,N≥3,i∈[1,N-1]。根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数。根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N]。根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0151]
处理器还可以实现本申请任意实施例所提供应用于设备的图片分类方法的技术方案或者应用于设备的分类识别模型的生成方法的技术方案。该设备的硬件结构以及功能可参见实施例的内容解释。
[0152]
本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,该程序被处理器执行时实现如本申请实施例所提供的一种图片分类方法,该方法包括:获取待分类的图片集,图片集包括至少两张图片。将图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分。在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[0153]
本申请实施例还提供了另一种计算机可读存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种分类识别模型的生成方法,该方法包括:获取训练样本,训练样本包括训练图片和训练图片的原始分类标签。将训练图片和所述训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于训练图片的分类得分和分类标签,神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]。根据第一级神经网络层对于训练图片的分类得分和训练图片的原始分类标签,得到第一级神经网络层的第一级损失函数。根据第P-1级全连接层对于训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N]。根据多级损失函数确定神经网络模型的损失函数,并且根据神经网络模型的损失函数调整多级神经网络层的网络参数和多级全连接层的网络参数,基于调整后的网络参数重新计算神经网络模型的损失函数,直至神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[0154]
本申请实施例所提供的一种计算机可读存储介质,该计算机可读存储介质中的计算机可执行指令不限于如上所述的方法操作,还可以执行本申请任意实施例所提供的设备的图片分类方法和分类识别模型的生成方法中的相关操作。对存储介质的介绍可参见实施例中的内容解释。

权利要求书

[权利要求 1]
一种图片分类方法,包括: 获取待分类的图片集,所述图片集包括至少两张图片; 将所述图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分; 在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足所述预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[权利要求 2]
根据权利要求1所述的方法,在所述将所述图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分之后,还包括: 根据每张图片的分类得分,得到所述每张图片的分类概率; 其中,所述每张图片的分类得分满足预设条件为所述每张图片的分类概率大于或等于概率阈值;所述每张图片的分类得分不满足预设条件为所述每张图片的分类概率小于所述概率阈值。
[权利要求 3]
一种分类识别模型的生成方法,包括: 获取训练样本,所述训练样本包括训练图片和所述训练图片的原始分类标签; 将所述训练图片和所述训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于所述训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于所述训练图片的分类得分和分类标签,所述神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]; 根据第一级神经网络层对于所述训练图片的分类得分和所述训练图片的原始分类标签,得到所述第一级神经网络层的第一级损失函数; 根据第P-1级全连接层对于所述训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N]; 根据多级损失函数确定所述神经网络模型的损失函数,并且根据所述神经网络模型的损失函数调整所述多级神经网络层的网络参数和所述多级全连接层的网络参数,基于调整后的所述网络参数重新计算所述神经网络模型的损失函数,直至所述神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[权利要求 4]
根据权利要求3所述的方法,其中,所述多级全连接层对于所述训练图片的分类得分通过如下方式生成: 根据所述第一级神经网络层对于所述训练图片的分类得分和第二级神经网络层对于所述训练图片的分类得分,得到第一级全连接层对于所述训练图片的分类得分; 根据第P-1级全连接层对于所述训练图片的分类得分和第P+1级神经网络层对于所述训练图片的分类得分,得到第P级全连接层对于所述训练图片的分类得分,P∈[2,N]。
[权利要求 5]
根据权利要求3或4所述的方法,其中,所述多级全连接层对于所述训练图片的分类标签通过如下方式生成: 根据所述第一级神经网络层对于所述训练图片的分类得分更新所述训练图片的原始分类标签,得到第一级全连接层对于所述训练图片的分类标签; 根据第P-1级全连接层对于所述训练图片的分类得分更新所述第P-1级全连接层对于所述训练图片的分类标签,得到第P级全连接层对于所述训练图片的分类标签,P∈[2,N]。
[权利要求 6]
根据权利要求5所述的方法,其中,所述根据所述第一级神经网络层对于所述训练图片的分类得分更新所述训练图片的原始分类标签,得到第一级全连接层对于所述训练图片的分类标签,包括: 根据所述第一级神经网络层对于所述训练图片的分类得分,得到所述第一级神经网络层对于所述训练图片的分类概率; 在所述第一级神经网络层对于所述训练图片的分类概率大于或等于第一概率阈值的情况下,将所述训练图片的原始分类标签修改为预设分类标签,并将所述预设分类标签作为第一级全连接层对于所述训练图片的分类标签; 在所述第一级神经网络层对于所述训练图片的分类概率小于所述第一概率阈值的情况下,保持所述训练图片的原始分类标签不变,并将所述训练图片的原始分类标签作为所述第一级全连接层对于所述训练图片的分类标签。
[权利要求 7]
根据权利要求6所述的方法,其中,所述根据第P-1级全连接层对于所述训练图片的分类得分更新所述第P-1级全连接层对于所述训练图片的分类标签,得到第P级全连接层对于所述训练图片的分类标签,P∈[2,N],包括: 根据第P-1级全连接层对于所述训练图片的分类得分,得到所述第P-1级全连接层对于所述训练图片的分类概率,P∈[2,N]; 在所述第P-1级全连接层对于所述训练图片的分类概率大于或等于第P概 率阈值的情况下,将所述第P-1级全连接层对于所述训练图片的分类标签修改为所述预设分类标签,并将所述预设分类标签作为第P级全连接层对于所述训练图片的分类标签; 在所述第P-1级全连接层对于所述训练图片的分类概率小于所述第P概率阈值的情况下,保持所述第P-1级全连接层对于所述训练图片的分类标签不变,并将所述第P-1级全连接层对于所述训练图片的分类标签作为所述第P级全连接层对于所述训练图片的分类标签。
[权利要求 8]
根据权利要求7所述的方法,其中,所述根据多级损失函数确定所述神经网络模型的损失函数,并且根据所述神经网络模型的损失函数调整所述多级神经网络层的网络参数和所述多级全连接层的网络参数,基于调整后的所述网络参数重新计算所述神经网络模型的损失函数,直至所述神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型,包括: 根据多级损失函数确定所述神经网络模型的损失函数; 计算所述神经网络模型的损失函数对所述多级神经网络层的网络参数的偏导数和所述神经网络模型的损失函数对所述多级全连接层的网络参数的偏导数,并在一级全连接层的一张图片的分类标签为所述预设分类标签的情况下,将目标偏导数设置为零,其中,所述目标偏导数为将所述一张训练图片的分类得分代入所述神经网络模型的损失函数后,得到的损失函数对所述一级全连接层的网络参数的偏导数; 根据所述偏导数调整所述多级神经网络层的网络参数和所述多级全连接层的网络参数,并基于调整后的所述网络参数重新计算所述神经网络模型的损失函数,直至所述神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[权利要求 9]
一种图片分类装置,包括: 图片集获取模块,设置为获取待分类的图片集,所述图片集包括至少两张图片; 分类结果生成模块,设置为将所述图片集输入至预先训练的当前级分类识别模型中,得到每张图片的分类得分; 分类识别结果生成模块,设置为在所述每张图片的分类得分满足预设条件的情况下,根据所述每张图片的分类得分确定所述每张图片的分类识别结果;在所述每张图片的分类得分不满足所述预设条件的情况下,将所述每张图片输入至预先训练的下一级分类识别模型中,直至得到所述每张图片的分类识别结果;其中,每级分类识别模型基于神经网络训练生成。
[权利要求 10]
一种分类识别模型的生成装置,包括: 训练样本获取模块,设置为获取训练样本,所述训练样本包括训练图片和所述训练图片的原始分类标签; 分类得分和分类标签生成模块,设置为将所述训练图片和所述训练图片的原始分类标签输入至神经网络模型中,得到多级神经网络层中每级神经网络层对于所述训练图片的分类得分,以及,得到多级全连接层中每级全连接层对于所述训练图片的分类得分和分类标签,所述神经网络模型包括N级神经网络层和N-1级全连接层,第i级全连接层位于第i+1级神经网络层之后,N≥3,i∈[1,N-1]; 第一级损失函数生成模块,设置为根据第一级神经网络层对于所述训练图片的分类得分和所述训练图片的原始分类标签,得到所述第一级神经网络层的第一级损失函数; 第P级损失函数生成模块,设置为根据第P-1级全连接层对于所述训练图片的分类得分和分类标签,得到第P级神经网络层的第P级损失函数,P∈[2,N]; 分类识别模型生成模块,设置为根据多级损失函数确定所述神经网络模型的损失函数,并且根据所述神经网络模型的损失函数调整所述多级神经网络层的网络参数和所述多级全连接层的网络参数,基于调整后的所述网络参数重新计算所述神经网络模型的损失函数,直至所述神经网络模型的损失函数达到预设函数值,将每级神经网络层作为对应级的分类识别模型。
[权利要求 11]
一种设备,包括: 至少一个处理器; 存储器,设置为存储至少一个程序; 当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-8任一所述的方法。
[权利要求 12]
一种计算机可读存储介质,存储有计算机程序,所述程序被处理器执行时实现如权利要求1-8任一所述的方法。

附图

[ 图 1]  
[ 图 2]  
[ 图 3]  
[ 图 4]  
[ 图 5]  
[ 图 6]  
[ 图 7]  
[ 图 8]