CN114581751B - 图像识别模型的训练方法和图像识别方法、装置 - Google Patents
图像识别模型的训练方法和图像识别方法、装置 Download PDFInfo
- Publication number
- CN114581751B CN114581751B CN202210218135.XA CN202210218135A CN114581751B CN 114581751 B CN114581751 B CN 114581751B CN 202210218135 A CN202210218135 A CN 202210218135A CN 114581751 B CN114581751 B CN 114581751B
- Authority
- CN
- China
- Prior art keywords
- category
- score
- sample image
- determining
- prediction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 102
- 238000012549 training Methods 0.000 title claims abstract description 87
- 239000013598 vector Substances 0.000 claims abstract description 223
- 230000002596 correlated effect Effects 0.000 claims abstract description 12
- 238000011156 evaluation Methods 0.000 claims description 72
- 238000004590 computer program Methods 0.000 claims description 12
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 238000013135 deep learning Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 17
- 238000012545 processing Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 241001465754 Metazoa Species 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000005065 mining Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013136 deep learning model Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 241000270728 Alligator Species 0.000 description 1
- 241000718131 Cercopithecus kandti Species 0.000 description 1
- 208000025174 PANDAS Diseases 0.000 description 1
- 208000021155 Paediatric autoimmune neuropsychiatric disorders associated with streptococcal infection Diseases 0.000 description 1
- 240000000220 Panda oleosa Species 0.000 description 1
- 235000016496 Panda oleosa Nutrition 0.000 description 1
- 241000282320 Panthera leo Species 0.000 description 1
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000875 corresponding effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本公开提供了一种图像识别模型的训练方法、图像识别方法、装置、电子设备和存储介质,涉及人工智能领域,具体涉及深度学习和计算机视觉技术领域。其中,图像识别模型包括多个识别网络,图像识别模型的训练方法的具体实现方案为:将样本图像输入多个识别网络,由多个识别网络分别输出针对样本图像的分数向量,得到多个分数向量;根据多个分数向量确定图像识别模型的第一损失值;以及根据第一损失值,对图像识别模型进行训练,其中,第一损失值与多个分数向量彼此之间的差异正相关。
Description
技术领域
本公开涉及人工智能领域,具体涉及深度学习和计算机视觉技术领域,尤其涉及一种图像识别模型的训练方法和图像识别方法、装置、电子设备、存储介质。
背景技术
随着计算机技术和网络技术的发展,深度学习技术在计算机视觉领域得到了广泛应用。例如,可以采用深度学习模型进行图像识别。在实际应用场景中,训练数据的长尾分布在一定程度上会影响深度学习模型的训练精度。
发明内容
本公开旨在提供一种提高识别精度的图像识别模型的训练方法、图像识别方法、装置、电子设备和存储介质。
根据本公开的一个方面,提供了一种图像识别模型的训练方法,其中,图像识别模型包括多个识别网络;该方法包括:将样本图像输入多个识别网络,由多个识别网络分别输出针对样本图像的分数向量,得到多个分数向量;根据多个分数向量确定图像识别模型的第一损失值;以及根据第一损失值,对图像识别模型进行训练,其中,第一损失值与多个分数向量彼此之间的差异正相关。
根据本公开的一个方面,提供了一种图像识别方法,包括:将待识别图像输入识别网络,得到针对待识别图像的分数向量;以及根据分数向量,确定针对待识别图像的识别结果,其中,识别网络为采用本公开提供的图像识别模型的训练方法训练得到的图像识别模型中的任一识别网络。
根据本公开的一个方面,提供了一种图像识别模型的训练装置,其中,图像识别模型包括多个识别网络,该装置包括:分数向量获得模块,用于将样本图像输入多个识别网络,由多个识别网络分别输出针对样本图像的分数向量,得到多个分数向量;第一损失确定模块,用于根据多个分数向量确定图像识别模型的第一损失值;以及第一模型训练模块,用于根据第一损失值,对图像识别模型进行训练,其中,第一损失值与多个分数向量彼此之间的差异正相关。
根据本公开的一个方面,提供了一种图像识别装置,包括:分数向量获得模块,用于将待识别图像输入识别网络,得到针对待识别图像的分数向量;以及结果确定模块,用于根据分数向量,确定针对待识别图像的识别结果,其中,识别网络为采用本公开提供的图像识别模型的训练装置训练得到的图像识别模型中的任一识别网络。
根据本公开的另一个方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开提供的图像识别模型的训练方法和/或图像识别方法。
根据本公开的另一个方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开提供的图像识别模型的训练方法和/或图像识别方法。
根据本公开的另一个方面,提供了一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令在被处理器执行时实现本公开提供的图像识别模型的训练方法和/或图像识别方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的图像识别模型的训练方法和图像识别方法、装置的应用场景示意图;
图2是根据本公开实施例的图像识别模型的训练方法的流程示意图;
图3是根据本公开实施例的确定图像识别模型的第一损失值的原理示意图;
图4是根据本公开实施例的确定图像识别模型的第二损失值的原理示意图;
图5是根据本公开实施例的以嵌套的方式训练图像识别模型的原理示意图;
图6是根据本公开实施例的图像识别方法的流程示意图;
图7是根据本公开实施例的图像识别模型的训练装置的结构框图;
图8是根据本公开实施例的图像识别装置的结构框图;以及
图9是用来实施本公开实施例的图像识别模型的训练方法和/或图像识别方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本公开提供了一种图像识别模型的训练方法,其中,图像识别模型包括多个识别网络,训练方法包括分数向量预测阶段、损失确定阶段和模型训练阶段。在分数向量预测阶段中,将样本图像输入多个识别网络,由多个识别网络分别输出针对样本图像的分数向量,得到多个分数向量。在损失确定阶段中,根据多个分数向量确定图像识别模型的第一损失值。其中,第一损失值与多个分数向量彼此之间的差异正相关。在模型训练阶段中,根据第一损失值,对图像识别模型进行训练。
以下将结合图1对本公开提供的方法和装置的应用场景进行描述。
图1是根据本公开实施例的图像识别模型的训练方法和图像识别方法、装置的应用场景示意图。
如图1所示,该实施例的应用场景100可以包括电子设备110,该电子设备110可以为具有处理功能的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机和服务器等等。
该电子设备110例如可以对输入的图像120进行识别,以识别得到该图像的类别,并将类别作为识别结果130。其中,图像的类别可以为图像中描绘的对象的类别或图像描绘的场景的类别等。或者,该实施例还可以识别得到图像中的对象在图像中的位置,并将对象的类别和对象在图像中的位置作为识别结果130。
在一实施例中,图像120例如可以为拍摄动物所得到的图像,对象的类别可以包括动物的类别,其中,动物可以包括常见动物和珍稀动物等。或者,图像120可以为自动驾驶车辆采集的周边环境的图像,图像的类别可以包括图像中的场景所反映的事故的类别等。或者,图像120可以为采集的人脸图像,图像的类别可以包括重点人群中人的类别等。
在一实施例中,该电子设备110例如可以采用图像识别模型140来对图像120进行识别。例如,该图像识别模型140可以由服务器150训练得到。电子设备110可以通过网络与服务器150通信连接,以向服务器150发送模型获取请求。相应地,服务器150可以响应于该请求将训练好的图像识别模型140发送给电子设备110。其中,图像识别模型140可以包括循环神经网络模型(Recurrent Neural Network,RNN)、卷积神经网络模型(ConvolutionalNeural Network,CNN)等。
在一实施例中,电子设备110还可以将图像120发送给服务器150,由服务器150对该图像120进行识别。
需要说明的是,本公开提供的图像识别模型的训练方法可以由服务器150执行。相应地,本公开提供的图像识别模型的训练装置可以设置在服务器150中。本公开提供的图像识别方法可以由电子设备110执行,也可以由服务器150执行。相应地,本公开提供的图像识别装置可以设置在电子设备110中,也可以设置在服务器150中。
应该理解,图1中的电子设备110和服务器150的数目和类型仅仅是示意性的。根据实现需要,可以具有任意数目和类型的电子设备110和服务器150。
以下将结合图1,通过以下图2~图5对本公开提供的图像识别模型的训练方法进行详细描述。
图2是根据本公开实施例的图像识别模型的训练方法的流程示意图。
如图2所示,该实施例的图像识别模型的训练方法200可以包括操作S210~操作S230。
根据本公开的实施例,图像识别模型可以包括多个识别网络。该多个识别网络可以包括以下网络中的至少两个:VGG网络、残差网络(Residual Network,ResNet)、LeNet网络、视觉Transformer网络等。该多个识别网络的个数可以为两个或者更多个,本公开对此不做限定。
在一实施例中,该多个识别网络可以共享特征提取网络,且该多个识别网络具有彼此独立、且不同类型的分类网络。或者,该多个识别网络可以具有彼此不同的网络架构,本公开对此不做限定。
在操作S210,将样本图像输入多个识别网络,由多个识别网络分别输出针对样本图像的分数向量,得到多个分数向量。
根据本公开的实施例,样本图像可以为呈长尾分布的图像集中的任意一个图像。其中,呈长尾分布的图像集指大部分的图像属于多个预定类别中少数的几个类别,而属于多个预定类别中大部分类别的图像则较少。或者,该样本图像也可以为公开图像集中的任意一个图像。可以理解的是,该样本图像为目标场景中的图像,该目标场景可以包括珍稀动物的识别场景、重点人群的识别场景或交通事故的识别场景等,本公开对此不做限定。
该实施例将样本图像输入多个识别网络后,每个识别网络可以输出一个分数向量。该分数向量包括样本图像针对多个预定类别中每个类别的预测分数。在一实施例中,还可以将多个样本图像批量地输入每个识别网络,由每个识别网络输出与多个样本图像分别对应的多个分数向量,该多个分数向量可以构成分数矩阵。针对每个样本图像,可以由多个识别网络输出多个分数向量。其中,针对不同的目标场景,多个预定类别可以不同。例如,对于动物识别场景,多个预定类别可以包括熊猫类别、狮子类别、丹顶鹤类别、金丝猴类别和扬子鳄类别等。
在操作S220,根据多个分数向量确定图像识别模型的第一损失值。
根据本公开的实施例,第一损失值可以与多个分数向量彼此之间的差异正相关。其中,多个分数向量彼此之间的差异可以由多个分数向量彼此之间的距离来体现。例如,针对两个分数向量,可以采用该两个分数向量的KL散度(Kullback-Leibler divergence)、欧几里得距离(Euclidean Distance)等来表示该两个分数向量之间的差异,本公开对此不做限定。
例如,该实施例可以将多个分数向量两两组合,得到多组分数向量,并针对每组分数向量得到两个分数向量之间的差异。随后将针对多组分数向量的多个差异的平均差异,作为第一损失值。
可以理解的是,在将前述图像集中的多个图像作为样本图像时,该实施例可以针对每个样本图像得到一个第一损失值,将针对多个样本图像得到的多个第一损失值的和,作为图像识别模型的第一损失值。
在操作S230,根据第一损失值,对图像识别模型进行训练。
根据本公开的实施例,可以以最小化第一损失值为目标,采用反向传播算法来调整图像识别模型的网络参数,直至图像识别模型的第一损失值达到收敛条件,完成对图像识别模型的训练。
本公开实施例通过对由多个识别网络构成的图像识别模型进行训练,并以最小化多个识别网络输出的多个分数向量彼此之间的差异为训练目标,可以实现对多个识别网络的协同训练,且在训练过程中可以使得多个识别网络彼此之间起到指导作用,从而可以综合不同类型的识别网络之间的优势,使得多个识别网络共同提升识别性能,提高得到的图像识别图像中各识别网络的精度。
根据本公开的实施例,针对每个分数向量,可以根据样本图像针对每个预定类别的预测分数和该每个分数向量包括的多个预测分数,来确定样本图像属于每个预定类别的第一预测概率。样本图像属于多个预定类别的多个第一预测概率即可构成概率向量。该实施例可以由针对两个分数向量得到的两个概率向量之间的差异来表示两个分数向量之间的差异。如此,可以综合考虑识别网络处理得到的针对多个预定类别的预测分数。其中,两个概率向量之间的差异可以由两个概率向量之间的KL散度等来表示。
具体地,该实施例可以先针对每个分数向量,确定该每个分数向量包括的多个预测分数的和。随后,针对该每个分数向量中样本图像针对每个预定类别的预测分数,确定该预测分数与多个预测分数的和的比值,将该比值作为样本图像属于每个预定类别的第一预测概率。例如,设定样本图像为图像xi,输出该每个分数向量的识别网络的网络参数为θk,则样本图像xi属于多个预定类别中第j个预定类别的第一预测概率可以采用以下公式(1)计算得到:
其中,zij为该每个分数向量中样本图像xi针对第j个预定类别的预测分数,zil为该每个分数向量中样本图像xi针对第l个预定类别的预测分数,C为多个预定类别的总个数。
根据本公开的实施例,可以在确定样本图像属于每个预定类别的第一预测概率时,考虑多个样本图像中属于各个类别的图像个数。以此更好的平衡各预定类别的训练,避免尾部类别受头部类别的影响,提高根据该第一预测概率构成的概率向量所确定的第一损失值的准确性。其中,头部类别指样本图像多的类别,尾部类别指样本图像少的类别。以下将结合图3对该实施例的具体实现方式进行详细描述。
图3是根据本公开实施例的确定图像识别模型的第一损失值的原理示意图。
根据本公开的实施例,每个样本图像可以具有真值类别,该真实类别可以由为该每个样本图像添加的标签来表示。该真值类别属于前述的多个预定类别中。如图3所示,该实施例300在确定第一损失值之前,可以先针对前述多个预定类别中的每个预定类别,确定前述图像集310中的多个样本图像中具有每个预定类别的图像的个数,作为针对该每个预定类别的个数。例如,设定多个预定类别包括第一类别321、第二类别322、第三类别323,则可以得到图像集310具有第一类别321的图像的第一个数331、具有第二类别322的图像的第二个数332和具有第三类别323的图像的第三个数333。
在确定样本图像属于每个预定类别的第一预测概率时,该实施例可以根据针对该每个预定类别的个数和样本图像针对该每个预定类别的预测分数,确定样本图像针对该每个预定类别的第一评估值。随后,根据样本图像针对该每个预定类别的第一评估值与样本图像针对多个预定类别的多个第一评估值的和,确定样本图像属于每个预定类别的第一预测概率。
例如,在得到第一个数331~第三个数333后,该实施例可以确定分数向量340中样本图像针对第一类别321的第一预测分数341、分数向量340中样本图像针对第二类别322的第二预测分数342和分数向量340中样本图像针对第三类别323的第三预测分数343。随后,根据第一预测分数341和第一个数331,确定样本图像针对第一类别321的第一评估值351。类似地,可以确定样本图像针对第二类别322的第一评估值352和样本图像针对第三类别323的第一评估值353。
其中,可以将针对每个预定类别的个数作为预测分数的权重,将样本图像针对每个预定类别的预测分数的加权值作为第一评估值。或者,可以以样本图像针对每个预定类别的预测分数作为指数,确定以自然常数e为底的指数函数的取值,将该取值与针对每个预定类别的个数的乘积,作为第一评估值。
在得到样本图像针对每个预定类别的第一评估值后,该实施例可以先计算针对多个预定类别的第一评估值的和,得到评估值和350。随后,计算第一评估值351与评估值和350之间的比值,将该比值作为样本图像属于第一类别321的第一预测概率361。类似地,可以得到样本图像属于第二类别322的第一预测概率362和样本图像属于第三类别323的第一预测概率363。可以理解的是,将比值作为第一预测概率仅作为示例以利于理解本公开,本公开对此不做限定。
在一实施例中,针对每个分数向量,样本图像xi属于多个预定类别中第j个预定类别的第一预测概率pj(xi;θk)可以采用以下公式(2)计算得到:
其中,nj为针对第j个预定类别的个数,nl为针对多个预定类别中第l个预定类别的个数,zij为该每个分数向量中样本图像xi针对第j个预定类别的预测分数,zil为该每个分数向量中样本图像xi针对第l个预定类别的预测分数,C为多个预定类别的总个数,θk为输出该每个分数向量的识别网络的网络参数。
根据本公开的实施例,可以采用嵌套的方式来训练图像识别模型,以更好的解决数据集的长尾分布所带来的训练精度针对不同预定类别不均衡的问题。其中,嵌套的方式指不仅从全局视野对所有预定类别的图像进行学习,还从局部视野对一些难识别的类别的图像进行学习。其中,该实施例可以采用困难类别挖掘(Hard Category Mining,HCM)技术来确定出难识别的类别。通过该实施例,可以使得图像识别模型不仅能够捕捉到全局的特征,还可以捕捉到细致的局部特征,在训练过程中,两个视野的学习是相互嵌套、高度关联和互补的。可以理解的是,前述根据第一损失值训练图像识别模型的方法是使得图像识别模型从全局视野对所有类别的图像进行学习的实现方式,以下将结合图4对使得图像识别模型从局部视野对一些那是别的类别的图像进行学习的具体实现方式进行详细描述。
图4是根据本公开实施例的确定图像识别模型的第二损失值的原理示意图。
根据本公开的实施例,如图4所示,该实施例400中,可以从多个分数向量410中任意选择一个分数向量,得到任一分数向量411。随后,针对该任一分数向量411,确定该任一分数向量411包括的多个预测分数中取值较大的前预定数量个预测分数420,并将该前预定数量个预测分数420所针对的预定类别作为目标类别430。在得到目标类别430后,该实施例可以将样本图像的真值类别440和该目标类别构成一个类别组,作为第一类别组450。该第一类别组中的各类别可以理解为通过困难类别挖掘技术挖掘出的难识别的类别。
在得到第一类别组后,该实施例可以针对多个分数向量中的每个分数向量412,确定该每个分数向量412中样本图像针对第一类别组中各类别的预测分数,得到针对该每个分数向量412的分数组460。最后,根据针对多个分数向量410的多个分数组,确定图像识别模型的第二损失值。可以理解的是,该每个分数向量412可以为任一分数向量411,还可以为多个分数向量410除任一分数向量411外的其他分数向量。
在一实施例中,第二损失值可以与多个分数组彼此之间的差异正相关。例如,针对两个分数组,该两个分数组之间的差异与前文描述的两个分数向量之间的差异类似。该实施例可以针对每两个分数组得到一个差异,将针对多个分数组的多个差异的平均差异,作为第二损失值。
可以理解的是,在将前述图像集中的多个图像作为样本图像时,该实施例可以针对每个样本图像得到一个第二损失值,将针对多个样本图像得到的多个第二损失值的和,作为图像识别模型的第二损失值。
在一实施例中,针对每个分数组,可以根据样本图像针对第一类别组每个类别的预测分数和该每个分数组中的全部预测分数,来确定样本图像属于第一类别组中每个类别的第二预测概率。样本图像属于第一类别组中多个类别的多个第二预测概率即可构成概率向量,作为针对该每个分数组的概率向量。该实施例可以由针对两个分数组得到的两个概率向量之间的差异来表示两个分数组之间的差异。最后,根据针对多个分数组的多个概率向量彼此之间的差异,确定第二损失值。如此,可以综合考虑识别网络处理得到的针对多个预定类别的预测分数。
例如,该实施例可以采用与前文描述的公式(1)计算第一预测概率的方法类似的方法,来确定第二预测概率。区别在于,在计算第二预测概率时,预测分数仅取每个分数组中的预测分数,公式(1)中分子部分由每个分数组中的任一预测分数替代,公式(1)中的分母部分为每个分数组中多个预测分数的和。
在一实施例中,可以在确定样本图像属于第一类别组中每个类别的第二预测概率时,考虑多个样本图像中属于该每个类别的图像个数。以此更好的平衡第一类别组中各类别的训练,提高根据该第二预测概率构成的概率向量所确定的第二损失值的准确性。
例如,该实施例可以先采用前文图3描述的原理,确定针对每个预定类别的个数。随后,针对第一类别组中的每个类别,根据针对该每个类别的个数和每个分数组中样本图像针对该每个类别的预测分数,确定样本图像针对该每个类别的第二评估值。随后,根据样本图像针对每个类别的第二评估值与样本图像针对第一类别组中多个类别的多个第二评估值的和,确定样本图像属于该每个类别的第二预测概率。可以理解的是,可以采用与前文确定第一评估值的方法类似的方法,来确定样本图像针对第一类别组中每个类别的第二评估值,并采用与前述公式(2)确定第一预测概率的方法类似的方法来确定第二预测概率。
示例性地,针对每个分数组,样本图像xi属于第一类别组中第j个预定类别的第二预测概率可以采用以下公式(3)计算得到:
其中,表示每个分数组,θk为输出包括该每个分数组的识别网络的网络参数,nj为针对第j个预定类别的个数,nl为针对第l个预定类别的个数,zij为该每个分数组中样本图像xi针对第j个预定类别的预测分数,zil为该每个分数组中样本图像xi针对第l个预定类别的预测分数,其中,第一类别组包括该第j个预定类别和该第l个预定类别。
图5是根据本公开实施例的以嵌套的方式训练图像识别模型的原理示意图。
如图5所示,该实施例500设定多个识别网络的个数为三个,即图像识别模型包括第一识别网络510、第二识别网络520和第三识别网络530。针对三个识别网络中的任一识别网络,将样本图像xi输入该任一识别网络后,该任一识别网络输出的分数向量中多个预测分数的取值分布可以为分布501。针对通过困难类别挖掘技术挖掘出的难识别的类别组,该任一识别网络输出的分数向量中针对该类别组中多个类别的多个预测分数的取值分布可以为分布502。采用前文描述的确定针对分数向量的概率向量的方式,根据分布501,可以得到针对该任一识别网络的全局概率向量503,该全局概率向量503即为前文描述确定针对分数向量的概率向量的方式。采用前文描述的确定针对每个分数组的概率向量的方式,根据分布502,可以得到针对该任一识别网络的局部概率向量504,该局部概率向量504即为前文描述的针对每个分数组的概率向量。如此,针对三个识别网络中的每个识别网络,都可以得到一个全局概率向量和一个局部概率向量。该实施例可以综合多个全局概率向量得到图像识别模型的全局损失值(即第一损失值),综合多个局部概率向量,得到图像识别模型的局部损失(即第二损失值)。最后,将全局损失值和局部损失值的加权和,作为图像识别模型的损失值,并根据该损失值对图像识别模型进行训练。
示例性地,全局损失值可以采用以下公式(4)表示:
其中,设定第一预测概率采用前文描述的公式(2)计算得到,则p(xi;θk)表示针对K个识别网络中第k个识别网络输出的分数向量的概率向量,p(xi;θq)表示针对K个识别网络中第q个识别网络输出的分数向量的概率向量。θk为第k个识别网络的网络参数,θq为第q个识别网络的网络参数。
示例性地,局部损失值可以采用以下公式(5)表示:
其中,设定第二预测概率采用前文描述的公式(3)计算得到,则p*(xi;θk)表示针对第k个识别网络输出的分数向量的分数组的概率向量,p*(xi;θq)表示针对第q个识别网络输出的分数向量的分数组的概率向量。
综上可知,采用本公开实施例的训练图像识别模型的原理可知,采用本公开实施例的训练方式,可以实现图像识别模型的自监督训练。
根据本公开的实施例,在训练图像识别模型时,例如还可以根据样本图像的监督信息来对每个识别网络进行单独训练。如此,可以在一定程度上提高训练得到的各识别网络的精度。
在一实施例中,可以针对每个分数向量中针对样本图像的真值列别的预测分数,来确定输出该每个分数向量的目标网络的第三损失值。随后,根据该第三损失值对目标网络进行训练。例如,该实施例可以采用交叉熵损失函数来确定该第三损失值。
在一实施例中,可以采用与前文描述的确定样本图像属于每个预定类别的第一预测概率的方法类似的方法,针对每个分数向量,根据该每个分数向量中针对真值类别的预测分数和多个预测分数,确定样本图像属于真值类别的第三预测概率。随后,根据该第三预测概率,确定目标网络的第三损失值。具体地,该实施例可以采用前文描述的公式(1)来确定第三预测概率。如此,可以综合考虑目标网络处理得到的针对多个预定类别的预测分数。
在一实施例中,还可以在确定第三预测概率之前,采用前文描述的方法确定针对每个预定类别的个数。随后,针对每个预定类别,根据针对每个预定类别的个数和样本图像针对每个预定类别的预测分数,确定样本图像属于每个预定类别的第三评估值。最后根据针对真值类别的第三评估值与针对多个预定类别的多个第三评估值的和,确定第三预测概率。具体地,该实施例可以采用前文描述的公式(2)来确定第三预测概率。如此,可以更好的平衡各预定类别的训练,避免尾部类别受头部类别的影响,提高根据该第三预测概率所确定的第三损失值的准确性。
可以理解的是,上述确定第三预测概率的方法实质上是从全局视野来确定样本图像属于真值类别的预测概率。该实施例还可以从局部视野来确定样本图像属于真值类别的预测概率。如此,可以采用嵌套的方式来对单个识别网络进行训练,可以使得单个识别网络更好的捕捉到全局特征和局部特征。以下将对从局部视野确定样本图像属于真值类别的预测概率的具体实施例进行详细描述。
例如,在一实施例中,可以针对每个分数向量,确定由多个预测分数中取值较大的前预定数量个预测分数和样本图像针对真值类别的预测分数构成的分数组。然后,根据样本图像针对真值类别的预测分数和分数组中的多个预测分数,确定样本图像属于真值类别的预测概率。可以理解的是,该分数组与前文描述的针对每个分数向量的分数组类似。该实施例也可以采用前文描述的确定第一类别组的方法,针对该每个分数向量确定目标类别,并得到由目标类别和真实类别构成的第二类别组。将每个分数向量中样本图像针对第二类别组中各类别的预测分数,来得到分数组。其中,样本图像属于真值类别的预测概率可以采用前文描述的确定第二预测概率的方法来确定。
在一实施例中,在根据样本图像针对真值类别的预测分数和分数组中的多个预测分数,确定样本图像属于真值类别的预测概率之前,可以先采用前文描述的方法确定针对每个预定类别的个数。随后,确定分数组中的多个预测分数分别针对的预定类别,得到第二类别组。随后,针对第二类别组中的每个类别,根据针对每个定类别的个数和分数组中针对每个类别的预测分数,确定样本图像针对每个类别的第四评估值。随后,根据针对真值类别的第四评估值与针对第二类别组中多个类别的多个第四评估值的和,来确定样本图像属于真值类别的预测概率。具体地,该实施例可以采用前文描述的公式(3)来确定样本图像属于真值类别的预测概率,在此不再赘述。
在一实施例中,可以根据从全局视野确定的样本图像属于真值类别的预测概率来得到目标网络的全局损失值,根据从局部视野确定的样本图像属于真值类别的预测概率来得到目标网络的局部损失值。最后,将该全局损失值和局部损失值的加权和,作为目标网络的第三损失值。其中,全局损失值和局部损失值可以均采用交叉熵损失函数计算得到,或者任意的分类损失函数来得到全局损失值和局部损失值。
根据本公开的实施例,在训练图像识别模型时,例如将前文描述的第一损失值、第二损失值和第三损失值的加权和作为针对每个识别网络的损失值,以根据该损失值对每个识别网络进行训练。可以理解的是,本公开中计算各加权和时所采用的权重系数可以根据实际需求进行设定,本公开对此不做限定。
在一实施例中,还可以先根据第三损失值对每个识别网络进行单独训练。在每个识别网络的精度达到一定程度后,再采用第一损失值和第二损失值的加权和来对多个识别网络进行协同训练。
基于本公开提供的图像识别模型的训练方法,本公开还提供了一种图像识别方法,以下将结合图6对该图像识别方法进行详细描述。
图6是根据本公开实施例的图像识别方法的流程示意图。
如图6所示,该实施例的图像识别方法600可以包括操作S610和操作S620。
在操作S610,将待识别图像输入识别网络,得到针对待识别图像的分数向量。其中,识别网络可以为前文描述的图像识别模型的训练方法训练得到的图像识别模型中的任一识别网络。
可以理解的是,该操作S610与前文描述的操作S210类似,区别在于该实施例仅将待识别图像输入多个识别网络中的任意一个识别网络。如此,可以在预测时,有效节省计算资源,提升预测效率。
在操作S620,根据分数向量,确定针对待识别图像的识别结果。
根据本公开的实施例,分数向量包括待识别图像针对多个预定类别的预测分数。该实施例可以将分数向量中最大预测分数所针对的预定类别作为待识别图像的类别,并将该待识别图像的类别作为识别结果。
在一实施例中,在不考虑计算资源限制的情况下,该实施例还可以将待识别图像输入图像识别模型包括的多个识别网络中,随后计算多个识别网络输出的多个分数向量的平均向量,将平均向量中最大分数所针对的预定类别作为待识别图像的类别。
基于本公开提供的图像识别模型的训练方法,本公开还提供了一种图像识别模型的训练装置,以下将结合图7对该装置进行详细描述。
图7是根据本公开实施例的图像识别模型的训练装置的结构框图。
如图7所示,该实施例的图像识别模型的训练装置700可以包括分数向量获得模块710、第一损失确定模块720和第一模型训练模块730。其中,图像识别模型包括多个识别网络。
分数向量获得模块710用于将样本图像输入多个识别网络,由多个识别网络分别输出针对样本图像的分数向量,得到多个分数向量。在一实施例中,分数向量获得模块710可以用于执行前文描述操作S210,在此不再赘述。
第一损失确定模块720用于根据多个分数向量确定图像识别模型的第一损失值。其中,第一损失值与多个分数向量彼此之间的差异正相关。在一实施例中,第一损失确定模块720可以用于执行前文描述操作S220,在此不再赘述。
第一模型训练模块730用于根据第一损失值,对图像识别模型进行训练。在一实施例中,第一模型训练模块730可以用于执行前文描述操作S230,在此不再赘述。
根据本公开的实施例,每个分数向量包括样本图像分别针对多个预定类别的多个预测分数。上述第一损失确定模块720可以包括第一概率确定子模块、第一向量确定子模块和第一损失确定子模块。第一概率确定子模块用于针对每个分数向量,根据样本图像针对多个预定类别中每个预定类别的预测分数和多个预测分数,确定样本图像属于每个预定类别的第一预测概率。第一向量确定子模块用于确定由样本图像属于多个预定类别的多个第一预测概率构成的概率向量,作为针对每个分数向量的概率向量。第一损失确定子模块用于根据针对多个分数向量的多个概率向量彼此之间的差异,确定第一损失值。
根据本公开的实施例,样本图像具有真值类别;真值类别属于多个预定类别。上述装置700还可以包括样本个数确定模块,用于针对每个预定类别,根据多个样本图像的多个真值类别,确定多个样本图像中具有每个预定类别的图像的个数,作为针对每个预定类别的个数。上述第一概率确定子模块可以包括第一评估值确定单元和第一概率确定单元。第一评估值确定单元用于根据针对每个预定类别的个数和样本图像针对每个预定类别的预测分数,确定样本图像针对每个预定类别的第一评估值。第一概率确定单元用于根据样本图像针对每个预定类别的第一评估值与样本图像针对多个预定类别的多个第一评估值的和,确定样本图像属于每个预定类别的第一预测概率。
根据本公开的实施例,每个分数向量包括样本图像分别针对多个预定类别的多个预测分数,样本图像具有真值类别,真值类别属于多个预定类别。上述装置700还可以包括目标类别确定模块、类别组确定模块、分数组确定模块和第二损失值确定模块。目标类别确定模块用于针对任一分数向量,确定多个预测分数中取值较大的前预定数量个预测分数所针对的预定类别,作为目标类别。类别组确定模块用于确定由目标类别和真值类别构成的第一类别组。分数组确定模块用于针对每个分数向量,确定每个分数向量中样本图像针对第一类别组中各类别的预测分数,得到针对每个分数向量的分数组。第二损失值确定模块用于根据针对多个分数向量的多个分数组,确定图像识别模型的第二损失值。其中,上述第一模型训练模块730还可以用于根据第二损失值,对图像识别模型进行训练。
根据本公开的实施例,第二损失值确定模块可以包括第二概率确定子模块、第二向量确定子模块和第二损失确定子模块。第二概率确定子模块用于针对每个分数组,根据样本图像针对第一类别组中各类别的预测分数和分数组,确定样本图像属于第一类别组中各类别的第二预测概率。第二向量确定子模块用于确定由样本图像属于第一类别组中多个类别的多个第二预测概率构成的概率向量,作为针对每个分数组的概率向量。第二损失确定子模块用于根据针对多个分数组的多个概率向量彼此之间的差异,确定第二损失值。
根据本公开的实施例,上述装置700还可以包括样本个数确定模块,用于针对多个预定类别中的每个预定类别,根据多个样本图像的多个真值类别,确定多个样本图像中具有每个预定类别的图像的个数,作为针对每个预定类别的个数。上述第二概率确定子模块可以包括第二评估值确定单元和第二概率确定单元。第二评估值确定单元用于针对第一类别组中的每个类别,根据针对每个类别的个数和每个分数组中样本图像针对每个类别的预测分数,确定样本图像针对每个类别的第二评估值。第二概率确定单元用于根据样本图像针对每个类别的第二评估值与样本图像针对第一类别组中多个类别的多个第二评估值的和,确定样本图像属于每个类别的第二预测概率。
根据本公开的实施例,每个分数向量包括样本图像针对多个预定类别的多个预测分数,样本图像具有属于多个预定类别的真值类别。上述装置700还可以包括第三损失确定模块和第二模型训练模块。第三损失确定模块用于根据每个分数向量中针对真值类别的预测分数,确定多个识别网络中输出每个分数向量的目标网络的第三损失值。第二模型训练模块用于根据第三损失值对目标网络进行训练。
根据本公开的实施例,第三损失确定模块可以包括第三概率确定子模块和第三损失确定子模块。第三概率确定子模块用于针对每个分数向量,根据每个分数向量中针对真值类别的预测分数和多个预测分数,确定样本图像属于真值类别的第三预测概率。第三损失确定子模块用于根据第三预测概率,确定目标网络的第三损失值。
根据本公开的实施例,上述装置700还可以包括样本个数确定模块,用于针对每个预定类别,根据多个样本图像的多个真值类别,确定多个样本图像中具有每个预定类别的图像的个数,作为针对每个预定类别的个数。上述第三概率确定子模块可以包括第三评估值确定单元和第三概率确定单元。第三评估值确定单元用于针对每个预定类别,根据针对每个预定类别的个数和样本图像针对每个预定类别的预测分数,确定样本图像属于每个预定类别的第三评估值。第三概率确定单元用于根据针对真值类别的第三评估值与针对多个预定类别的多个第三评估值的和,确定第三预测概率。
根据本公开的实施例,第三概率确定子模块可以包括分数组确定单元和第四概率确定单元。分数组确定单元用于针对每个分数向量,确定由多个预测分数中取值较大的前预定数量个预测分数和样本图像针对真值类别的预测分数构成的分数组。第四概率确定单元用于根据样本图像针对真值类别的预测分数和分数组中的多个预测分数,确定第三预测概率。
根据本公开的实施例,上述装置700还可以包括样本个数确定模块,用于针对每个预定类别,根据多个样本图像的多个真值类别,确定多个样本图像中具有每个预定类别的图像的个数,作为针对每个预定类别的个数。上述第四概率确定单元可以包括类别组确定子单元、评估值确定子单元和概率确定子单元。类别组确定子单元用于确定分数组中的多个预测分数分别针对的预定类别,得到第二类别组。评估值确定子单元用于针对第二类别组中的每个类别,根据针对每个类别的个数和分数组中针对每个类别的预测分数,确定样本图像针对每个类别的第四评估值。概率确定子单元用于根据针对真值类别的第四评估值与针对第二类别组中多个类别的多个第四评估值的和,确定第三预测概率。
基于本公开提供的图像识别方法,本公开还提供了一种图像识别装置,以下将结合图8对该装置进行详细描述。
图8是根据本公开实施例的图像识别装置的结构框图。
如图8所示,该实施例的图像识别装置800可以包括分数向量获得模块810和结果确定模块820。
分数向量获得模块810用于将待识别图像输入识别网络,得到针对待识别图像的分数向量。其中,识别网络为采用本公开提供的图像识别模型的训练装置训练得到的图像识别装置中的任一识别网络。在一实施例中,分数向量获得模块810可以用于执行前文描述操作S610,在此不再赘述。
结果确定模块820用于根据分数向量,确定针对待识别图像的识别结果。在一实施例中,结果确定模块820可以用于执行前文描述操作S620,在此不再赘述。
需要说明的是,本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图9示出了可以用来实施本公开实施例的图像识别模型的训练方法和/或图像识别方法的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图9所示,设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如图像识别模型的训练方法和/或图像识别方法。例如,在一些实施例中,图像识别模型的训练方法和/或图像识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的图像识别模型的训练方法和/或图像识别方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行图像识别模型的训练方法和/或图像识别方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。其中,服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(″Virtual Private Server″,或简称″VPS″)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (25)
1.一种图像识别模型的训练方法,其中,所述图像识别模型包括多个识别网络;所述方法包括:
将样本图像输入所述多个识别网络,由所述多个识别网络分别输出针对所述样本图像的分数向量,得到多个所述分数向量;
根据多个所述分数向量确定所述图像识别模型的第一损失值;以及
根据所述第一损失值,对所述图像识别模型进行训练,
其中,每个所述分数向量包括所述样本图像分别针对多个预定类别的多个预测分数;所述样本图像具有真值类别;所述真值类被属于所述多个预定类别;所述方法还包括:
针对任一所述分数向量,确定所述多个预测分数中取值较大的前预定数量个预测分数所针对的预定类别,作为目标类别;
确定由所述目标类别和所述真值类别构成的第一类别组;
针对每个所述分数向量,确定每个所述分数向量中所述样本图像针对所述第一类别组中各类别的预测分数,得到针对每个所述分数向量的分数组;
根据针对多个所述分数向量的多个所述分数组,确定所述图像识别模型的第二损失值;以及
根据所述第二损失值,对所述图像识别模型进行训练;
其中,所述第一损失值与多个所述分数向量彼此之间的差异正相关;所述第二损失值与多个所述分数组彼此之间的差异正相关。
2.根据权利要求1所述的方法,其中,每个所述分数向量包括所述样本图像分别针对多个预定类别的多个预测分数;所述根据多个所述分数向量确定所述图像识别模型的第一损失值包括:
针对每个所述分数向量,根据所述样本图像针对所述多个预定类别中每个预定类别的预测分数和所述多个预测分数,确定所述样本图像属于所述每个预定类别的第一预测概率;
确定由所述样本图像属于所述多个预定类别的多个第一预测概率构成的概率向量,作为针对每个所述分数向量的概率向量;以及
根据针对多个所述分数向量的多个概率向量彼此之间的差异,确定所述第一损失值。
3.根据权利要求2所述的方法,其中,所述样本图像具有真值类别;所述真值类别属于所述多个预定类别;所述方法还包括:
针对所述每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,所述根据所述样本图像针对所述多个预定类别中每个预定类别的预测分数和所述多个预测分数,确定所述样本图像属于所述每个预定类别的第一预测概率包括:
根据针对所述每个预定类别的个数和所述样本图像针对所述每个预定类别的预测分数,确定所述样本图像针对所述每个预定类别的第一评估值;以及
根据所述样本图像针对所述每个预定类别的第一评估值与所述样本图像针对所述多个预定类别的多个第一评估值的和,确定所述样本图像属于所述每个预定类别的第一预测概率。
4.根据权利要求1所述的方法,其中,所述根据针对多个所述分数向量的多个所述分数组,确定所述图像识别模型的第二损失值包括:
针对每个所述分数组,根据所述样本图像针对所述第一类别组中各类别的预测分数和所述分数组,确定所述样本图像属于所述第一类别组中各类别的第二预测概率;
确定由所述样本图像属于所述第一类别组中多个类别的多个第二预测概率构成的概率向量,作为针对每个所述分数组的概率向量;以及
根据针对多个所述分数组的多个概率向量彼此之间的差异,确定所述第二损失值。
5.根据权利要求4所述的方法,还包括:
针对所述多个预定类别中的每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,确定所述样本图像属于所述第一类别组中各类别的第二预测概率包括:
针对所述第一类别组中的每个类别,根据针对所述每个类别的个数和每个所述分数组中所述样本图像针对所述每个类别的预测分数,确定所述样本图像针对所述每个类别的第二评估值;以及
根据所述样本图像针对所述每个类别的第二评估值与所述样本图像针对所述第一类别组中多个类别的多个第二评估值的和,确定所述样本图像属于所述每个类别的第二预测概率。
6.根据权利要求1所述的方法,其中,每个所述分数向量包括所述样本图像针对多个预定类别的多个预测分数;所述样本图像具有属于所述多个预定类别的真值类别;所述方法还包括:
根据每个所述分数向量中针对所述真值类别的预测分数,确定所述多个识别网络中输出每个所述分数向量的目标网络的第三损失值;以及
根据所述第三损失值对所述目标网络进行训练。
7.根据权利要求6所述的方法,其中,所述根据每个所述分数向量中针对所述真值类别的预测分数,确定所述多个识别网络中输出每个所述分数向量的目标网络的第三损失值包括:
针对每个所述分数向量,根据每个所述分数向量中针对所述真值类别的预测分数和所述多个预测分数,确定所述样本图像属于所述真值类别的第三预测概率;以及
根据所述第三预测概率,确定所述目标网络的第三损失值。
8.根据权利要求7所述的方法,还包括:
针对所述多个预定类别中的每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,确定所述样本图像属于所述真值类别的第三预测概率包括:
针对所述每个预定类别,根据针对所述每个预定类别的个数和所述样本图像针对所述每个预定类别的预测分数,确定所述样本图像属于所述每个预定类别的第三评估值;以及
根据针对所述真值类别的第三评估值与针对所述多个预定类别的多个第三评估值的和,确定所述第三预测概率。
9.根据权利要求7所述的方法,其中,确定所述样本图像属于所述真值类别的第三预测概率包括:
针对每个所述分数向量,确定由所述多个预测分数中取值较大的前预定数量个预测分数和所述样本图像针对所述真值类别的预测分数构成的分数组;以及
根据所述样本图像针对所述真值类别的预测分数和所述分数组中的多个预测分数,确定所述第三预测概率。
10.根据权利要求9所述的方法,还包括:
针对所述多个预定类别中的每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,根据所述样本图像针对所述真值类别的预测分数和所述分数组中的多个预测分数,确定所述第三预测概率包括:
确定所述分数组中的多个预测分数分别针对的预定类别,得到第二类别组;
针对所述第二类别组中的每个类别,根据针对所述每个类别的个数和所述分数组中针对所述每个类别的预测分数,确定所述样本图像针对所述每个类别的第四评估值;以及
根据针对所述真值类别的第四评估值与针对所述第二类别组中多个类别的多个第四评估值的和,确定所述第三预测概率。
11.一种图像识别方法,包括:
将待识别图像输入识别网络,得到针对所述待识别图像的分数向量;以及
根据所述分数向量,确定针对所述待识别图像的识别结果,
其中,所述识别网络为采用权利要求1~10中任一项所述的方法训练得到的图像识别模型中的任一识别网络。
12.一种图像识别模型的训练装置,其中,所述图像识别模型包括多个识别网络;所述装置包括:
分数向量获得模块,用于将样本图像输入所述多个识别网络,由所述多个识别网络分别输出针对所述样本图像的分数向量,得到多个所述分数向量;
第一损失确定模块,用于根据多个所述分数向量确定所述图像识别模型的第一损失值;以及
第一模型训练模块,用于根据所述第一损失值,对所述图像识别模型进行训练,
其中,每个所述分数向量包括所述样本图像分别针对多个预定类别的多个预测分数;所述样本图像具有真值类别;所述真值类别属于所述多个预定类别;所述装置还包括:
目标类别确定模块,用于针对任一所述分数向量,确定所述多个预测分数中取值较大的前预定数量个预测分数所针对的预定类别,作为目标类别;
类别组确定模块,用于确定由所述目标类别和所述真值类别构成的第一类别组;
分数组确定模块,用于针对每个所述分数向量,确定每个所述分数向量中所述样本图像针对所述第一类别组中各类别的预测分数,得到针对每个所述分数向量的分数组;以及
第二损失值确定模块,用于根据针对多个所述分数向量的多个所述分数组,确定所述图像识别模型的第二损失值,
其中,所述第一模型训练模块还用于:根据所述第二损失值,对所述图像识别模型进行训练;
其中,所述第一损失值与多个所述分数向量彼此之间的差异正相关;所述第二损失值与多个所述分数组彼此之间的差异正相关。
13.根据权利要求12所述的装置,其中,每个所述分数向量包括所述样本图像分别针对多个预定类别的多个预测分数;所述第一损失确定模块包括:
第一概率确定子模块,用于针对每个所述分数向量,根据所述样本图像针对所述多个预定类别中每个预定类别的预测分数和所述多个预测分数,确定所述样本图像属于所述每个预定类别的第一预测概率;
第一向量确定子模块,用于确定由所述样本图像属于所述多个预定类别的多个第一预测概率构成的概率向量,作为针对每个所述分数向量的概率向量;以及
第一损失确定子模块,用于根据针对多个所述分数向量的多个概率向量彼此之间的差异,确定所述第一损失值。
14.根据权利要求13所述的装置,其中,所述样本图像具有真值类别;所述真值类别属于所述多个预定类别;所述装置还包括:
样本个数确定模块,用于针对所述每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,所述第一概率确定子模块包括:
第一评估值确定单元,用于根据针对所述每个预定类别的个数和所述样本图像针对所述每个预定类别的预测分数,确定所述样本图像针对所述每个预定类别的第一评估值;以及
第一概率确定单元,用于根据所述样本图像针对所述每个预定类别的第一评估值与所述样本图像针对所述多个预定类别的多个第一评估值的和,确定所述样本图像属于所述每个预定类别的第一预测概率。
15.根据权利要求12所述的装置,其中,所述第二损失值确定模块包括:
第二概率确定子模块,用于针对每个所述分数组,根据所述样本图像针对所述第一类别组中各类别的预测分数和所述分数组,确定所述样本图像属于所述第一类别组中各类别的第二预测概率;
第二向量确定子模块,用于确定由所述样本图像属于所述第一类别组中多个类别的多个第二预测概率构成的概率向量,作为针对每个所述分数组的概率向量;以及
第二损失确定子模块,用于根据针对多个所述分数组的多个概率向量彼此之间的差异,确定所述第二损失值。
16.根据权利要求15所述的装置,还包括:
样本个数确定模块,用于针对所述多个预定类别中的每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,所述第二概率确定子模块包括:
第二评估值确定单元,用于针对所述第一类别组中的每个类别,根据针对所述每个类别的个数和每个所述分数组中所述样本图像针对所述每个类别的预测分数,确定所述样本图像针对所述每个类别的第二评估值;以及
第二概率确定单元,用于根据所述样本图像针对所述每个类别的第二评估值与所述样本图像针对所述第一类别组中多个类别的多个第二评估值的和,确定所述样本图像属于所述每个类别的第二预测概率。
17.根据权利要求12所述的装置,其中,每个所述分数向量包括所述样本图像针对多个预定类别的多个预测分数;所述样本图像具有属于所述多个预定类别的真值类别;所述装置还包括:
第三损失确定模块,用于根据每个所述分数向量中针对所述真值类别的预测分数,确定所述多个识别网络中输出每个所述分数向量的目标网络的第三损失值;以及
第二模型训练模块,用于根据所述第三损失值对所述目标网络进行训练。
18.根据权利要求17所述的装置,其中,所述第三损失确定模块包括:
第三概率确定子模块,用于针对每个所述分数向量,根据每个所述分数向量中针对所述真值类别的预测分数和所述多个预测分数,确定所述样本图像属于所述真值类别的第三预测概率;以及
第三损失确定子模块,用于根据所述第三预测概率,确定所述目标网络的第三损失值。
19.根据权利要求18所述的装置,还包括:
样本个数确定模块,用于针对所述每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,所述第三概率确定子模块包括:
第三评估值确定单元,用于针对所述每个预定类别,根据针对所述每个预定类别的个数和所述样本图像针对所述每个预定类别的预测分数,确定所述样本图像属于所述每个预定类别的第三评估值;以及
第三概率确定单元,用于根据针对所述真值类别的第三评估值与针对所述多个预定类别的多个第三评估值的和,确定所述第三预测概率。
20.根据权利要求18所述的装置,其中,所述第三概率确定子模块包括:
分数组确定单元,用于针对每个所述分数向量,确定由所述多个预测分数中取值较大的前预定数量个预测分数和所述样本图像针对所述真值类别的预测分数构成的分数组;以及
第四概率确定单元,用于根据所述样本图像针对所述真值类别的预测分数和所述分数组中的多个预测分数,确定所述第三预测概率。
21.根据权利要求20所述的装置,还包括:
样本个数确定模块,用于针对所述每个预定类别,根据多个所述样本图像的多个真值类别,确定多个所述样本图像中具有所述每个预定类别的图像的个数,作为针对所述每个预定类别的个数;
其中,所述第四概率确定单元包括:
类别组确定子单元,用于确定所述分数组中的多个预测分数分别针对的预定类别,得到第二类别组;
评估值确定子单元,用于针对所述第二类别组中的每个类别,根据针对所述每个类别的个数和所述分数组中针对所述每个类别的预测分数,确定所述样本图像针对所述每个类别的第四评估值;以及
概率确定子单元,用于根据针对所述真值类别的第四评估值与针对所述第二类别组中多个类别的多个第四评估值的和,确定所述第三预测概率。
22.一种图像识别装置,包括:
分数向量获得模块,用于将待识别图像输入识别网络,得到针对所述待识别图像的分数向量;以及
结果确定模块,用于根据所述分数向量,确定针对所述待识别图像的识别结果,
其中,所述识别网络为采用权利要求12~21中任一项所述的装置训练得到的图像识别模型中的任一识别网络。
23.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1~11中任一项所述的方法。
24.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1~11中任一项所述的方法。
25.一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令在被处理器执行时实现根据权利要求1~11中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210218135.XA CN114581751B (zh) | 2022-03-08 | 2022-03-08 | 图像识别模型的训练方法和图像识别方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210218135.XA CN114581751B (zh) | 2022-03-08 | 2022-03-08 | 图像识别模型的训练方法和图像识别方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114581751A CN114581751A (zh) | 2022-06-03 |
CN114581751B true CN114581751B (zh) | 2024-05-10 |
Family
ID=81778308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210218135.XA Active CN114581751B (zh) | 2022-03-08 | 2022-03-08 | 图像识别模型的训练方法和图像识别方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114581751B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111340105A (zh) * | 2020-02-25 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 一种图像分类模型训练方法、图像分类方法、装置及计算设备 |
CN111860573A (zh) * | 2020-06-04 | 2020-10-30 | 北京迈格威科技有限公司 | 模型训练方法、图像类别检测方法、装置和电子设备 |
CN111950656A (zh) * | 2020-08-25 | 2020-11-17 | 深圳思谋信息科技有限公司 | 图像识别模型生成方法、装置、计算机设备和存储介质 |
CN112668710A (zh) * | 2019-10-16 | 2021-04-16 | 阿里巴巴集团控股有限公司 | 模型训练、管状物提取、数据识别方法及设备 |
CN112861896A (zh) * | 2019-11-27 | 2021-05-28 | 北京沃东天骏信息技术有限公司 | 一种图像识别方法和装置 |
CN113673533A (zh) * | 2020-05-15 | 2021-11-19 | 华为技术有限公司 | 一种模型训练方法及相关设备 |
CN114022713A (zh) * | 2021-11-10 | 2022-02-08 | 重庆紫光华山智安科技有限公司 | 模型训练方法、系统、设备及介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200364624A1 (en) * | 2019-05-16 | 2020-11-19 | Retrace Labs | Privacy Preserving Artificial Intelligence System For Dental Data From Disparate Sources |
EP3913538A1 (en) * | 2020-05-20 | 2021-11-24 | Robert Bosch GmbH | Classification model calibration |
-
2022
- 2022-03-08 CN CN202210218135.XA patent/CN114581751B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112668710A (zh) * | 2019-10-16 | 2021-04-16 | 阿里巴巴集团控股有限公司 | 模型训练、管状物提取、数据识别方法及设备 |
CN112861896A (zh) * | 2019-11-27 | 2021-05-28 | 北京沃东天骏信息技术有限公司 | 一种图像识别方法和装置 |
CN111340105A (zh) * | 2020-02-25 | 2020-06-26 | 腾讯科技(深圳)有限公司 | 一种图像分类模型训练方法、图像分类方法、装置及计算设备 |
CN113673533A (zh) * | 2020-05-15 | 2021-11-19 | 华为技术有限公司 | 一种模型训练方法及相关设备 |
CN111860573A (zh) * | 2020-06-04 | 2020-10-30 | 北京迈格威科技有限公司 | 模型训练方法、图像类别检测方法、装置和电子设备 |
CN111950656A (zh) * | 2020-08-25 | 2020-11-17 | 深圳思谋信息科技有限公司 | 图像识别模型生成方法、装置、计算机设备和存储介质 |
CN114022713A (zh) * | 2021-11-10 | 2022-02-08 | 重庆紫光华山智安科技有限公司 | 模型训练方法、系统、设备及介质 |
Non-Patent Citations (1)
Title |
---|
基于卷积网络特征迁移的小样本物体图像识别;白洁;张金松;刘倩宇;;计算机仿真;20200515(第05期);316-32116-321 * |
Also Published As
Publication number | Publication date |
---|---|
CN114581751A (zh) | 2022-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113657465B (zh) | 预训练模型的生成方法、装置、电子设备和存储介质 | |
US20220147822A1 (en) | Training method and apparatus for target detection model, device and storage medium | |
CN112906502A (zh) | 目标检测模型的训练方法、装置、设备以及存储介质 | |
CN113642431A (zh) | 目标检测模型的训练方法及装置、电子设备和存储介质 | |
CN112580733B (zh) | 分类模型的训练方法、装置、设备以及存储介质 | |
CN113361710B (zh) | 学生模型训练方法、图片处理方法、装置及电子设备 | |
US20230186607A1 (en) | Multi-task identification method, training method, electronic device, and storage medium | |
CN113627361B (zh) | 人脸识别模型的训练方法、装置及计算机程序产品 | |
CN113780098A (zh) | 文字识别方法、装置、电子设备以及存储介质 | |
CN113379059B (zh) | 用于量子数据分类的模型训练方法以及量子数据分类方法 | |
CN113537192B (zh) | 图像检测方法、装置、电子设备及存储介质 | |
CN115147680B (zh) | 目标检测模型的预训练方法、装置以及设备 | |
CN113705628A (zh) | 预训练模型的确定方法、装置、电子设备以及存储介质 | |
CN114494747A (zh) | 模型的训练方法、图像处理方法、装置、电子设备及介质 | |
CN113887630A (zh) | 图像分类方法、装置、电子设备和存储介质 | |
CN113963011A (zh) | 图像识别方法、装置、电子设备及存储介质 | |
CN113449778A (zh) | 用于量子数据分类的模型训练方法以及量子数据分类方法 | |
CN116994319A (zh) | 训练模型的方法和人脸识别方法、设备、介质 | |
CN116341680A (zh) | 人工智能模型适配方法、装置、电子设备以及存储介质 | |
CN114581751B (zh) | 图像识别模型的训练方法和图像识别方法、装置 | |
CN115457365A (zh) | 一种模型的解释方法、装置、电子设备及存储介质 | |
CN115359322A (zh) | 一种目标检测模型训练方法、装置、设备和存储介质 | |
CN113989845A (zh) | 姿态分类方法和姿态分类模型的训练方法、装置 | |
CN115482422B (zh) | 深度学习模型的训练方法、图像处理方法和装置 | |
CN116416500B (zh) | 图像识别模型训练方法、图像识别方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |