CN118038104A - 确定目标模型的方法、确定图像类别的方法及系统 - Google Patents
确定目标模型的方法、确定图像类别的方法及系统 Download PDFInfo
- Publication number
- CN118038104A CN118038104A CN202211354700.1A CN202211354700A CN118038104A CN 118038104 A CN118038104 A CN 118038104A CN 202211354700 A CN202211354700 A CN 202211354700A CN 118038104 A CN118038104 A CN 118038104A
- Authority
- CN
- China
- Prior art keywords
- category
- model
- online
- test
- image
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 208
- 238000012360 testing method Methods 0.000 claims abstract description 456
- 238000012549 training Methods 0.000 claims abstract description 303
- 238000010200 validation analysis Methods 0.000 claims abstract description 131
- 238000013136 deep learning model Methods 0.000 claims abstract description 65
- 239000011159 matrix material Substances 0.000 claims abstract description 56
- 238000012795 verification Methods 0.000 claims description 85
- 230000007547 defect Effects 0.000 claims description 77
- 238000009826 distribution Methods 0.000 claims description 65
- 230000004044 response Effects 0.000 claims description 49
- 238000004891 communication Methods 0.000 claims description 39
- 238000012552 review Methods 0.000 claims description 35
- 238000012544 monitoring process Methods 0.000 claims description 23
- 238000003860 storage Methods 0.000 claims description 21
- 238000007726 management method Methods 0.000 claims description 18
- 238000012550 audit Methods 0.000 claims description 11
- 238000012216 screening Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013523 data management Methods 0.000 claims description 4
- 238000012790 confirmation Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 192
- 238000013145 classification model Methods 0.000 description 115
- 238000010586 diagram Methods 0.000 description 49
- 230000008569 process Effects 0.000 description 41
- 238000004519 manufacturing process Methods 0.000 description 31
- 230000000694 effects Effects 0.000 description 29
- 238000001514 detection method Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 22
- 238000013527 convolutional neural network Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 15
- 230000007423 decrease Effects 0.000 description 12
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 239000000428 dust Substances 0.000 description 8
- 230000009467 reduction Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 230000003247 decreasing effect Effects 0.000 description 6
- 230000008485 antagonism Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000003062 neural network model Methods 0.000 description 5
- 230000000306 recurrent effect Effects 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 230000002950 deficient Effects 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000001502 supplementing effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000012854 evaluation process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 239000003102 growth factor Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 101100295776 Drosophila melanogaster onecut gene Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本公开提出了一种确定图像类别的方法及装置,该方法包括:获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像;利用训练数据集对深度学习模型进行训练,根据不同训练轮数,得到至少两个经训练的模型;利用验证数据集测试至少两个经训练的模型,生成验证测试结果;基于验证测试结果,生成验证测试指标,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;根据验证测试指标,在至少两个经训练的模型中确定目标模型。
Description
技术领域
本公开涉及图像处理的技术领域,尤其涉及确定目标模型的方法、确定图像类别的方法、确定图像类别的系统、计算设备、计算机可读存储介质及计算机程序产品。
背景技术
随着计算机技术的发展,人工智能和深度学习算法等先进技术被广泛地应用。例如,可以使用基于人工智能和深度学习算法等先进技术的深度学习模型来完成对图像的分类,从而减少人工工作量,提高效率。又例如,在屏幕生产领域,由于设备、参数、操作、环境干扰等环节存在的问题,会使产出的产品产生不良,可以通过利用深度学习模型对屏幕图像进行分类来检测屏幕缺陷的类别。然而,在实际生产过程中,由于模型的预测效果会直接影响产品的生产过程,因此,将经训练的模型部署至生产线是一项非常谨慎的工作。
发明内容
有鉴于此,本公开提供了确定目标模型的方法、确定图像类别的方法、确定图像类别的系统、计算设备、计算机可读存储介质及计算机程序产品,期望克服上面提到的部分或全部缺陷以及其它可能的缺陷。
根据本公开的一方面,提供了一种确定目标模型的方法,包括:获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像;利用训练数据集对深度学习模型进行训练,根据不同训练轮数,得到至少两个经训练的模型;利用验证数据集测试至少两个经训练的模型,生成验证测试结果;基于验证测试结果,生成验证测试指标,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;根据验证测试指标,在至少两个经训练的模型中确定目标模型。
在一些实施例中,该方法还包括:获取离线测试数据集,离线测试数据集包括以下中的至少一项:由样本数据集划分得到的子集、由用户提供的输入样本数据集,输入样本数据集包括已被标注类别的多个样本图像;利用离线测试数据集测试目标模型,生成离线测试结果。
在一些实施例中,该方法还包括:基于验证测试结果或者离线测试结果,针对至少一个类别,生成准确率曲线和召回率曲线,其中,准确率曲线反映准确率和置信度阈值之间的关系,召回率曲线反映召回率与置信度阈值之间的关系;根据准确率曲线和召回率曲线,更新针对至少一个类别的置信度阈值。
在一些实施例中,根据准确率曲线和召回率曲线,更新针对至少一个类别的置信度阈值包括:根据准确率曲线和召回率曲线的交点,更新针对至少一个类别的置信度阈值。
在一些实施例中,该方法还包括:基于验证测试结果或者离线测试结果,根据准确率或召回率,确定针对各个类别的推荐置信度阈值;基于推荐置信度阈值,更新针对至少一个类别的置信度阈值。
在一些实施例中,该方法还包括:基于离线测试结果,生成离线测试指标,离线测试指标包括以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布;根据离线测试指标,更新针对至少一个类别的置信度阈值。
在一些实施例中,该方法还包括:根据更新后的置信度阈值,基于离线测试结果,生成以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布。
在一些实施例中,该方法还包括:获取在线测试数据集,在线测试数据集包括未被标注类别的多个图像;利用在线测试数据集测试目标模型,生成在线测试指标,在线测试指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布;以及以下两项中的一项:响应于在线测试指标满足预设标准,上线目标模型;以及响应于在线测试指标中的至少部分指标高于相关在线模型的对应测试指标,上线目标模型,其中,所述对应测试指标是基于所述相关在线模型针对所述在线测试数据集的输出结果得到的。
在一些实施例中,该方法还包括以下两项中的一项:响应于在线测试指标不满足预设标准,通过重新训练或调整置信度阈值来更新目标模型;以及响应于在线测试指标不高于相关在线模型的对应测试指标,通过重新训练或调整置信度阈值来更新目标模型。
在一些实施例中,获取在线测试数据集包括:与图像获取装置建立通讯连接,其中,图像获取装置被配置为获取待检图像;经由通讯连接,接收来自图像获取装置的待检图像;基于所接收的待检图像,获取在线测试数据集。
在一些实施例中,获取在线测试数据集包括:基于相关在线模型所接收的图像,获取在线测试数据集,其中,相关在线模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
在一些实施例中,上线目标模型包括:获取用户针对目标模型的审核结果;响应于审核结果指示目标模型可上线,上线目标模型,使得目标模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
在一些实施例中,该方法还包括:在目标模型上线后,基于来自图像获取装置的待检图像,获取在线抽查数据;接收针对在线抽查数据的人工复核结果,人工复核结果包括人工复核得到的待检图像的类别;基于人工复核结果和目标模型预测得到的类别,生成在线抽查指标,在线抽查指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。
在一些实施例中,基于来自图像获取装置的待检图像,获取在线抽查数据包括以下中的至少一项:在来自图像获取装置的待检图像中,随机抽取部分图像,并基于所抽取的图像,生成在线抽查数据;接收针对来自图像获取装置的待检图像的筛选条件,基于筛选条件,对来自图像获取装置的待检图像进行筛选,并基于筛选出的图像,生成在线抽查数据。
在一些实施例中,根据验证测试指标,在至少两个经训练的模型中确定目标模型包括:根据F1分数在至少两个经训练的模型中确定目标模型。
在一些实施例中,根据验证测试指标,在至少两个经训练的模型中确定目标模型还包括:根据混淆矩阵判断所确定的目标模型是否满足预设需求;响应于所确定的目标模型不满足预设需求,通过重新训练或调整置信度阈值来更新目标模型。
在一些实施例中,样本图像为目标产品的图像,类别为目标产品的产品缺陷类别。
根据本公开的另一方面,提供了一种确定图像类别的方法,包括:利用目标模型对待检图像进行预测,以得到待检图像的类别,其中,目标模型是根据验证测试指标从至少两个经训练的模型中确定的,至少两个经训练的模型具有不同训练轮数,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数。
根据本公开的又一方面,提供了一种确定目标模型的方法,包括:响应于用户对样本数据集的配置操作,获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像;根据样本数据集的特征信息配置训练参数,并生成训练参数展示界面,其中,训练参数展示界面展示的训练参数包括测试策略,测试策略包括至少两个训练轮数,特征信息包括样本数据集的样本数量;根据训练参数利用训练数据集对深度学习模型进行训练,得到至少两个经训练的模型,至少两个经训练的模型与至少两个训练轮数一一对应;利用验证数据集测试至少两个经训练的模型,生成验证测试结果;基于验证测试结果,生成验证测试指标展示界面,验证测试指标展示界面用于展示以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;响应于用户针对至少两个经训练的模型的选择操作,将用户所选择的模型确定为目标模型。
在一些实施例中,该方法还包括:响应于用户针对目标模型的离线测试任务建立操作,生成离线测试参数配置界面;根据用户在离线测试参数配置界面的配置输入,建立离线测试任务;根据配置输入,获取离线测试数据集,离线测试数据集包括已被标注类别的多个样本图像;利用离线测试数据集测试目标模型,生成离线测试结果。
在一些实施例中,根据离线测试结果,更新针对至少一个类别的置信度阈值包括:基于验证测试结果或者离线测试结果,生成曲线展示界面,曲线展示界面用于展示各个类别的准确率曲线和召回率曲线,其中,准确率曲线反映准确率和置信度阈值之间的关系,召回率曲线反映召回率与置信度阈值之间的关系;响应于用户对至少一个类别的置信度阈值的修改操作,更新针对至少一个类别的置信度阈值。
在一些实施例中,该方法还包括:基于验证测试结果或者离线测试结果,根据准确率或召回率,确定针对各个类别的推荐置信度阈值;基于推荐置信度阈值,更新针对至少一个类别的置信度阈值;响应于用户对置信度阈值的查看操作,生成置信度阈值展示界面。
在一些实施例中,该方法还包括:基于离线测试结果,生成离线测试指标展示界面,离线测试指标展示界面用于展示以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布;响应于用户对至少一个类别的置信度阈值的修改操作,更新针对至少一个类别的置信度阈值。
在一些实施例中,该方法还包括:基于离线测试结果,生成错误结果展示界面,错误结果展示界面用于展示模型输出类别与真实类别不一致的数据。
在一些实施例中,该方法还包括:响应于置信度阈值被更新,基于离线测试结果,生成指标展示界面,指标展示界面用于展示以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布。
在一些实施例中,离线测试参数配置界面包括数据集选择选项,并且其中,根据配置输入,获取离线测试数据集包括:响应于用户通过数据集选择执行的选择操作,基于与选择操作对应的样本数据集,获取离线测试数据集。
在一些实施例中,离线测试参数配置界面包括数据集上传选项,并且其中,根据配置输入,获取离线测试数据集还包括:响应于用户通过数据集上传选项执行的上传操作,接收输入样本数据集;基于输入样本数据集,获取离线测试数据集。
在一些实施例中,该方法还包括:响应于用户针对目标模型的在线测试任务建立操作,生成在线测试参数配置界面;根据用户在在线测试参数配置界面的配置输入,建立在线测试任务;基于配置输入,获取在线测试数据集,在线测试数据集包括未被标注类别的多个图像;利用在线测试数据集测试目标模型,生成在线测试指标,在线测试指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布;以及以下两项中的一项:响应于在线测试指标满足预设标准,呈现上线目标模型的选项;以及响应于在线测试指标中的至少部分指标高于相关在线模型的对应测试指标,呈现上线目标模型的选项,其中,对应测试指标是基于相关在线模型针对在线测试数据集的输出结果得到的。
在一些实施例中,在线测试参数配置界面包括新模型上线选项,并且基于配置输入,获取在线测试数据集包括:响应于用户对新模型上线选项的选择操作,与图像获取装置建立通讯连接,其中,图像获取装置被配置为获取待检图像;经由通讯连接,接收来自图像获取装置的待检图像;基于所接收的待检图像,获取在线测试数据集。
在一些实施例中,在线测试参数配置界面包括模型更新选项,并且基于配置输入,获取在线测试数据集包括:响应于用户对模型更新选项的选择操作,基于相关在线模型所接收的图像,获取在线测试数据集,其中,相关在线模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
在一些实施例中,该方法还包括:响应于用户选择上线目标模型的操作,生成上线审核界面;响应于用户针对上线审核的确认操作,上线目标模型,使得目标模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
在一些实施例中,该方法还包括:响应于用户针对已上线的目标模型的监控任务建立操作,生成监控任务参数配置界面;根据用户在监控任务参数配置界面的配置输入,建立监控任务;根据配置输入,基于来自图像获取装置的待检图像,获取在线抽查数据;接收针对在线抽查数据的人工复核结果,人工复核结果包括人工复核得到的待检图像的类别;基于人工复核结果和目标模型预测得到的类别,生成在线抽查指标,在线抽查指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。
根据本公开的又一方面,提供了一种确定图像类别的系统,包括:数据管理模块,被配置为用于存储并管理样本数据;训练和测试管理模块,被配置为用于执行如前述方面的各种实施例描述的确定目标模型的方法或确定图像类别的方法;模型管理模块,被配置为存储、展示并管理目标模型。
根据本公开的又一方面,提供了一种计算设备,包括:存储器,其被配置成存储计算机可执行指令;处理器,其被配置成当计算机可执行指令被处理器执行时执行根据前述方面的各种实施例描述的方法。
根据本公开的又一方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,当计算机可执行指令被执行时,执行根据前述方面的各种实施例描述的方法。
根据本公开的又一方面,提供了一种计算机程序产品,包括计算机指令,计算机指令在被处理器执行时实现根据前述方面的各种实施例描述的方法的步骤。
附图说明
现在将更详细并且参考附图来描述本公开的实施例,其中:
图1示出了可以应用本公开实施例的技术方案的示例性应用环境的系统架构的示意图;
图2图示了可以应用本公开实施例的一种计算设备的示意图;
图3图示了根据本公开的一个实施例的确定图像类别的方法的示意性流程图;
图4图示了根据本公开的一个实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法的示例性流程图;
图5示出了根据本公开的实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法的示例性实现流程图;
图6图示了根据本公开的一个实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法的示例性流程图;
图7示出了根据本公开的实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法的示例性实现流程图;
图8图示了根据本公开的一个实施例的确定置信度阈值的方法的示意性流程图;
图9图示了根据本公开的另一个实施例的确定置信度阈值的方法的示意性流程图;
图10图示了根据本公开的另一个实施例的图形界面,用户可在所述图形界面上对样本数据集的参数进行配置;
图11图示了根据本公开的一个实施例的一种示例性的参数配置界面;
图12图示了根据本公开的一个实施例的一种置信度阈值展示界面,其中直观展示出了各个类别的置信度阈值;
图13图示了根据本公开的一个实施例的一种训练进度表的展示界面;
图14图示了根据本公开的一个实施例的一种确定图像类别的装置的示例性结构框图;
图15图示了根据本公开的一个实施例的一种确定置信度阈值的装置的示例性结构框图;
图16图示了根据本公开的一个实施例的一种确定置信度阈值的装置的示例性结构框图;
图17图示了根据本公开的一个实施例的一种确定目标模型的方法的示意性流程图;
图18图示了根据本公开的一个实施例的一种离线测试方案的示意性流程图;
图19图示了根据本公开的一个实施例的一种在线测试方案的示意性流程图;
图20图示了根据本公开的一个实施例的一种审核方案的示意性流程图;
图21图示了根据本公开的一个实施例的一种在线复核方案的示意性流程图;
图22图示了根据本公开的一个实施例的训练并评测图像分类模型的方案的示意性流程图;
图23图示了根据本公开的一个实施例的确定图像类别的方法的示意性流程图;
图24图示了根据本公开的一个实施例的确定目标模型的方法的示意性流程图;
图25A和25B图示了根据本公开的一个实施例的指标展示界面的示意图;
图26图示了根据本公开的一个实施例的置信度阈值展示界面的示意图;
图27图示了根据本公开的一个实施例的离线测试任务创建界面的示意图;
图28图示了根据本公开的一个实施例的曲线展示界面的示意图;
图29图示了根据本公开的一个实施例的置信度阈值设置界面的示意图;
图30图示了根据本公开的一个实施例的结果分布界面的示意图;
图31图示了根据本公开的一个实施例的置信度分布界面的示意图;
图32图示了根据本公开的一个实施例的混淆矩阵展示界面的示意图;
图33图示了根据本公开的一个实施例的错误结果展示界面的示意图;
图34A和34B图示了根据本公开的一个实施例的在线测试任务创建界面的示意图;
图35图示了根据本公开的一个实施例的审核界面的示意图;
图36图示了根据本公开的一个实施例的在线模型管理界面的示意图;
图37图示了根据本公开的一个实施例的模型监控任务界面的示意图;
图38图示了根据本公开的一个实施例的监控任务创建界面的示意图;
图39图示了根据本公开的一个实施例的确定目标模型的装置的示例性结构框图;
图40图示了根据本公开的一个实施例的确定图像类别的装置的示例性结构框图;
图41图示了根据本公开的一个实施例的确定目标模型的装置的示例性结构框图;
图42图示了根据本公开的一个实施例的确定图像类别的系统的示例性框图。
具体实施方式
下面的描述提供了本公开的各种实施例的特定细节,以便本领域的技术人员能够充分理解和实施本公开的各种实施例。应当理解,本公开的技术方案可以在没有这些细节中的一些细节的情况下被实施。在某些情况下,本公开并没有示出或详细描述一些熟知的结构或功能,以避免这些不必要的描述使对本公开的实施例的描述模糊不清。在本公开中使用的术语应当以其最宽泛的合理方式来理解,即使其是结合本公开的特定实施例被使用的。
图1示出了可以应用本公开实施例的确定图像类别的方法、确定置信度阈值的方法以及确定目标模型的方法的示例性应用环境的系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是各种具有计算或处理功能的计算设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
本公开实施例所提供的方法(包括确定图像类别的方法、确定置信度阈值的方法、以及确定目标模型的方法中的一个或全部)一般由终端设备101、102、103执行。相应地,本公开实施例所提供的确定图像类别的装置、确定置信度阈值的装置以及确定目标模型的装置也可以(例如,作为计算机应用或产品)实施在终端设备101、102、103中。但本领域技术人员容易理解的是,本公开实施例所提供的方法也可以由服务器105执行,也可以由终端设备101、102、103和服务器105联合执行,本示例性实施例中对此不做特殊限定。举例而言,在一种示例性实施例中,可以是用户通过终端设备101、102、103获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像,然后将样本数据集上传至服务器105。服务器将所述样本数据集划分为训练数据集和验证数据集,利用训练数据集对深度学习模型进行训练以得到图像分类模型,利用所述验证数据集确定图像分类模型在预测各个类别时的置信度阈值。然后,用户通过终端设备101、102、103获目标图像,然后将目标图像传送到服务器105。服务器基于所确定的置信度阈值并利用所述图像分类模型对用户目标图像进行预测,以得到目标图像的类别,然后将目标图像的类别传输给终端设备101、102、103等;或者,服务器对样本数据集进行划分,得到训练数据集和验证数据集,利用训练数据集对深度学习模型进行训练以得到至少两个经训练的模型,利用所述验证数据集生成包括混淆矩阵、准确率、召回率和F1分数中的至少一个的验证测试指标,并根据所生成的验证测试指标在至少两个经训练的模型中确定目标模型。然后,用户通过终端设备101、102、103获取目标对象的待检图像,然后将目标对象的待检图像传送到服务器105。服务器利用所确定的目标模型对目标对象的待检图像进行预测,以得到待检图像的类别,然后将待检图像的类别传输给终端设备101、102、103等。
本公开的示例性实施方式提供一种用于实现上述方法的计算设备,其可以是图1中的终端设备101、102、103或服务器105。该计算设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行上述方法。
在本公开的一种示例实施方式中,上述系统架构可以是分布式系统,可以是一组计算机,通过网络相互连接传递消息与通信后并协调它们的行为而形成的系统。网络可以是基于互联网和/或电信网的物联网(Internet of Things),其可以是有线网也可以是无线网,例如,其可以是局域网(LAN)、城域网(MAN)、广域网(WAN)、蜂窝数据通信网络等能实现信息交换功能的电子网络。分布式系统可以具有软件组件,诸如软件对象或其他类型的个体可寻址的孤立实体,诸如分布式对象、代理、动作方(actor)、虚拟组件等。通常,每个这样的组件个体可寻址,并且在分布式系统中具有唯一的身份(诸如整数、GUID、字符串或不透明数据结构等)。在允许地理分布的分布式系统中,应用可以通过部署而被驻留在一个集群中。存在支持分布式计算环境的各种系统、组件和网络配置。
分布式系统通过计算设备和系统之间的通信交换提供计算机资源和服务的共享。这些资源和服务包括针对对象(例如文件)的信息交换、高速缓存存储装置和磁盘存储装置。这些资源和服务还包括跨多个处理单元的处理能力的共享,用于负载平衡、资源扩展、处理的专业化等。例如,分布式系统可以包括具有诸如客户端设备/服务器、对等或混合架构的网络拓扑和网络基础设施的主机。
下面以图2中的移动终端200为例,对计算设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图2中的构造也能够应用于固定类型的设备。在另一些实施方式中,移动终端200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。各部件间的接口连接关系只是示意性示出,并不构成对移动终端200的结构限定。在另一些实施方式中,移动终端200也可以采用与图2不同的接口连接方式,或多种接口连接方式的组合。
如图2所示,移动终端200具体可以包括:处理器210、内部存储器221、外部存储器接口222、通用串行总线(Universal Serial Bus,USB)接口230、充电管理模块240、电源管理模块241、电池242、天线1、天线2、移动通信模块250、无线通信模块260、音频模块270、扬声器271、受话器272、麦克风273、耳机接口274、传感器模块280、显示屏290、摄像模组291、指示器292、马达293、按键294以及用户标识模块(subscriber identification module,SIM)卡接口295等。其中传感器模块280可以包括深度传感器2801、压力传感器2802、陀螺仪传感器2803等。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(Application Processor,AP)、调制解调处理器、图形处理器(Graphics ProcessingUnit,GPU)、图像信号处理器(Image Signal Processor,ISP)、控制器、视频编解码器、数字信号处理器(Digital Signal Processor,DSP)、基带处理器和/或神经网络处理器(Neural-Network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
NPU为神经网络(Neural-Network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现移动终端200的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
处理器210中设置有存储器。存储器可以存储用于实现六个模块化功能的指令:检测指令、连接指令、信息管理指令、分析指令、数据传输指令和通知指令,并由处理器210来控制执行。
充电管理模块240用于从充电器接收充电输入。电源管理模块241用于连接电池242、充电管理模块240与处理器210。电源管理模块241接收电池242和/或充电管理模块240的输入,为处理器210、内部存储器221、显示屏290、摄像模组291和无线通信模块260等供电。
移动终端200的无线通信功能可以通过天线1、天线2、移动通信模块250、无线通信模块260、调制解调处理器以及基带处理器等实现。其中,天线1和天线2用于发射和接收电磁波信号;移动通信模块250可以提供应用在移动终端200上的包括2G/3G/4G/5G等无线通信的解决方案;调制解调处理器可以包括调制器和解调器;无线通信模块260可以提供应用在移动终端200上的包括无线局域网(Wireless Local Area Networks,WLAN) (如无线保真(Wireless Fidelity,Wi-Fi)网络)、蓝牙(Bluetooth,BT)等无线通信的解决方案。在一些实施例中,移动终端200的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得移动终端200可以通过无线通信技术与网络以及其他设备通信。
移动终端200通过GPU、显示屏290及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏290和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
移动终端200可以通过ISP、摄像模组291、视频编解码器、GPU、显示屏290及应用处理器等实现拍摄功能。其中,ISP用于处理摄像模组291反馈的数据;摄像模组291用于捕获静态图像或视频;数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号;视频编解码器用于对数字视频压缩或解压缩,移动终端200还可以支持一种或多种视频编解码器。
外部存储器接口222可以用于连接外部存储卡,例如Micro SD卡,实现扩展移动终端200的存储能力。外部存储卡通过外部存储器接口222与处理器210通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器221可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器221可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储移动终端200使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(Universal Flash Storage,UFS)等。处理器210通过运行存储在内部存储器221的指令和/或存储在设置于处理器中的存储器的指令,执行移动终端200的各种功能应用以及数据处理。
移动终端200可以通过音频模块270、扬声器271、受话器272、麦克风273、耳机接口274及应用处理器等实现音频功能。例如音乐播放、录音等。
深度传感器2801用于获取景物的深度信息。在一些实施例中,深度传感器可以设置于摄像模组291。
压力传感器2802用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器2802可以设置于显示屏290。压力传感器2802的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。
陀螺仪传感器2803可以用于确定移动终端200的运动姿态。在一些实施方式中,可以通过陀螺仪传感器2803确定移动终端200围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器2803可以用于拍摄防抖、导航、体感游戏场景等。
此外,还可以根据实际需要在传感器模块280中设置其他功能的传感器,例如气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等。
移动终端200中还可包括其它提供辅助功能的设备。例如,按键294包括开机键,音量键等,用户可以通过按键输入,产生与移动终端200的用户设置以及功能控制有关的键信号输入。再如,指示器292、马达293、SIM卡接口295等。
在相关技术中,在屏幕生产领域,由于设备、参数、操作、环境干扰等环节存在的问题,会使产出的产品产生不良,每段工艺后利用光学(AOI)检测后,都有较多数量的图像数据产生,需要专业的操作员对这些图像进行不良判级或者分类。随着以深度学习为代表的人工智能算法的兴起,将AI算法引入到此过程中,能够大幅提到处理效率和准确度。
图3图示了根据本公开的一个实施例的确定图像类别的方法300的示意性流程图。所述确定图像类别的方法例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图3所示,所述方法300包括如下步骤。
在步骤310,获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像。所述多个样本图像包括样本产品对应的图像,以及所述已被标注的类别为产品缺陷的类别。这里所述的产品例如可以是显示屏、显示面板等,被标注的类别可以指显示屏缺陷的类别,例如存在残留物、存在灰尘、电路线过细或者过粗等。
在步骤320,将所述样本数据集划分为训练数据集和验证数据集。所述训练数据集将被用来对深度学习模型进行训练,以得到图像分类模型。所述验证数据集将被用来确定在图像分类模型在预测各个类别时的置信度阈值。在一些实施例中,可以按照9:1的比例将所述样本数据集划分为训练数据集和验证数据集,即训练数据中包括所述样本数据集中90%的样本图像,验证数据集中包括所述样本数据集中10%的样本图像。当然,这样的划分比例不是必须的,可以根据需要采用其他比例的划分方式。通常,9:1的划分比例能够较好地在训练与确定置信度阈值之间做出平衡,使得训练的模型和确定的置信度阈值具有较好的使用效果。
在步骤330,利用训练数据集对深度学习模型进行训练,以得到图像分类模型。所述图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别和所输入图像的所输出的类别对应的置信度。
在一些实施例中,所述深度学习模型可以是卷积神经网络(CNN)模型、目标检测卷积神经网络(faster-RCNN)模型、循环神经网络(RNN)模型、生成式对抗网络(GAN)模型,但不限于此,也可以采用本领域技术人员熟知的其他神经网络模型。
在一些实施例中,可以事先配置对深度学习模型进行训练时的训练参数,所述训练参数至少包括训练针对的类别、深度学习模型的类型、训练总轮数、学习率下降策略及测试策略。所述训练参数还可以包括输入所述深度学习模型的图像的尺寸。
应当指出,在本文中,在提到图像分类模型输出图像的类别时,其指的是图像分类模型预测图像的类别。换句话说,图像分类模型的“输出”和“预测”可以被等同地使用,具有相同的含义。例如,图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别,还可以被表述为图像分类模型用于基于输入该图像分类模型的图像预测所输入图像的类别。
在步骤340,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率。准确率表示被正确输出相应类别的图像的数量与被输出为该相应类别的图像的数量的比值,召回率表示被正确输出相应类别的图像的数量与该相应类别的图像的真实数量的比值。
在实践中,为了使得所述图像分类模型在预测时达到特定的准确率或召回率,或者为了在准确率和召回率之间达到平衡以便分类模型的预测效率更高,有必要对分类模型在预测各个类别时的置信度阈值进行设置。在相关技术中,对于置信度设置,一般都采用“一刀切”的简单方式,即为所有训练的类别设置相同的置信度。在本公开的实施例,可以在利用训练数据集训练得到图像分类模型后,利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值,使得所述图像分类模型在预测时满足预设准确率或预设召回率。这样,能够实现对置信度阈值的快速计算,而且方便与训练过程集成在一起进行计算,使得直观上训完模型后即可得知各个类别的置信度阈值。并且,对于样本类别分布很不均衡的情况,通过从各个类别细分置信度阈值来控制各个类别的预测或分类准确率,有利于实现深度学习模型预测准确率和召回率之间的平衡。
应当指出,可以使用任何适合的方法来利用所述验证数据集确定图像分类模型在预测各个类别时的置信度阈值,使得所述图像分类模型在预测时满足预设准确率或预设召回率,这里不是限制性的。
在步骤350,将目标图像输入所述图像分类模型并基于所确定的置信度阈值,得到目标图像的类别。这里所述的目标图像与上面所述的样本图像是相同类型的图像。例如,所述目标图像同样是目标产品对应的图像。这里所述的目标产品例如可以是显示屏、显示面板等。目标图像的类别可以是显示屏缺陷的类别,例如存在残留物、存在灰尘、电路线过细或者过粗等。
在本公开的实施例所述的确定图像类别的方法中,将已标注的样本数据集划分为训练数据集和验证数据集,在利用训练数据集训练得到图像分类模型后,利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值,使得所述图像分类模型在预测时满足预设准确率或预设召回率。这样,能够实现对置信度阈值的快速计算,而且方便与训练过程集成在一起进行计算,使得直观上训完模型后即可得知各个类别的置信度阈值。并且,对于样本类别分布很不均衡的情况,本公开的技术方案可以通过各个类别细分置信度阈值来控制各个类别的预测或分类准确率,能够很好地处理深度学习模型对每种类别的识别情况,并且有利于实现深度学习模型预测准确率和召回率之间的平衡,提高对目标图像分类的效率。
图4图示了根据本公开的一个实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法400的示例性流程图。所述方法400例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图4所示,所述方法400包括如下步骤。
在步骤410,将所述验证数据集中的每个样本图像输入所述图像分类模型,以得到验证数据集中的每个样本图像的所输出的类别和对应的置信度。所述图像分类模型可以为上面在步骤330得到的图像分类模型,图像分类模型可以预测所输入图像的类别和所输入图像的预测的类别对应的置信度。
在步骤420,分别选择所输出的类别中的每个类别,并且将输出为被选择类别的样本图像按照对应的置信度从高到底排序。如前所述,准确率表示被正确预测相应类别的图像的数量与被预测为该相应类别的图像的数量的比值。因此,以这种方式,可以将预测为所选类别的样本图像按照对应的置信度从高到底排序,从而有利于考察图像分类模型的预测准确率。
在步骤430,在按照对应的置信度从高到底排序的所述被选择类别的样本图像中,确定目标样本图像,使得指定样本图像集中被正确输出类别的样本图像的数量和指定样本图像集中的样本图像的数量的比值小于所述预设准确率,其中所述被正确输出类别的样本图像包括输出的类别与被标注的类别相同的样本图像,所述指定样本图像集中的样本图像包括所述目标样本图像和所述输出为被选择类别的样本图像中对应置信度高于所述目标样本图像的置信度的样本图像。在一些实施例中,可以按照置信度从高到底的排序依次遍历预测为该被选择类别的样本图像,直到已遍历的样本图像中被正确预测类别的样本图像的数量和已遍历的样本图像的数量的比值小于所述预设准确率,其中所述被正确预测类别的样本图像包括预测的类别与被标注的类别相同的样本图像,所述已遍历的样本图像包括当前遍历的样本图像和在当前遍历之前被遍历的样本图像。作为示例,在已遍历的按照置信度从高到底的排序的1000个样本图像(所述1000个样本图像被预测为同一类别)中,有900个样本图像被正确预测类别(即,预测的类别与标注的类别相同),100个没有被正确预测,则已遍历的样本图像中被正确预测类别的样本图像的数量和已遍历的样本图像的数量的比值为0.9。通过该步骤可以找到不满足准确率指标时的临界的两个样本图像。预设准确率可以根据实际需要确定,其表示图像分类模型在预测时需要达到的准确率指标。作为示例,当前遍历为第五次遍历,则当前遍历之前的遍历为第一到四次的遍历,上一次遍历为第四次遍历。
在步骤440,基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值。例如,可以通过计算指定样本图像集中的的样本图像对应的置信度的加权和来确定该被选择类别对应的置信度阈值,也可以直接将按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定为该被选择类别对应的置信度阈值。这里加权和使用的权重可以按照需要设定。
在一些实施例中,可以基于目标样本图像对应的置信度和按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定该被选择类别对应的置信度阈值。例如,可以将目标样本图像对应的置信度和所述前一个样本图像对应的置信度的的加权和确定为该被选择类别对应的置信度阈值。具体地,将目标样本图像对应的置信度和所述前一个样本图像对应的置信度的平均值确定为该被选择类别对应的置信度阈值。
本公开的上述实施例提供了一种动态计算图像分类模型在预测各个类别时的置信度阈值的方法,可以在保证模型的预设准确率的前提下,最大化模型的召回率。
图5示出了根据本公开的实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法400的示例性实现流程图500。如图500所示,在上面所述的步骤420之后,即,在选择所预测的类别,并且将预测为被选择类别的样本图像按照对应的置信度从高到底排序之后,可以510处,初始化参数,使得已遍历图像数量total_nums=0,正确图像数量correct_nums=0,当前遍历的图像对应置信度curScore=1, 上一张图像对应置信度lastScore=1,预设准确率correctRate_metrix=0.95。
然后,按照置信度从高到底的排序依次遍历预测为该被选择类别的样本图像,并在520处判断样本图像的预测的类别与已标注的类别是否相同。如果相同,则在530处更新参数:正确图像数量correct_nums+=1, 已遍历图像数量total_nums+=1, lastScore=curScore,当前遍历的图像对应置信度curScore=当前遍历到的该张样本图像的置信度。如果不相同,在540处更新参数:已遍历图像数量total_nums+=1,lastScore= curScore,当前遍历的图像对应置信度curScore=当前遍历到的该张样本图像的置信度,但正确图像数量correct_nums不变。
然后,在550处,判断正确率是否大于预设准确率correctRate_metrix。正确率是正确图像数量correct_nums与已遍历图像数量total_nums的比值。为了避免分母为零,可以将正确率表示为correct_nums/(total_nums+0.0001)。若正确率>预设准确率correctRate_metrix,则继续遍历下一张图像。
若正确率<=预设准确率correctRate_metrix,则不再继续遍历下一张图像。然后,在560处,将将当前遍历的样本图像对应的置信度和上一次遍历的样本图像对应的置信度的平均值确定为该被选择类别对应的置信度阈值,即,置信度阈值Confidence_TH =(lastScore+curScore)/2。
然后,以类似的方式继续进行其余选择的类别的置信度的计算,直到所有类别都计算完成。
以上述方式,提供了一种简单高效地动态计算图像分类模型在预测各个类别时的置信度阈值的方法,可以在保证模型的预设准确率的前提下,最大化模型的召回率。根据上述动态计算得到的置信度阈值,大部分类别在产线推理时能符合要求。但是,针对有些类别可能得到的置信度阈值非常低(例如,低于0.5),这有可能会导致其他类别会被误判成该类别,从而导致该类别过判。所以,在这种情况,可以增加后处理,将得分低于0.5的置信度阈值,调整成0.5。
应当指出,在一些情况下,样本产品可能存在多个产品缺陷,因此样本产品对应的样本图像可能被标注有多个类别。在这种情况下,在一些实施例中,可以使所述多个类别具有不同的优先级,以便更重要的产品缺陷具有更高的优先级。同时,使得优先级更高的类别具有更低的置信度阈值,以便所述图像分类模型在输出时更好地满足预设准确率。当然,如果两个类别对应的置信度阈值相差比较大(例如,大于预设的差距阈值,例如0.5),则不再考虑两者的优先级。
图6图示了根据本公开的一个实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法600的示例性流程图。所述方法600例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图6所示,所述方法600包括如下步骤。
在步骤610,将所述验证数据集中的每个样本图像输入所述图像分类模型,以得到验证数据集中的每个样本图像的所输出的类别和对应的置信度。所述图像分类模型可以为上面在步骤330得到的图像分类模型,图像分类模型可以预测所输入图像的类别和所输入图像的预测的类别对应的置信度。
在步骤620,分别选择已标注的类别中的每个类别,并且将标注为被选择类别的样本图像按照对应的置信度从高到底排序。如前所述,召回率表示被正确预测相应类别的图像的数量与该相应类别的图像的真实数量的比值。在这里,该相应类别的图像的真实数量即为被标注为该相应类别的样本图像的数量。因此,以这种方式,可以将被标注为该相应类别的样本图像按照对应的置信度从高到底排序,从而有利于考察图像分类模型的召回率。
在步骤630,在按照对应的置信度从高到底排序的所述被选择类别的样本图像中,确定目标样本图像,使得指定样本图像集中被正确输出类别的样本图像的数量和指定样本图像集中的样本图像的数量的比值小于所述预设召回率,其中所述被正确输出类别的样本图像包括输出的类别与被标注的类别相同的样本图像,所述指定样本图像集中的样本图像包括所述目标样本图像和所述标注为被选择类别的样本图像中对应置信度高于所述目标样本图像的置信度的样本图像。在一些实施例中,可以按照置信度从高到底的排序依次遍历标注为该被选择类别的样本图像,直到已遍历的样本图像中被正确预测类别的样本图像的数量和已遍历的样本图像的数量的比值小于所述预设召回率,其中所述被正确预测类别的样本图像包括预测的类别与被标注的类别相同的样本图像,所述已遍历的样本图像包括当前遍历的样本图像和在当前遍历之前被遍历的样本图像。作为示例,在已遍历的按照置信度从高到底的排序的1000个样本图像(所述1000个样本图像被标注为同一类别)中,有900个样本图像被正确预测类别(即,预测的类别与标注的类别相同),100个没有被正确预测,则已遍历的样本图像中被正确预测类别的样本图像的数量和已遍历的样本图像的数量的比值为0.9。通过该步骤可以找到不满足预设召回率时的临界的两个样本图像。预设召回率可以根据实际需要确定,其表示图像分类模型在预测时需要达到的召回率指标。作为示例,当前遍历为第五次遍历,则当前遍历之前的遍历为第一到四次的遍历,上一次遍历为第四次遍历。
在步骤640,基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值。例如,可以通过计算指定样本图像集中的的样本图像对应的置信度的加权和来确定该被选择类别对应的置信度阈值,也可以直接将按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定为该被选择类别对应的置信度阈值。这里加权和使用的权重可以按照需要设定。
在一些实施例中,可以基于目标样本图像对应的置信度和按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定该被选择类别对应的置信度阈值。例如,可以将目标样本图像对应的置信度和所述前一个样本图像对应的置信度的的加权和确定为该被选择类别对应的置信度阈值。具体地,将目标样本图像对应的置信度和所述前一个样本图像对应的置信度的平均值确定为该被选择类别对应的置信度阈值。
本公开的上述实施例提供了一种动态计算图像分类模型在预测各个类别时的置信度阈值的方法,可以在保证模型的预设召回率的前提下,最大化模型的准确率。
图7示出了根据本公开的实施例的利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值的方法600的示例性实现流程图700。如图700所示,在上面所述的步骤620之后,即,在选择已标注的类别,并且且将标注为被选择类别的样本图像按照对应的置信度从高到底排序之后,可以在步骤710处,初始化参数,使得已遍历图像数量total_nums=0,召回的图像数量recall_nums=0, 当前遍历的图像对应置信度curScore=1, 上一张图像对应置信度lastScore=1,预设召回率recallRate_metrix=0.95。
然后,按照置信度从高到底的排序依次遍历标注为该被选择类别的样本图像,并在720处判断样本图像的预测的类别与已标注的类别是否相同。如果相同,则在730处更新参数:召回的图像数量recall_nums+=1, 已遍历图像数量total_nums+=1, lastScore=curScore,当前遍历的图像对应置信度curScore=当前遍历到的该张样本图像对应的置信度。如果不相同,在740处更新参数:已遍历图像数量total_nums+=1,lastScore=curScore,当前遍历的图像对应置信度curScore=当前遍历到的该张样本图像的置信度,但召回的图像数量recall_nums不变。
然后,在750处,判断当前召回率是否大于预设召回率recallRate_metrix。当前召回率是召回的图像数量recall_nums与已遍历图像数量total_nums的比值。为了避免分母为零,可以将当前召回率表示为recall_nums/(total_nums+0.0001)若召回率>预设召回率recallRate_metrix,则继续遍历下一张图像。
若当前召回率<=预设召回率recallRate_metrix,则不再继续遍历下一张图像。然后,在760处,将将当前遍历的样本图像对应的置信度和上一次遍历的样本图像对应的置信度的平均值确定为该被选择类别对应的置信度阈值,即,置信度阈值Confidence_TH =(lastScore+curScore)/2。
然后,以类似的方式继续进行其余选择的类别的置信度的计算,直到所有类别都计算完成。
以上述方式,提供了一种简单高效地动态计算图像分类模型在预测各个类别时的置信度阈值的方法,可以在保证模型的预设召回率的前提下,最大化模型的准确率。根据上述动态计算得到的置信度阈值,大部分类别在产线推理时能符合要求。但是,针对有些类别可能得到的置信度阈值非常低(例如,低于0.5),这有可能会导致其他类别会被误判成该类别,从而导致该类别过判。所以,在这种情况,可以增加后处理,将得分低于0.5的置信度阈值,调整成0.5。
应当指出,在一些情况下,样本产品可能存在多个产品缺陷,因此样本产品对应的样本图像可能被标注有多个类别。在这种情况下,在一些实施例中,可以使所述多个类别具有不同的优先级,以便更重要的产品缺陷具有更高的优先级。同时,使得优先级更高的类别具有更低的置信度阈值,以便所述图像分类模型在输出时更好地满足预设召回率。当然,如果两个类别对应的置信度阈值相差比较大(例如,大于预设的差距阈值,例如0.5),则不再考虑两者的优先级。
图8图示了根据本公开的一个实施例的确定置信度阈值的方法800的示意性流程图。所述确定置信度阈值的方法例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图8所示,所述方法800包括如下步骤。
在步骤810,获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像。所述多个样本图像包括样本产品对应的图像,以及所述已被标注的类别为产品缺陷的类别。这里所述的产品例如可以是显示屏、显示面板等,被标注的类别可以指显示屏缺陷的类别,例如存在残留物、存在灰尘、电路线过细或者过粗等。
在步骤820,将所述样本数据集划分为训练数据集和验证数据集。所述训练数据集将被用来对深度学习模型进行训练,以得到图像分类模型。所述验证数据集将被用来确定在图像分类模型在预测各个类别时的置信度阈值。在一些实施例中,可以按照9:1的比例将所述样本数据集划分为训练数据集和验证数据集,即训练数据中包括所述样本数据集中90%的样本图像,验证数据集中包括所述样本数据集中10%的样本图像。当然,这样的划分比例不是必须的,可以根据需要采用其他比例的划分方式。通常,9:1的划分比例能够较好地在训练与确定置信度阈值之间做出平衡,使得训练的模型和确定的置信度阈值具有较好的使用效果。
在步骤830,利用训练数据集对深度学习模型进行训练,以得到图像分类模型。所述图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别和所输入图像的所输出的类别对应的置信度。在一些实施例中,所述深度学习模型可以是卷积神经网络(CNN)模型、目标检测卷积神经网络(faster-RCNN)模型、循环神经网络(RNN)模型、生成式对抗网络(GAN)模型,但不限于此,也可以采用本领域技术人员熟知的其他神经网络模型。
在一些实施例中,可以事先配置对深度学习模型进行训练时的训练参数,所述训练参数至少包括训练针对的类别、深度学习模型的类型、训练总轮数、学习率下降策略及测试策略。所述训练参数还可以包括输入所述深度学习模型的图像的尺寸。
在步骤840,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率。准确率表示被正确输出相应类别的图像的数量与被输出为该相应类别的图像的数量的比值,召回率表示被正确输出相应类别的图像的数量与该相应类别的图像的真实数量的比值。应当指出,可以使用任何适合的方法来利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在预测时满足预设准确率或预设召回率,这里不是限制性的。
在本公开的实施例所述的确定置信度阈值的方法中,将已标注的样本数据集划分为训练数据集和验证数据集,在利用训练数据集训练得到图像分类模型后,利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值,使得所述图像分类模型在预测时满足预设准确率或预设召回率。这样,能够实现对置信度阈值的快速计算,而且方便与训练过程集成在一起进行计算,使得直观上训完模型后即可得知各个类别的置信度阈值。并且,对于样本类别分布很不均衡的情况,本公开的技术方案可以通过各个类别细分置信度阈值来控制各个类别的预测或分类准确率,能够很好地处理深度学习模型对每种类别的识别情况,并且有利于实现深度学习模型预测准确率和召回率之间的平衡,提高图像分类模型进行分类的效率。
应当理解,本实施例为关注于图像分类模型的确定置信度阈值的过程,而参照图3描述的实施例关注于图像分类模型的构建和使用过程。因此,上面参照图3-7描述的相关方案也适用于本实施例,具体的细节此处不再详述。
因此,在一些实施例中,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,包括:将所述验证数据集中的每个样本图像输入所述图像分类模型,以得到验证数据集中的每个样本图像的所输出的类别和对应的置信度;分别选择所输出的类别中的每个类别,并且将输出为被选择类别的样本图像按照对应的置信度从高到底排序;在按照对应的置信度从高到底排序的所述被选择类别的样本图像中,确定目标样本图像,使得指定样本图像集中被正确输出类别的样本图像的数量和指定样本图像集中的样本图像的数量的比值小于所述预设准确率,其中所述被正确输出类别的样本图像包括输出的类别与被标注的类别相同的样本图像,所述指定样本图像集中的样本图像包括所述目标样本图像和所述输出为被选择类别的样本图像中对应置信度高于所述目标样本图像的置信度的样本图像;基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值
在一些实施例中,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,包括:将所述验证数据集中的每个样本图像输入所述图像分类模型,以得到验证数据集中的每个样本图像的所输出的类别和对应的置信度;分别选择已标注的类别中的每个类别,并且将标注为被选择类别的样本图像按照对应的置信度从高到底排序;在按照对应的置信度从高到底排序的所述被选择类别的样本图像中,确定目标样本图像,使得指定样本图像集中被正确输出类别的样本图像的数量和指定样本图像集中的样本图像的数量的比值小于所述预设召回率,其中所述被正确输出类别的样本图像包括输出的类别与被标注的类别相同的样本图像,所述指定样本图像集中的样本图像包括所述目标样本图像和所述标注为被选择类别的样本图像中对应置信度高于所述目标样本图像的置信度的样本图像;基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值。
基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值,包括:基于目标样本图像对应的置信度和按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定该被选择类别对应的置信度阈值。
基于目标样本图像对应的置信度和按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定该被选择类别对应的置信度阈值,包括:将当前遍历的样本图像对应的置信度和所述前一个样本图像对应的置信度的平均值确定为该被选择类别对应的置信度阈值。
图9图示了根据本公开的一个实施例的确定置信度阈值的方法900的示意性流程图。所述确定置信度阈值的方法例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图9所示,所述方法900包括如下步骤。
在步骤910,响应用户对样本数据集的参数的配置操作,获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像。所述多个样本图像包括样本产品对应的图像,以及所述已被标注的类别为产品缺陷的类别。这里所述的产品例如可以是显示屏、显示面板等,被标注的类别可以指显示屏缺陷的类别,例如存在残留物、存在灰尘、电路线过细或者过粗等。
作为示例,用户可以在如图10所示的图形界面上对样本数据集的参数进行配置,所述参数例如可以包括训练类型(例如,图像分类)、选择的样本数据集(例如,L490A_6LBF_maincode)、样本数据集的版本号(例如V1)等等。
在步骤920,将所述样本数据集划分为训练数据集和验证数据集。所述训练数据集将被用来对深度学习模型进行训练,以得到图像分类模型。所述验证数据集将被用来确定在图像分类模型在预测各个类别时的置信度阈值。如图10所示,可以按照9:1的比例将所述样本数据集(包括10000个样本图像)划分为训练数据集和验证数据集,即训练数据中包括所述样本数据集中90%的样本图像(即,9000个样本图像),验证数据集中包括所述样本数据集中10%的样本图像(即,1000个样本图像)。
在步骤930,利用训练数据集对深度学习模型进行训练,以得到图像分类模型。所述图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别和所输入图像的所输出的类别对应的置信度。在一些实施例中,所述深度学习模型可以是卷积神经网络(CNN)模型、目标检测卷积神经网络(faster-RCNN)模型、循环神经网络(RNN)模型、生成式对抗网络(GAN)模型,但不限于此,也可以采用本领域技术人员熟知的其他神经网络模型。
在一些实施例中,可以事先配置对深度学习模型进行训练时的训练参数,所述训练参数至少包括训练针对的类别、深度学习模型的类型、训练总轮数、学习率下降策略及测试策略。所述训练参数还可以包括输入所述深度学习模型的图像的尺寸。
作为示例,可以响应于用户的任务建立操作,建立训练任务,并生成参数配置界面以用于配置对深度学习模型进行训练时的训练参数,所述训练参数至少包括训练针对的类别、深度学习模型的类型、训练总轮数、学习率下降策略及测试策略;然后根据所述训练参数并利用训练数据集对深度学习模型进行训练,以得到图像分类模型。
如图11所示,响应于用户的任务建立操作,建立训练任务,并生成参数配置界面,用户能够在上述参数配置界面配置对深度学习模型进行训练时的训练参数,其中,所述训练参数可以包括训练针对的类别、深度学习模型的类型、训练总轮数、学习率下降策略(例如,学习率下降轮数等)及测试策略(例如,测试轮数等),输入所述深度学习模型的图像的尺寸等。此外,训练参数可选地还可以包括一些自定义的参数,例如,部门、科室、站点、模型关键字等,这不是限制性的。然后用户点击配置完成后,根据所述训练参数并利用训练数据集对深度学习模型进行训练。
在以下实施例中,根据所述测试策略训练多个分类模型,并获取最大测试轮数所对应的分类模型作为所述图像分类模型。如图11中,训练策略中存在三个测试轮数(120000, 150000以及200000),则可以获取最大测试轮数(200000)所对应的分类模型作为所述图像分类模型。
在一些实施例中,所述训练总轮数与所述样本数据集中样本图像的数量正相关。举例而言,若样本图像的数量小于等于10000,则将训练总轮数配置为300000;若样本图像的数量大于10000,则采用如下总轮数确定公式配置训练总轮数;其中总轮数确定公式为:
其中,Y表示训练总轮数,X表示样本图像的数量,X大于等于10000,INT为取整函数,b表示增长因子,为固定值,b大于等于30000且小于等于70000。在本示例实时方式中b的取值可以是50000,也可以是60000,在本示例实施方式中不做具体限定。
在步骤940,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率。准确率表示被正确输出相应类别的图像的数量与被输出为该相应类别的图像的数量的比值,召回率表示被正确输出相应类别的图像的数量与该相应类别的图像的真实数量的比值。应当指出,可以使用任何适合的方法来利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率,这里不是限制性的。
在步骤950,生成置信度展示界面,以用于展示图像分类模型在输出各个类别时的置信度阈值。如图12所示,可以生成置信度阈值展示界面,其中直观展示出了各个类别的置信度阈值,有利于用户获取和校正该置信度阈值。
在本公开的实施例所述的确定置信度阈值的方法中,将已标注的样本数据集划分为训练数据集和验证数据集,在利用训练数据集训练得到图像分类模型后,利用验证数据集确定图像分类模型在预测各个类别时的置信度阈值,使得所述图像分类模型在预测时满足预设准确率或预设召回率。这样,能够实现对置信度阈值的快速计算,而且方便与训练过程集成在一起进行计算,使得直观上训完模型后即可得知各个类别的置信度阈值。并且,对于样本类别分布很不均衡的情况,本公开的技术方案可以通过各个类别细分置信度阈值来控制各个类别的预测或分类准确率,能够很好地处理深度学习模型对每种类别的识别情况,并且有利于实现深度学习模型预测准确率和召回率之间的平衡,提高图像分类模型进行分类的效率。
在一些实施例中,在训练过程中,可以生成并展示训练进度表,所述训练进度表包括任务取消标识和任务详情标识,如图13所示。在用户对所述任务取消标识的触发操作后,可以停止对所述深度学习模型的训练,有利于用户对训练过程的控制。在用户对所述任务详情标识的触发操作后,生成并展示训练过程的损失曲线;然后可以根据所述损失曲线更新所述训练参数。损失曲线通常是具有二维坐标的曲线,横坐标为训练轮数,纵坐标为损失值,在模型训练过程中,该损失曲线根据训练中的状态进行实时更新,可以对损失曲线进行观察,然后根据曲线状态进行训练参数的调整。具体的,如果损失曲线始终杂乱无章,未随着横坐标增大呈现下降趋势,则说明训练参数配置不合适,应该停止训练,重新配置参数以便重新训练;如果损失曲线下降较慢,则应持续观察,停止训练或在下次训练时增大学习率。如果损失曲线在训练完成后,仍呈现下降趋势(正常应为最终趋于平滑),则在训练完成后,应增大训练总轮数,进行重新训练。
应当理解,本实施例为关注于图像分类模型的构建过程,而参照图3描述的实施例关注于图像分类模型的构建和使用过程。因此,上面参照图3-7描述的相关方案也适用于本实施例,具体的细节此处不再详述。
例如,在一些实施例中,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,包括:将所述验证数据集中的每个样本图像输入所述图像分类模型,以得到验证数据集中的每个样本图像的所输出的类别和对应的置信度;分别选择所输出的类别中的每个类别,并且将输出为被选择类别的样本图像按照对应的置信度从高到底排序;在按照对应的置信度从高到底排序的所述被选择类别的样本图像中,确定目标样本图像,使得指定样本图像集中被正确输出类别的样本图像的数量和指定样本图像集中的样本图像的数量的比值小于所述预设准确率,其中所述被正确输出类别的样本图像包括输出的类别与被标注的类别相同的样本图像,所述指定样本图像集中的样本图像包括所述目标样本图像和所述输出为被选择类别的样本图像中对应置信度高于所述目标样本图像的置信度的样本图像;基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值。
在一些实施例中,利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,包括:
将所述验证数据集中的每个样本图像输入所述图像分类模型,以得到验证数据集中的每个样本图像的所输出的类别和对应的置信度;分别选择已标注的类别中的每个类别,并且将标注为被选择类别的样本图像按照对应的置信度从高到底排序;在按照对应的置信度从高到底排序的所述被选择类别的样本图像中,确定目标样本图像,使得指定样本图像集中被正确输出类别的样本图像的数量和指定样本图像集中的样本图像的数量的比值小于所述预设召回率,其中所述被正确输出类别的样本图像包括输出的类别与被标注的类别相同的样本图像,所述指定样本图像集中的样本图像包括所述目标样本图像和所述标注为被选择类别的样本图像中对应置信度高于所述目标样本图像的置信度的样本图像;基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值。
基于指定样本图像集中的样本图像对应的置信度确定该被选择类别对应的置信度阈值,包括:基于目标样本图像对应的置信度和按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定该被选择类别对应的置信度阈值。
基于目标样本图像对应的置信度和按照对应的置信度从高到底排序的所述被选择类别的样本图像中目标样本图像的前一个样本图像对应的置信度确定该被选择类别对应的置信度阈值,包括:将当前遍历的样本图像对应的置信度和所述前一个样本图像对应的置信度的平均值确定为该被选择类别对应的置信度阈值。
图14图示了根据本公开的一个实施例的一种确定图像类别的装置1400的示例性结构框图。如图14所示,所述确定图像类别的装置1400包括获取模块1410、划分模块1420、训练模块1430、确定模块1440、输出模块1450。
获取模块1410被配置成获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像。划分模块1420被配置成将所述样本数据集划分为训练数据集和验证数据集。训练模块1430被配置成利用训练数据集对深度学习模型进行训练,以得到图像分类模型,所述图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别和所输入图像的所输出的类别对应的置信度。确定模块1440被配置成利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率,其中,准确率表示被正确输出相应类别的图像的数量与被输出为该相应类别的图像的数量的比值,召回率表示被正确输出相应类别的图像的数量与该相应类别的图像的真实数量的比值。输出模块1450被配置成将目标图像输入所述图像分类模型并基于所确定的置信度阈值,得到目标图像的类别。
图15图示了根据本公开的一个实施例的一种确定置信度阈值的装置1500的示例性结构框图。如图15所示,所述确定置信度阈值的装置1500包括获取模块1510、划分模块1520、训练模块1530、确定模块1540。
获取模块1510被配置成获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像。划分模块1520被配置成将所述样本数据集划分为训练数据集和验证数据集。训练模块1530被配置成利用训练数据集对深度学习模型进行训练,以得到图像分类模型,所述图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别和所输入图像的所输出的类别对应的置信度。确定模块1540被配置成利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率,其中,准确率表示被正确输出相应类别的图像的数量与被输出为该相应类别的图像的数量的比值,召回率表示被正确输出相应类别的图像的数量与该相应类别的图像的真实数量的比值。
图16图示了根据本公开的一个实施例的一种确定置信度阈值的装置1600的示例性结构框图。如图16所示,所述确定置信度阈值的装置1600包括获取模块1610、划分模块1620、训练模块1630、确定模块1640、生成模块1650。
获取模块1610被配置成获取样本数据集,所述样本数据集包括已被标注类别的多个样本图像。划分模块1620被配置成将所述样本数据集划分为训练数据集和验证数据集。训练模块1630被配置成利用训练数据集对深度学习模型进行训练,以得到图像分类模型,所述图像分类模型用于基于输入该图像分类模型的图像输出所输入图像的类别和所输入图像的所输出的类别对应的置信度。确定模块1640被配置成利用所述验证数据集确定图像分类模型在输出各个类别时的置信度阈值,使得所述图像分类模型在输出时满足预设准确率或预设召回率,其中,准确率表示被正确输出相应类别的图像的数量与被输出为该相应类别的图像的数量的比值,召回率表示被正确输出相应类别的图像的数量与该相应类别的图像的真实数量的比值。生成模块1650被配置成生成置信度展示界面,以用于展示图像分类模型在输出各个类别时的置信度阈值。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
此外,通过分析相关技术,申请人发现,现有的基于深度学习的产品缺陷检测方案一般分为以下两类。在第一类方案中,当算法人员将模型训练好之后,嵌入系统软件中直接部署上线。这类软件的算法通用性较差,当所获取的图像由于生产工艺或产品型号的变化而发生变化时,算法精度往往会显著变差,进而导致产品缺陷检测系统的检测效果变差。由于这类方案的开发、部署过程较为简单,因此在相关技术中被广泛使用。在第二类方案中,可以提供模型训练功能。具体而言,当生产工艺或产品型号发生变化时,或者根据其他具体需求,可以由运维人员或其他管理人员实施简单的样本数据收集和模型训练,并将训练后的模型部署上线。这类方案目前较少使用。相较于第一类方案,第二类方案有助于缓解因产品工艺或产品型号等的变化导致的模型效果变化,然而,在这类方案中,训练后的模型往往在简单测试后即被部署上线,往往会存在在线效果与离线效果不一致的风险。
图17图示了根据本公开的一个实施例的确定目标模型的方法1700的示意性流程图。确定目标模型的方法1700例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图17所示,方法1700包括如下步骤。
在步骤1710,获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像。示例性地,样本图像可以为目标对象的图像。进一步示例性地,目标对象可以为目标产品,类别可以为目标产品的产品缺陷类别。类似前文所提到的,这里的目标产品例如可以是显示屏、显示面板等,被标注的类别可以指显示屏缺陷的类别,例如存在残留物、存在灰尘、电路线过细或者过粗等。
示例性地,训练数据集和验证数据集可以是分别获取的,或者可以是对样本数据集进行划分得到的。训练数据集可以被用来对深度学习模型进行训练,以得到经训练的模型。验证数据集可以被用来验证深度学习模型的训练效果,例如,可以在训练过程中基于验证数据集生成Loss(损失)曲线,即损失函数值的变化曲线,以判断模型训练效果,并帮助判断何时停止训练。在一些实施例中,训练数据集和验证数据集所包括的样本图片的数量可以符合根据预设比例。例如,训练数据集和验证数据集的比例可以为9:1、8:1、8:2等。示例性地,除了训练数据集和验证数据集外,样本数据集还可以包括其他数据集。进一步示例性地,可以先将样本数据集划分为训练集和其他数据集,再在训练过程中将训练集划分为前述训练数据集和验证数据集。
在步骤1720,利用训练数据集对深度学习模型进行训练,根据不同训练轮数,得到至少两个经训练的模型。示例性地,经训练的模型可以是前文实施例中提到的图像分类模型,其可以用于基于输入图像预测类别,并得到与该类别对应的置信度。
在一些实施例中,深度学习模型可以是卷积神经网络(CNN)模型、目标检测卷积神经网络(faster-RCNN)模型、循环神经网络(RNN)模型、生成式对抗网络(GAN)模型、自注意力(self-attention)模型,但不限于此,也可以采用本领域技术人员熟知的其他神经网络模型。
在一些实施例中,可以事先配置对深度学习模型进行训练时的训练参数,训练参数至少包括测试策略。例如,可以在训练参数中指定两个或更多个训练轮数,使得具有相应训练轮数的经训练的模型可以被保存,作为备选模型,以便在后续测试过程中可以在这些备选模型中选取更优的模型作为目标模型。示例性地,可以由执行模型训练的人员根据经验直接指定训练轮数,或者,可以基于某些参数间接指定欲保存的模型训练轮数,例如基于学习率的下降情况等。比如,假设认为在第二次学习率下降时模型效果更好,则可以在第二次学习率下降的轮数附近选取若干个训练轮数。应理解,也可以根据实际需求根据其他指标来指定欲保存的模型训练轮数。随后,在根据上述训练参数对深度学习模型进行训练时,可以根据测试策略,将达到训练轮数达到测试时轮数的模型输出以备测试。
示例性地,上述测试策略可以包括测试次数和测试时的轮数,除测试策略外,训练参数还可以包括学习率下降策略、训练总轮数等。以及,示例性地,根据样本数据集的特征信息配置训练参数可以指根据特征信息中的样本数量配置学习率下降策略、训练总轮数和测试策略等。
具体而言,上述训练总轮数与上述样本数量可以是正相关的。举例而言,若样本数量小于等于10000,则可以将训练总轮数配置为300000;若样本数量大于10000,则可以采用如下总轮数确定公式配置训练总轮数。总轮数确定公式为:
其中,Y表示训练总轮数,X表示样本数量,X大于等于10000,INT为取整函数,b表示增长因子,为固定值,b大于等于30000且小于等于70000。在本示例实时方式中b的取值可以是50000,也可以是60000,在本示例实施方式中不做具体限定。在本示例实施方式中,上述样本数量与训练总轮数之间的映射关系,可以是经过多次试验得到的最优结果,也可以根据用户需求进行自定义,在本示例实施方式中不做具体限定。
在本示例实施方式中,学习率下降时的轮数与训练总轮数正相关,其中,测试时的轮数大于等于第一次学习率下降时的轮数且小于等于训练组总轮数,学习率下降次数为多次,在第二次学习率下降轮数的预设轮数范围内进行至少两次测试,可以进行两次、三次或者更多次的测试,在本示例实施方式中不做具体限定。在训练时可以进行多次学习率下降、并在多次下降后选取结果最优的下降次数,从而能够提高得到的目标模型的精度,进而提升对缺陷检测的精度;进一步的,在训练过程中,可以针对不同训练轮数的模型进行多次测试,选择测试结果最优时的模型作为目标模型,这进而有助于提升模型性能。
在本示例实施方式中,上述学习率下降方式可以是分段常数衰减、指数衰减、自然指数衰减、余弦衰减等,在本示例实施方式中不做具体限定,其中,上述学习率下降幅度与上述学习率的下降方式有关,也与配置的上述学习率下降方式中的各个参数有关,或者也可以直接配置为例如0.1、0.05等常数,在本示例实施方式中不做具体限定。
在本公开的一种示例实施方式中,上述特征信息还可以包括样本数据集中的图片的尺寸、种类等,则根据上述特征信息配置训练参数还可以包括根据图片的尺寸、种类等来配置训练参数,例如配置输入待训练的深度学习模型的输入图像的尺寸等。具体而言,若图片的种类为AOI彩图或DM图像,则输入图像的尺寸可以为图片尺寸的第一预设倍数;若所述据缺陷产品的图片的种类为TDI图像,则输入图像的尺寸可以为图片尺寸的第二预设倍数;其中,第一预设倍数小于等于1,第二预设倍数大于等于1。
在本公开的一种示例实施方式中,在上文提到的涉及产品缺陷的示例场景中,特征信息还可以包括缺陷产品的缺陷等级以及各种缺陷对应的样本数量,训练参数还可以包括置信度,其中,可以根据各种缺陷对应的样本数量和缺陷等级配置训练过程中的置信度。具体而言,可以首先设定一预设数量,判断上述各种缺陷对应的样本数量与预设数量的大小关系,若某缺陷对应的样本数量大于预设数量,则可以根据该缺陷的缺陷等级配置置信度。其示例性地,缺陷等级可以包括第一缺陷等级和第二缺陷等级,若上述缺陷的缺陷等级为第一缺陷等级,则将其对应的置信度配置为第一置信度;若上述缺陷的缺陷等级为第二缺陷等级,则将其对应的置信度配置为第二置信度,其中上述第二置信度可以大于上述第一置信度。进一步示例性地,上述预设数量可以是50、100等,也可以更根据用户需求进行自定义,在本示例实施方式中不做具体限定。其中第一置信度大于等于0.6且小于等于0.7;所述第二置信度大于等于0.8且小于等于0.9;上述第一置信度和第二置信度的具体的值可以根据用户的需求进行自定义,在本示例实施方式中不做具体限定。
举例而言,对发生率很高,且重要程度较低的缺陷,即缺陷等级较低的缺陷,可以配置较低的置信度,例如:对于无缺陷图PI820和轻微缺陷的PI800,置信度设为0.6,即该图在PI800或PI820的概率得分超过0.6,即判定为该缺陷。而对发生率较低,但是重要程度很高的缺陷,即缺陷等级较高的缺陷,可以配置较高的置信度,例如:对于严重缺陷的GT011、SD011,置信度默认设置为0.85,即该图在GT011或SD011的概率得分超过0.6,才判定为该缺陷。而对于其余置信度较低的图,均判为unknow(AI未识别),交由人工处理,以防止漏判。
在步骤1730,利用验证数据集测试在步骤1720得到的至少两个经训练的模型,生成验证测试结果。验证测试结果可以包括模型输出的类别和相应类别的置信度。可以依次将验证数据集中的图像输入至每个经训练的模型,并保存模型输出的类别和相应的置信度。
在步骤1740,基于验证测试结果,生成验证测试指标,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数。准确率表示被正确预测相应类别的图像的数量与被预测为该相应类别的图像的数量的比值,召回率表示被正确预测相应类别的图像的数量与该相应类别的图像的真实数量的比值,F1分数可以视为准确率和召回率的调和平均数,即(2*准确率*召回率)/(准确率+召回率)。假设模型存在n个预测类别,则混淆矩阵可以为n*n的矩阵,矩阵的每一列代表模型预测的类别,每一列的总数表示预测为该类别的图片的数目;每一行代表图片的真实类别,即标签中的类别,每一行的总数表示该类别的图片的真实数目。此外,混淆矩阵还可以包括unknown(未知)列,该列可以包括模型未预测出类别的图片的数目。可以基于验证测试结果中的类别及类别的置信度和验证数据集中的图片标签中的类别来生成上述验证测试指标中的一个或多个。
在步骤1750,根据在步骤1740生成的验证测试指标,在前述至少两个经训练的模型中确定目标模型。示例性地,可以向用户展示上述验证测试指标,用户可以参考这些验证测试指标,根据实际应用需求在至少两个经训练的模型中选取一个模型作为目标模型;或者,可以根据预设选取机制,基于这些验证测试指标,自动地在至少两个经训练的模型中选取一个模型作为目标模型。应理解,在本公开的各种实施例中,类似步骤1750的表述均应做类似理解。换言之,在本公开中,若无相反描述,类似“根据……,更新/确定……”的表述均应被理解为可以由系统自动根据某一个或多个指标、曲线等来执行更新、确定等动作,或者也可以由系统向用户呈现某一个或多个指标、曲线等并响应于接收到用户输入而执行更新、确定等动作。
如本领域技术人员将理解的,在深度学习模型的训练过程中,准确度指标是非常重要的。然而,申请人发现,针对具体的应用场景,往往需要从不同维度考虑模型的性能,而不是仅考虑诸如准确度的单一指标。示例性地,在屏幕缺陷检测的应用场景中,不同类别的缺陷可能具有不同的优先级。例如,屏幕被划伤的优先级可以远高于屏幕有污渍,因为污渍可以冲洗,但划伤则必须报废。因此,通过基于验证数据集生成多维度验证测试指标,可以更充分地发挥验证数据集的作用,更全面地展示模型的训练效果,更有效地辅助对目标模型的选取,有助于提升所选取的目标模型与具体应用场景的需求的契合度。
示例性地,可以优先根据F1分数在至少两个经训练的模型中确定目标模型。如前文所提及的,F1分数是兼顾了准确率和召回率两者的指标,一般而言,F1分数越接近1,说明模型的训练效果越好,反之,F1分数越接近0,说明模型的训练效果越差。此外,示例性地,还可以根据混淆矩阵判断所确定的目标模型是否满足预设需求;响应于所确定的目标模型不满足预设需求,可以通过重新训练或调整置信度阈值来更新目标模型。根据混淆矩阵,可以更详细地了解针对各个类别的测试结果,从而更全面、细致地掌握模型针对不同类别的训练情况,例如,可以根据混淆矩阵核查模型针对部分或全部类别的预测结果分布、预测准确率、召回率及F1分数等,并判断其是否满足预设需求,比如,针对上文所述的屏幕缺陷检测应用场景,可以判断模型针对部分优先级较高的缺陷类别(或全部缺陷类别)的预测准确率、召回率和/或F1分数等是否均高于预设阈值。若目标模型针对一个或几个类别的预测情况无法满足预设需求,则可以尝试通过调整相应类别的置信度阈值来更新目标模型,或可以通过补充相应类别的样本数据再次对目标模型进行训练来更新目标模型;或者,若目标模型针对较多类别的预测情况均无法满足预设需求,或通过调整置信度阈值、补充样本数据等手段仍无法调整至满足需求,则可以通过补充训练数据集或优化模型参数等方式重新对目标模型进行训练,或重新对初始的深度学习模型进行训练并重新选取目标模型。
在确定目标模型的方法1700中,样本数据集可以包括训练数据集和验证数据集,在利用训练数据集训练得到两个或更多个经训练的模型后,利用验证数据集测试该两个或更多个经训练的模型,生成多维度的验证测试指标,并根据验证测试指标在两个或更多个经训练的模型中选取一个目标模型。这样,通过多维度验证测试指标,可以更全面地评测并向用户展示各个模型的训练效果,从而可以更好地辅助选择更适合于具体应用场景需求的目标模型。由此,有助于提升最终得到的目标模型的预测性能及预测功能的可靠性,从而有助于提升整个分类系统的分类性能。例如,当应用于产品缺陷检测领域时,可以更灵活地根据具体需求选取更合适的目标模型,进而有效提升产品缺陷检测系统的检测效果。
此外,相较于相关技术中的方案,本公开中的方法1700可以实现对验证数据集的更充分的利用。具体而言,在相关技术的方案中,如前文所提到的,验证数据集往往只用于在训练过程中生成Loss曲线,以帮助判断模型训练情况是否符合预期,之后便不再使用验证数据集。然而,样本数据集的产生往往需要耗费大量人力和时间,许多涉及专业知识的领域的数据标注工作还需要具备一定专业知识的技术人员来完成,例如,涉及产品缺陷的样本数据的标注一般需要对相关产品具有一定了解的技术人员来实施,以确保标注的准确性。因此,标注完毕的样本数据若未得到充分利用,在一定程度上是对数据标注所涉及的人力及时间成本的浪费。本公开的方法1700附加地基于验证数据集生成了多维度的验证测试指标,这使得在确定目标模型的过程中能够更加充分地发挥验证数据集的作用,从而有助于提升对验证数据集的利用率,做到物尽其用。
在一些实施例中,参考图17描述的确定目标模型的方法1700还可以包括图18所示的离线测试过程1800。如图18所示,离线测试过程1800可以包括以下步骤。
在步骤1810,获取离线测试数据集,离线测试数据集包括已被标注类别的多个样本图像。同样地,样本图像可以为前述目标对象的图像,目标对象可以是诸如显示屏、显示面板等的目标产品,被标注的类别可以与前述样本数据集中的样本图像的标注类别相同,例如可以是诸如存在残留物、存在灰尘、电路线过细或者过粗等的显示屏缺陷的类别。
示例性地,离线测试数据集可以包括以下中的至少一项:由样本数据集划分得到的子集、由用户提供的输入样本数据集,其中,输入样本数据集可以包括已被标注类别的多个样本图像。由此,可以通过如下方式中的至少一种来获取离线测试数据集。在第一种方式中,可以直接基于模型训练阶段使用的样本数据集的子集来获取离线测试数据集。例如,可以将样本数据集按预设比例划分为训练数据集、验证数据集和离线测试数据集;或者,可以将样本数据按预设比例先行划分为训练集和离线测试数据集,再将训练集根据预设比例进一步划分为训练数据集和验证数据集。在第二种方式中,可以允许用户提供新的经标注的数据集。可以接收用户提供的包括已被标注类别的多个样本图像的输入样本数据集,并基于所接收的输入样本数据集,获取离线测试数据集。或者,也可以融合上述两种方式,基于原始样本数据集的子集和新提供的输入样本数据集两者来得到离线测试数据集。通过提供新的输入样本数据集,可以测试目标模型的泛化能力。若所提供的输入样本数据集包括实际生产线中抽取的数据,则还可以更直观地测试目标模型针对生产线数据的预测性能,从而可以为部署到实际生产线做好准备。
在步骤1820,利用离线测试数据集测试目标模型,生成离线测试结果。离线测试结果可以包括目标模型输出的类别和相应类别的置信度。可以依次将离线测试数据集中的图像输入至目标模型,并保存目标模型输出的类别和相应的置信度。
在一些实施例中,可以根据前述验证测试结果或者离线测试结果,更新针对至少一个类别的置信度阈值。示例性地,可以通过各种方式向用户展示验证测试结果或者离线测试结果,用户可以参考所展示的结果,根据实际应用需求调整目标模型的至少一个类别的置信度阈值;或者,可以根据预设调整机制,基于验证测试结果或者离线测试结果,自动地调整至少一个类别的置信度阈值。
在一些实施例中,可以基于上述验证测试结果或者离线测试结果,针对至少一个类别,生成准确率曲线和召回率曲线,其中,准确率曲线用于反映准确率和置信度阈值之间的关系,召回率曲线用于反映召回率与置信度阈值之间的关系;随后,可以根据准确率曲线和召回率曲线,更新针对至少一个类别的置信度阈值。示例性地,准确率曲线和召回率曲线的交点往往是最适宜的置信度阈值,因此,可以根据准确率曲线和召回率曲线的交点,来自动或基于用户输入而更新针对至少一个类别的置信度阈值。或者,可以向用户呈现准确率曲线和召回率曲线,以及可选地还可以呈现其他参考指标,使得用户可以基于这些内容,结合实际生成业务场景,来对置信度阈值进行更精准的调整。示例性地,准确率曲线和召回率曲线可以在不自动确定推荐置信度阈值的实施例中被生成,以便为用户调整置信度阈值提供更详细的参考。
在一些实施例中,可以基于验证测试结果或者离线测试结果,根据准确率或召回率,确定针对各个类别的推荐置信度阈值;基于推荐置信度阈值,更新针对至少一个类别的置信度阈值。示例性地,在模型训练开始时,可以预先为各个类别设定置信度阈值,此时的置信度阈值可以是默认值或根据经验设定的值。在利用验证数据集或者离线测试数据集对至少两个经训练的模型进行测试时,可以基于验证测试结果或者离线测试结果,根据预设逻辑为各模型确定针对各个类别的推荐置信度阈值。可以基于推荐置信度阈值来生成各种验证测试指标,从而更准确地反应各模型的预测性能,进而提升所选择的目标模型的性能。示例性地,可以根据前文参照图3至图16描述的各种实施例中确定置信度阈值的方案来确定此处的推荐置信度阈值。由此,可以相对便捷、准确地为各模型确定适配的置信度阈值,这可以为用户后续手动调整置信度阈值提供调整范围和方向,或者,也可以为模型上线做好准备。
在一些实施例中,可以基于上述离线测试结果,生成离线测试指标,离线测试指标包括以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布;随后,可以根据离线测试指标,更新针对至少一个类别的置信度阈值。针对各个类别的模型输出数量和真实数量的分布是指,针对各个类别,目标模型输出的该类别图像数量和标签为该类别的图像数量,这可以通过柱状图、折线图等来体现。针对各个类别的置信度分布是指,针对各个类别,目标模型针对各输入图像输出的置信度,这可以通过散点图等来体现。示例性地,上述离线测试指标可以在自动确定推荐置信度阈值的实施例中被生成,以便用户直观地观察目标模型基于推荐置信度阈值的预测效果,进而参考当前效果,结合实际需求来对所推荐的置信度阈值进行微调。
在一些实施例中,在置信度阈值被更新后,还可以根据更新后的置信度阈值,基于上述离线测试结果,生成以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布。由此,可以为用户实时展示目标模型基于更新后的置信度阈值的预测效果,从而更直观、便捷地确定是否选择使用更新后的置信度阈值,或者是否需要继续调整置信度阈值,以便快速找到最合适的置信度阈值。
在一些实施例中,参考图17描述的确定目标模型的方法1700还可以包括图19所示的在线测试过程1900。如图19所示,在线测试过程1900可以包括以下步骤。
在步骤1910,获取在线测试数据集,在线测试数据集包括未被标注类别的多个图像。同样地,在线测试数据集中的图像可以为前述目标对象的图像,目标对象可以是诸如显示屏、显示面板等的目标产品,其可以具有诸如存在残留物、存在灰尘、电路线过细或者过粗等类别的显示屏缺陷。在线测试数据集中的图像可以是在实际生产线上的各种生产流程处获取的图像。如此,在利用在线测试数据集进行测试后,可以防止目标模型在前期测试中效果好,而在正式上线后效果差的情况,从而可以为目标模型上线稳定运行提供保障。
在一些实施例中,可以通过以下方式获取在线测试数据集。首先,可以与图像获取装置建立通讯连接,其中,图像获取装置被配置为获取待检图像。然后,可以经由通讯连接,接收来自图像获取装置的待检图像。如此,可以基于所接收的待检图像,获取在线测试数据集。示例性地,图像获取装置可以为相机或其他装置,其可以由生产系统的控制装置控制,例如控制其何时抓取图像、将图像存储在何处等。与图像获取装置的通讯连接可以经由与这种生产系统的通讯连接来建立,例如可以通过网关或其他结构来建立这种通讯连接。随后,可以经由这种通讯连接告知目标模型所对应的目标对象(例如目标产品的产品名称、型号等),生产系统可以将适用于该目标模型的目标对象的图像数据提供至目标模型,例如,可以经由通讯连接告知相关图像数据的存储地址等,以便根据地址获取相关图像数据,该相关图像数据可以用作前述待检图像。
或者,在一些实施例中,可以通过以下方式获取在线测试数据集:可以基于相关在线模型所接收的图像,获取在线测试数据集,其中,相关在线模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。示例性地,如前段所描述的,相关在线模型可以经由诸如网关的结构与生产系统建立通讯连接,并经由通讯连接获取由图像获取装置获取的目标对象的待检图像。随后,在对待检图像预测完毕后,可以再次经由通讯连接将预测结果反馈至生产系统,以供后续存储和分析处理。例如,诸如网关的结构可以对相关在线模型所输出的预测结果进行整理,并发送至生产系统。示例性地,在目标模型用于替换相关在线模型的实施例中,可以基于相关在线模型处的图像数据来获取在线测试数据集。
在步骤1920,利用在线测试数据集测试目标模型,生成在线测试指标,在线测试指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。示例性地,可以利用在线测试数据集测试目标模型,并根据目标模型的输出得到在线测试结果。在线测试结果可以包括目标模型输出的类别和相应类别的置信度。例如,可以依次将在线测试数据集中的图像输入至目标模型,并保存目标模型输出的类别和相应的置信度。随后,可以接收针对在线测试数据集的人工复核结果。例如,可以向指定人员呈现在线测试数据集中的各个图片,指定人员可以根据经验判断各个图片的类别,例如其中目标产品的缺陷类别等,指定人员输入的图片类别可以被保存为相应图片的人工复核结果。由此,可以基于在线测试结果和人工复核结果,生成上述在线测试指标。用户可以基于在线测试指标评估目标模型的在线预测性能,以进一步确保目标模型在上线后可以实现满足预期的预测效果。
在步骤1930,可以根据在线测试指标是否满足上线标准,来确定是否上线目标模型。示例性地,响应于在线测试指标满足预设标准,可以上线目标模型;或者,响应于在线测试指标中的至少部分指标高于相关在线模型的对应测试指标,可以上线目标模型,其中,对应测试指标是基于相关在线模型针对在线测试数据集的输出结果得到的。示例性地,相关在线模型可以是与目标模型所检测的产品型号、类别(比如产品缺陷类别)等相同或相似的在线模型。在线模型可以理解为当前正在使用来预测待检图像的类别的模型,例如,针对产品缺陷检测场景,在线模型可以为布置在产线上、用于检测目标产品的图像并预测产品缺陷类别的模型。示例性地,相关在线模型的对应测试指标可以是通过以下过程得到的:可以获取相关在线模型针对在线测试数据集中的图片的输出结果,并基于其输出结果和上述人工复核结果,生成这些对应测试指标。类似地,对应测试指标可以包括以下中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。
在一些实施例中,针对待上线的全新模型,可以根据在线测试指标中的至少部分指标是否达到预设阈值来判断是否上线该模型,而针对待上线的迭代模型,可以根据在线测试指标中的至少部分指标是否高于相关在线模型的对应测试指标来判断是否上线该模型。在此,全新模型可以理解为当前不存在相关的在线模型,而迭代模型可以理解为针对当前在线的相关模型的更新迭代版本。全新模型和迭代模型可以应用于不同情形,例如,在产品缺陷检测应用场景下,针对全新产品的缺陷检测,通常需要开发全新模型来检测,在一些情况下,若之前存在类似产品,则也可能通过对用于类似产品的相关模型进行迭代更新来检测该全新产品;针对已有产品的缺陷检测,当生产工艺出现较大变化或相机布置发生较大改变时,通常需要开发全新模型来检测新生产工艺下的产品或者处理新相机布置下获取的图像数据,而当产线变动或相机布置变动较小时,则可能可以通过对当前在线模型的更新迭代来适应这些变动。此外,如前文实施例所提到的,针对全新模型和更新迭代模型,其在线测试数据集的获取方式可以有所不同,针对全新模型,一般需要先与图像获取装置建立新的通讯连接,并接收来自图像获取装置的相关图像数据;针对更新迭代模型,则可以选择直接基于相关在线模型处的图像数据来获取在线测试数据,即,可以将相关现在模型处的部分或全部图像数据划分或复制为两份,一份由相关在线模型用于常规预测使用,另一份用作更新迭代模型的在线测试数据。通过设置不同的在线测试数据获取方法以及不同的上线标准,可以兼顾全新模型和更新迭代模型的不同需求,增加测试流程的灵活性。
在一些实施例中,在线测试过程1900还可以包括以下中的一项:响应于在线测试指标不满足预设标准,通过重新训练或调整置信度阈值来更新目标模型;以及响应于在线测试指标不高于相关在线模型的对应测试指标,通过重新训练或调整置信度阈值来更新目标模型。示例性地,如前文提及的,针对待上线的全新模型,当在线测试指标不满足预设标准时,例如,部分或全部部分指标未否达到预设阈值时,可以通过重新训练或调整置信度阈值来更新目标模型;而针对待上线的迭代模型,当在线测试指标不高于相关在线模型的对应测试指标时,可以通过重新训练或调整置信度阈值来更新目标模型。关于通过训练或调整置信度阈值来更新目标模型的方式,已经在关于步骤1750的实施例中予以描述,在此不再赘述。
在一些实施例中,参考图17描述的确定目标模型的方法1700还可以包括图20所示的审核过程2000。如图20所示,审核过程2000可以包括以下步骤。
在步骤2010,获取用户针对目标模型的审核结果。在目标模型经过前期测试后,可以准备对其进行上线部署。为了避免误操作,以及避免模型错误上线影响生产,在模型上线之前,可以设置审核流程。可以向相关用户呈现待上线的目标模型,相关用户可以确认是否上线该目标模型。可选地,为了进一步确保系统的可靠性,可以设置两级或更多级审核流程,例如,在目标模型上线前,可以分别经由两个层级的相关人员进行审核。
在步骤2020,响应于审核结果指示目标模型可上线,上线目标模型,使得目标模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。在审核通过后,目标模型可以正式上线,其可以作为新上线的模型,也可以作为原有相关在线模型的更新。示例性地,上线后的目标模型可以经由前述通讯连接接收待检图像,并经由该通讯连接反馈预测结果。
在一些实施例中,参考图17描述的确定目标模型的方法1700还可以包括图21所示的在线复核过程2100。如图21所示,在线复核过程2100可以包括以下步骤。
在步骤2110,在目标模型上线后,基于来自图像获取装置的待检图像,获取在线抽查数据。可以在提供至目标模型以供预测的待检图像中抽取部分图像,构成在线抽查数据。这些在线抽查数据可以被打包存储或发送给相关复核人员。
在一些实施例中,在线抽查数据可以通过以下方式中的至少一种方式来获取。在第一种方式中,可以采取自动任务派发方式,即,可以在来自图像获取装置的待检图像中,随机抽取部分图像,并基于所抽取的图像,生成在线抽查数据。例如,可以在预设周期内随机抽取固定数量的待检图像,生成在线抽查数据。预设周期比如可以是一天、两天、一周等。在第二种方式中,可以采取手动任务抽取方式,即,可以接收针对来自图像获取装置的待检图像的筛选条件,基于筛选条件,对来自图像获取装置的待检图像进行筛选,并基于筛选出的图像,生成在线抽查数据。例如,可以由相关人员手动设置筛选条件,筛选条件例如可以是时间、产品型号、产品缺陷种类、数量等。可以根据所设置的筛选条件筛选待检图像,并基于筛选出的待检图像生成抽查数据。可选地,可以直接基于筛选出的待检图像生成抽查数据,或者,也可以在筛选出的待检图像中随机抽取预设比例的图像来生成抽查数据。上述两种方式分别可以用于满足针对目标模型的日常监控和特定条件抽查的需求。
在步骤2120,接收针对在线抽查数据的人工复核结果,人工复核结果包括人工复核得到的待检图像的类别。可以向相关复核人员呈现在线抽查数据中的各图片,并接收其针对各图片的复核输入,复核输入可以包括图片的类别,并可以被存储为人工复核结果。
在步骤2130,基于人工复核结果和目标模型预测得到的类别,生成在线抽查指标,在线抽查指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。用户可以基于在线抽查指标监控目标模型的在线预测性能,以便从数据角度监控目标模型的健康度,并及时对目标模型做出调整。
在一些实施例中,可以根据图22所示的流程2200来实施整个模型训练及评测过程。如图22所示,可以基于训练数据集对深度学习模型进行训练,并根据训练参数得到至少两个经训练的模型;然后,可以基于验证数据集对至少两个经训练的模型进行测试,并基于测试结果在至少两个经训练的模型中确定一个目标模型;随后,可以基于离线测试数据集对目标模型进行离线测试,并基于离线测试结果对目标模型的至少一个类别的置信度阈值进行调整;接着,可以基于在线测试数据集对目标模型进行在线测试,以便测试目标模型在产线数据上的预测性能,在此,可以区分更新测试和上线测试,如前文所描述的,针对上线测试,可以与生产系统建立通讯连接并经由通讯连接获取在线测试数据集,针对更新测试,可以直接基于相关在线模型处的数据获取在线测试数据集;通过在线测试后,可以对目标模型进行审核上线,如前文所描述的,可以采取两级审核方式;最后,在目标模型上线后,可以周期性地或基于特定需求基于抽取的产线数据对目标模型进行在线复核,以监控目标模型的在线性能。上述各个流程已经在前文参考图17至图21的各种实施例中详细描述,在此不再赘述。
通过图22所示的流程2200,在为用户提供训练功能的同时,提出了一套完整详细的模型测试和上线方案,一方面,可以解决生产工艺、产品型号等发生变化后,模型无法适配的问题。另一方面,可以提供一套完善的模型评测机制,其涵盖了验证评估、离线测试、在线测试、审核上线、产线复核五个模型测试阶段,并在每个阶段中给出了配套的评价指标,使得用户可以在无算法人员协助的情况下,按照本公开所提供的流程和评价指标,简便明了的进行模型的测试和上线工作。换言之,本公开的实施例为模型测试上线这一重要工作提供了一套标准的操作流程,可以为产品缺陷检测系统或其他类似系统的后续维护及系统的扩展性和鲁棒性提供保证,避免该类系统由于模型更替造成的诸多风险。
图23图示了根据本公开的一个实施例的确定图像类别的方法2300的示意性流程图。确定目标模型的方法2300例如可以由图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图23所示,方法2300包括如下步骤。
在步骤2310,利用目标模型对待检图像进行预测,以得到待检图像的类别,其中,目标模型是根据验证测试指标从至少两个经训练的模型中确定的,至少两个经训练的模型具有不同训练轮数,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数。这里的待检图像与前述样本图像可以是类似的图像,其可以显示目标对象所存在的各种缺陷。示例性地,这里的待检图像可以是获取自生产线的目标对象在一个或多个生产流程处的图像。
在一些实施例中,步骤2310中使用的目标模型可以是通过上文各种实施例描述的方法1700得到的目标模型。通过利用该目标模型预测待检图像的类别,可以实现更好的预测效果,例如实现更高的准确率、召回率等指标,或者实现更符合具体应用需求的预测效果等。
应当理解,确定图像类别的方法2300关注于目标模型的获取和使用过程,而参照图17至图22描述的各种实施例关注于目标模型的获取和评测过程。因此,上面参照图17至图22描述的各种实施例也适用于确定图像类别的方法2300,具体的细节此处不再详述。
图24图示了根据本公开的一个实施例的确定目标模型的方法2400的示意性流程图。确定目标模型的方法例如可以由如图1所示的终端设备101、102、103、服务器105或者相组合地实施。如图24所示,所述方法2400包括如下步骤。
在步骤2410,响应于用户对样本数据集的配置操作,获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像。示例性地,样本图像可以为目标对象的图像,目标对象可以为目标产品,类别可以为目标产品的产品缺陷类别。类似前文所提到的,这里的目标产品例如可以是显示屏、显示面板等,被标注的类别可以指显示屏缺陷的类别,例如存在残留物、存在灰尘、电路线过细或者过粗等。
作为示例,用户可以在如图10所示的图形界面上对样本数据集的参数进行配置,所述参数例如可以包括训练类型(例如,图像分类)、选择的样本数据集(例如,L490A_6LBF_maincode)、样本数据集的版本号(例如V1)等等。示例性地,用户还可以在如图10所示的图形界面中先后选择两个或更多个数据集,通过点击诸如“确定”或其他按钮将两个或更多个数据集合并作为步骤2410中使用的样本数据集。
示例性地,验证数据集可以被用来验证深度学习模型的训练效果,例如,可以在训练过程中基于验证数据集生成Loss(损失)曲线,即损失函数值的变化曲线,以判断模型训练效果,并帮助判断何时停止训练。在一些实施例中,训练数据集和验证数据集中的样本图像的数量可以符合预设比例。例如,训练数据集和验证数据集的比例可以为9:1、8:1、8:2等。示例性地,除了训练数据集和验证数据集外,样本数据集还可以包括其他数据集。进一步示例性地,可以先将样本数据集划分为训练集和其他数据集,再在训练过程中将训练集划分为前述训练数据集和验证数据集。
示例性地,在选择了合适的样本数据集后,可以自动将样本数据集按照预定比例进行划分,以得到训练数据集和验证数据集,或者由用户手动按照期望比例划分为训练数据集和验证数据集。进一步示例性地,可以先将样本数据集划分为训练集和其他数据集,划分完成后,用户可以在诸如图10所示的图形界面中选择某一训练集,进而可以自动根据预设比例将所选择的训练集进一步划分为训练数据集和验证数据集,并可以呈现两者各自的数据量。
在步骤2420,根据样本数据集的特征信息配置训练参数,并生成训练参数展示界面,其中,训练参数展示界面展示的训练参数包括测试策略,测试策略包括至少两个训练轮数,特征信息包括样本数据集的样本数量。示例性地,测试策略可以包括测试次数和测试时的轮数,除测试策略外,训练参数还可以包括学习率下降策略、训练总轮数等。以及,示例性地,根据样本数据集的特征信息配置训练参数可以包括以下中的一项或多项:根据特征信息中的样本数量配置学习率下降策略、训练总轮数和测试策略,根据样本数据集中的图片的尺寸、种类等来配置输入至待训练的深度学习模型的输入图像的尺寸等,(在上文提到的涉及产品缺陷的示例场景中)根据各种缺陷对应的样本数量和缺陷等级配置训练过程中的置信度,等等。关于具体实施例,请参见前文关于步骤1720的描述,在此不再重复。
在本公开的一种示例实施方式中,在根据上述特征信息完成对上述训练参数的配置之后,还可以生成一训练参数展示界面,且在训练参数展示界面设置有参数修改标识,在用户触发上述参数修改标识之后,可以展示可修改的参数,用户可以在修改界面修上述配置的训练参数。
在步骤2430,根据训练参数利用训练数据集对深度学习模型进行训练,得到至少两个经训练的模型,该至少两个经训练的模型与前述至少两个训练轮数一一对应。示例性地,经训练的模型可以是前文实施例中提到的图像分类模型,其可以用于基于输入图像预测类别,并得到与该类别对应的置信度。
在一些实施例中,深度学习模型可以是卷积神经网络(CNN)模型、目标检测卷积神经网络(faster-RCNN)模型、循环神经网络(RNN)模型、生成式对抗网络(GAN)模型、自注意力模型,但不限于此,也可以采用本领域技术人员熟知的其他神经网络模型。
在一些实施例中,如前文所描述的,可以事先配置对深度学习模型进行训练时的训练参数,训练参数可以包括训练针对的类别、深度学习模型的类型、训练总轮数、学习率下降策略、测试策略、输入深度学习模型的图像的尺寸等。此外,还可以在训练参数中指定两个或更多个训练轮数,使得具有相应训练轮数的经训练的模型可以被保存,作为备选模型,以便在后续测试过程中可以在这些备选模型中选取更优的模型作为目标模型。示例性地,可以由执行模型训练的人员根据经验直接指定训练轮数,或者,可以基于某些参数间接指定欲保存的模型训练轮数,例如基于学习率的下降情况等。比如,假设认为在第二次学习率下降时模型效果更好,则可以在第二次学习率下降的轮数附近选取若干个训练轮数。应理解,也可以根据实际需求根据其他指标来指定欲保存的模型训练轮数。
在步骤2440,利用验证数据集测试至少两个经训练的模型,生成验证测试结果。验证测试结果可以包括模型输出的类别和相应类别的置信度。可以依次将验证数据集中的图像输入至每个经训练的模型,并保存模型输出的类别和相应的置信度。
在步骤2450,基于验证测试结果,生成验证测试指标展示界面,验证测试指标展示界面用于展示以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数。准确率表示被正确预测相应类别的图像的数量与被预测为该相应类别的图像的数量的比值,召回率表示被正确预测相应类别的图像的数量与该相应类别的图像的真实数量的比值,F1分数可以视为准确率和召回率的调和平均数,即(2*准确率*召回率)/(准确率+召回率)。假设模型存在n个预测类别,则混淆矩阵可以为n*n的矩阵,矩阵的每一列代表模型预测的类别,每一列的总数表示预测为该类别的图片的数目;每一行代表图片的真实类别,即标签中的类别,每一行的总数表示该类别的图片的真实数目。此外,混淆矩阵还可以包括unknown(未知)列,该列可以包括模型未预测出类别的图片的数目。可以基于验证测试结果中的类别及类别的置信度和验证数据集中的图片标签中的类别来生成上述验证测试指标中的一个或多个。
作为示例,用户可以在如图25A所示的图形界面2500A上查看各个经训练的模型的准确率、召回率和/或F1分数。可选地,可以通过饼状图、环形图等来更直观地呈现模型的准确率、召回率、F1分数等。例如,用户可以点击相应的与经训练的模型相关的标识(例如界面中的UID),来查看相应模型的图形化展示的准确率、召回率、F1分数等。
作为示例,用户可以在如图25B所示的图形界面2500B上查看一个或多个经训练的模型的混淆矩阵。可选地,除混淆矩阵外,图形界面2500B还可以呈现相应模型的准确率、召回率等其他指标参数。
在步骤2460,响应于用户针对至少两个经训练的模型的选择操作,将用户所选择的模型确定为目标模型。示例性地,可以向用户展示上述验证测试指标,用户可以参考这些验证测试指标,根据实际应用需求在至少两个经训练的模型中选取一个模型作为目标模型。此外,示例性地,也可以根据预设选取机制,基于这些验证测试指标,自动地在至少两个经训练的模型中选取一个模型作为目标模型。
如本领域技术人员将理解的,在深度学习模型的训练过程中,准确度指标是非常重要的。然而,申请人发现,针对具体的应用场景,往往需要从不同维度考虑模型的性能,而不是仅考虑诸如准确度的单一指标。示例性地,在屏幕缺陷检测的应用场景中,不同类别的缺陷可能具有不同的优先级。例如,屏幕被划伤的优先级可以远高于屏幕有污渍,因为污渍可以冲洗,但划伤则必须报废。因此,通过基于验证数据集生成多维度验证测试指标,可以更充分地发挥验证数据集的作用,更全面地展示模型的训练效果,更有效地辅助对目标模型的选取,有助于提升所选取的目标模型与具体应用场景的需求的契合度。
作为示例,可以提供用于在至少两个经训练的模型中选择目标模型的界面,使得用户可以通过点击相应的模型,来将其选择为目标模型。
在确定目标模型的方法2400中,对已标注的样本数据集进行划分,得到训练数据集和验证数据集,在利用训练数据集训练得到两个或更多个经训练的模型后,利用验证数据集测试该两个或更多个经训练的模型,生成并呈现用以展示多维度的验证测试指标的验证测试指标展示界面,从而允许根据验证测试指标在两个或更多个经训练的模型中选取一个目标模型。这样,通过多维度验证测试指标的展示,相较于相关技术中的方案,可以实现对验证数据集的更充分的利用,同时,可以更全面地评测并且更直观地向用户展示各个模型的训练效果,从而可以更好地辅助选择更适合于具体应用场景需求的目标模型。由此,有助于提升最终得到的目标模型的预测性能及预测功能的可靠性,从而有助于提升整个分类系统的分类性能。例如,当应用于产品缺陷检测领域时,可以更灵活地根据具体需求选取更合适的目标模型,进而有效提升产品缺陷检测系统的检测效果。
在一些实施例中,图24所示的确定目标模型的方法2400还可以包括:响应于用户针对目标模型的离线测试任务建立操作,生成离线测试参数配置界面;根据用户在离线测试参数配置界面的配置输入,建立离线测试任务;根据配置输入,获取离线测试数据集,离线测试数据集包括已被标注类别的多个样本图像;利用离线测试数据集测试目标模型,生成离线测试结果。
示例性地,可以在图形界面上提供用于创建离线测试任务的按钮,或者也可以设计相应的实体按钮或按键。当用户点击该按钮时,可以呈现离线测试参数配置界面。作为示例,可以呈现如图26所示的离线测试任务创建界面2600。在该界面2600中,用户可以对离线测试参数进行配置,例如选择任务站点、产品型号、用于离线测试的数据集、离线测试所针对的模型的标识等。在用户点击提交任务按钮后,可以根据用户配置创建离线测试任务,并使用相应的离线测试数据集来测试目标模型,并生成离线测试结果。
在一些实施例中,可以根据如下方式更新针对至少一个类别的置信度阈值:基于验证测试结果或者离线测试结果,根据准确率或召回率,确定针对各个类别的推荐置信度阈值;基于推荐置信度阈值,更新针对至少一个类别的置信度阈值;响应于用户对置信度阈值的查看操作,生成置信度阈值展示界面。作为示例,用户可以在如图27所示的图形界面2700中查看各个经训练的模型的推荐置信度阈值或当前置信度阈值。如图所示,可以以表格方式呈现针对各个类别的置信度阈值。或者,也可以通过其他方式来呈现置信度阈值。
在一些实施例中,可以根据如下方式更新针对至少一个类别的置信度阈值:基于验证测试结果或者离线测试结果,生成曲线展示界面,曲线展示界面用于展示各个类别的准确率曲线和召回率曲线,其中,准确率曲线反映准确率和置信度阈值之间的关系,召回率曲线反映召回率与置信度阈值之间的关系;响应于用户对至少一个类别的置信度阈值的修改操作,更新针对至少一个类别的置信度阈值。
作为示例,用户可以在如图28所示的图形界面2800中查看各个类别的准确率曲线和召回率曲线。可以在同一张图内展示准确率曲线和召回率曲线,或者,也可以两张图内分别展示准确率曲线和召回率曲线。示例性地,可以根据离线测试数据集中的图片的真实标签中的类别和目标模型输出的类别,对于每个类别,从0至1以0.05的间隔,设置20个不同的置信度阈值,分别计算每一类别的准确率和召回率,进而绘制成如图28所示的准确率曲线和召回率曲线(在图28中被绘制为折线图)。由此,用户可以通过观察准确率曲线和召回率曲线,根据业务需求和经验为各个类别确定合适的置信度阈值,并根据所确定的结果修改一个或多个类别的置信度阈值。进一步示例性地,召回率曲线和准确率曲线的交点往往是最适宜的置信度阈值,例如图28所示的类别A的准确率曲线与召回率曲线的交点a、类别B的准确率曲线与召回率曲线的交点b。用户可以观察不同类别的准确率曲线与召回率曲线,并结合业务背景,对置信度阈值做出最终调整。
作为示例,用户可以在如图29所示的图形界面2900中修改针对各个类别的置信度阈值。示例性地,可以为用户提供多种修改置信度阈值的方式,例如直接输入、通过增大或减小按钮来修改等。
在一些实施例中,还可以根据如下方式更新针对至少一个类别的置信度阈值:基于离线测试结果,生成离线测试指标展示界面,离线测试指标展示界面用于展示以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布;响应于用户对至少一个类别的置信度阈值的修改操作,更新针对至少一个类别的置信度阈值。
作为示例,用户可以在如图30所示的图形界面3000中查看针对各个类别的模型输出数量和真实数量的分布。如图30所示,可以以柱状图的形式呈现各个类别的模型输出数量和真实数量,其中,针对某一类别,模型输出数量指模型预测为该类别的图片的数量,真实数量指标签为该类别的图片的数量。可选地,可以呈现未知类别,即目标模型未将其归入任一类别的图片数量。通过这种柱状图,用户可以直观观察到针对各个类别的模型输出数量和真实数量的差异度。
作为示例,用户可以在如图31所示的图形界面3100中查看针对各个类别的置信度分布。如图31所示,可以以散点图的形式呈现各个类别的置信度分布,其中,每个圆点可以代表目标模型针对某个图片输出的针对相应类别的置信度得分。通过这种散点图,用户可以直观观察到针对各个类别的置信度分布情况,其可以有效辅助设置适宜的置信度阈值。
作为示例,用户可以在如图32所示的图形界面3200中查看准确率、召回率、混淆矩阵等。
类似地,作为示例,用户可以在如图29所示的图形界面2900中修改针对各个类别的置信度阈值。
在一些实施例中,为了方便用户查看预测错误的图片数据,还可以提供错误结果展示界面。即,可以基于离线测试结果,生成错误结果展示界面,错误结果展示界面用于展示模型输出类别与真实类别不一致的数据。
作为示例,用户可以在如图33所示的图形界面3300中查看预测错误的数据。示例性地,如图33所示,可以在界面左侧展示各类别中预测错误的数据量,例如,可以展示标签类别为A但被预测为其他类别的数据量。当用户选择查看某一类别时,可以在界面右侧展示该类别下预测错误的具体图片。用户可以通过查看预测错误的图片,来了解这些图片更易被误判至哪些类别、这些图片被误判的可能原因等,从而为置信度阈值的微调提供更多数据支持,有助于进一步改善目标模型的预测性能。
在一些实施例中,为了实时展示更新置信度阈值对模型预测效果的影响,以便辅助用户决策是否采用更新后的置信度阈值,或者是否需要进一步修改置信度阈值,可以在更新置信度阈值后,基于离线测试结果,生成新的指标展示界面,以展示以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布。
示例性地,可以在类似于图30至32所示的图形界面中展示上述各种指标中的一项或多项。
在一些实施例中,离线测试参数配置界面可以包括数据集选择选项。在这种实施例中,可以响应于用户通过数据集选择执行的选择操作,基于与选择操作对应的样本数据集,获取离线测试数据集。
示例性地,可以在如图27所示的图形界面2700中通过选择数据集名称、数据集版本等来选择已有的数据集。例如,可以选择使用目标模型训练过程中使用的样本数据集的子集来形成离线测试数据集。
在一些实施例中,离线测试参数配置界面可以包括数据集选择选项。在这种实施例中,可以响应于用户通过数据集上传选项执行的上传操作,接收输入样本数据集;基于输入样本数据集,获取离线测试数据集。
示例性地,可以在如图27所示的图形界面2700中提供数据集上传选项,使得用户可以通过上传输入样本数据集来构建离线测试数据集。或者,可以单独提供数据集上传选项,上传后,用户可以在如图27所示的图形界面2700中选择所上传的数据集。例如,可以基于经标注的生产线图像数据来构建输入样本数据集,以测试目标模型的泛化能力,同时测试目标模型在生产线数据上的预测效果。
在一些实施例中,图24所示的确定目标模型的方法2400还可以包括:响应于用户针对目标模型的在线测试任务建立操作,生成在线测试参数配置界面;根据用户在在线测试参数配置界面的配置输入,建立在线测试任务;基于配置输入,获取在线测试数据集,在线测试数据集包括未被标注类别的多个图像;利用在线测试数据集测试所述目标模型,生成在线测试指标,在线测试指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布;以及以下两项中的一项:响应于在线测试指标满足预设标准,呈现上线目标模型的选项;以及响应于在线测试指标中的至少部分指标高于相关在线模型的对应测试指标,呈现上线目标模型的选项,其中,对应测试指标是基于相关在线模型针对在线测试数据集的输出结果得到的。
示例性地,可以在类似于图30至32所示的图形界面中展示上述在线测试指标中的一项或多项。
作为示例,可以向用户呈现如图34A、34B所示的用于创建在线测试任务的图形界面3400A、3400B。用户可以在所示界面上输入各种配置,例如任务名称、测试类型、任务站点、产品型号、产品编码、测试所使用的数据量等。测试所使用的数据量例如可以通过LOT_ID和GLS_COUNT来选择,其中LOT_ID可以表示一个批次的数据,GLS_COUNT可以表示针对一个玻璃面板抓取的数据。
在一些实施例中,类似图34A所示,在线测试参数配置界面可以包括新模型上线选项。在这种实施例中,可以响应于用户对新模型上线选项的选择操作,与图像获取装置建立通讯连接,其中,图像获取装置被配置为获取待检图像;经由通讯连接,接收来自图像获取装置的待检图像;基于所接收的待检图像,获取在线测试数据集。
在一些实施例中,类似图34B所示,在线测试参数配置界面可以包括模型更新选项。在这种实施例中,可以响应于用户对模型更新选项的选择操作,基于相关在线模型所接收的图像,获取在线测试数据集,其中,相关在线模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
示例性地,针对模型上线测试和模型更新测试,可以呈现不同的配置选项。例如,如图34A所示,针对模型上线测试,需要选择需测试的主代码模型(mainCode模型)、子代码模型(subCode模型);如图34B所示,针对模型更新测试,可以选择性地测试主代码模型(mainCode模型)及子代码模型(subCode模型);等等。在上文描述中,mainCode模型所针对的可以是以图案种类确定的缺陷形式,subCode模型所针对的可以是以修复工艺确定的缺陷形式。此外,也可以根据具体应用需求设置其他类型的模型配置选项。
关于如何判断是否上线目标模型,已经在前文实施例中参考图19予以描述,在此不再赘述。
在一些实施例中,图24所示的确定目标模型的方法2400还可以包括:响应于用户选择上线目标模型的操作,生成上线审核界面;响应于用户针对上线审核的确认操作,上线目标模型,使得目标模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
作为示例,可以向用户呈现如图35所示的界面3500,用户可以选择要上线的模型型号、对应的产品编码、对应的站点等信息,来发起上线审核请求。随后,相关审核人员可以查看到与该模型相关的上线审核界面,并可以确认通过审核或拒绝该请求。示例性地,可以存在两级审核界面。即第一级审核人员审核通过后,可以由第二级审核人员进行审核,两级审核均通过后,模型可正式上线。
作为示例,用户可以在如图36所示的图形界面3600中查看所有已上线的模型的信息,并可以根据需求对其中一个或多个模型进行操作,例如更换模型、查看置信度阈值、修改置信度阈值、回退至先前版本、下线、同步数据等。
在一些实施例中,图24所示的确定目标模型的方法2400还可以包括:响应于用户针对已上线的目标模型的监控任务建立操作,生成监控任务参数配置界面;根据用户在监控任务参数配置界面的配置输入,建立监控任务;根据配置输入,基于来自图像获取装置的待检图像,获取在线抽查数据;接收针对在线抽查数据的人工复核结果,人工复核结果包括人工复核得到的待检图像的类别;基于人工复核结果和目标模型预测得到的类别,生成在线抽查指标,所述在线抽查指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。
示例性地,可以在类似于图30至32所示的图形界面中展示上述在线抽查指标中的一项或多项。
作为示例,用户可以在如图37所示的图形界面3700中查看和管理所有已创建的监控任务。示例性地,可以在图形界面3700中查看某一个或多个监控任务、输入或查看模型评价、重新复核、查看结果分布、查看复核结果、删除任务等。并且,用户可以通过诸如“创建任务”的按钮来创建新的监控任务。作为示例,可以向用户呈现如图38所示的监控任务创建界面3800。示例性地,用户可以在该界面中配置监控任务的各种参数,例如监控任务的时间段、站点、产品型号、产品编码、标签组、选择是否获取管理员(OP)结果、选择是否获取模型结果、选择监控任务所针对的数据、代码、任务创建目的等。随后,可以基于用户的配置输入创建相应的监控任务。所创建的监控任务例如可以在图37所示的图形界面3700中被查看和管理。
针对图24所示的确定目标模型的方法2400,除了前文参考图25至图38中的图形界面所描述的各种实施例外,其还可以具有与参考图17至图23描述的各种实施例相同或相似的实施例,在此不再重复描述。
图39图示了根据本公开的一个实施例的一种确定目标模型的装置3900的示例性结构框图。如图39所示,确定图像类别的装置3900包括获取模块3910、训练模块3920、测试模块3930、生成模块3940、确定模块3950。
获取模块3910可以被配置为获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像;训练模块3920可以被配置为利用训练数据集对深度学习模型进行训练,根据不同训练轮数,得到至少两个经训练的模型;测试模块3930可以被配置为利用验证数据集测试至少两个经训练的模型,生成验证测试结果;生成模块3940可以被配置为基于验证测试结果,生成验证测试指标,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;确定模块3950可以被配置为根据验证测试指标,在至少两个经训练的模型中确定目标模型。
图40图示了根据本公开的一个实施例的一种确定图像类别的装置4000的示例性结构框图。如图40所示,确定目标模型的装置4000包括预测模块4010。
预测模块4010可以被配置为利用目标模型对待检图像进行预测,以得到待检图像的类别,其中,目标模型是根据验证测试指标从至少两个经训练的模型中确定的,至少两个经训练的模型具有不同训练轮数,验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数。
图41图示了根据本公开的一个实施例的一种确定目标模型的装置4100的示例性结构框图。如图41所示,确定目标模型的装置4100包括获取模块4110、配置模块4120、训练模块4130、测试模块4140、生成模块4150、确定模块4160。
获取模块4110可以被配置为响应于用户对样本数据集的配置操作,获取样本数据集,样本数据集包括训练数据集和验证数据集,训练数据集和验证数据集中的每一个包括已被标注类别的多个样本图像;配置模块4120可以被配置为根据样本数据集的特征信息配置训练参数,并生成训练参数展示界面,其中,训练参数展示界面展示的训练参数包括测试策略,测试策略包括至少两个训练轮数,特征信息包括所述样本数据集的样本数量;训练模块4130可以被配置为根据训练参数利用训练数据集对深度学习模型进行训练,得到至少两个经训练的模型,至少两个经训练的模型与至少两个训练轮数一一对应;测试模块4140可以被配置为利用验证数据集测试至少两个经训练的模型,生成验证测试结果;生成模块4150可以被配置为基于验证测试结果,生成验证测试指标展示界面,验证测试指标展示界面用于展示以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;确定模块4160可以被配置为响应于用户针对至少两个经训练的模型的选择操作,将用户所选择的模型确定为目标模型。
图42图示了根据本公开的一个实施例的确定图像类别的系统4200的示例性结构框图。如图42所示,确定图像类别的系统4200包括数据管理模块4210、训练和测试管理模块4220和模型管理模块4230。
数据管理模块4210可以被配置为用于存储并管理样本数据;训练和测试管理模块4220可以被配置为用于执行根据前文各种实施例所描述的确定目标模型的方法1700、确定图像类别的方法2300或确定目标模型的方法2400;模型管理模块4230被配置为存储、展示并管理所述目标模型。
上述装置或系统中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本公开提供了一种计算机可读存储介质,其上存储有计算机可读指令,计算机可读指令在被执行时实现上述的任一方法。
本公开提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述各种可选实现方式中提供的任一方法。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
应当理解,为清楚起见,参考不同的功能单元对本公开的实施例进行了描述。然而,将明显的是,在不偏离本公开的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其它功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本公开可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
将理解的是,尽管第一、第二、第三等术语在本文中可以用来描述各种设备、元件、部件或部分,但是这些设备、元件、部件或部分不应当由这些术语限制。这些术语仅用来将一个设备、元件、部件或部分与另一个设备、元件、部件或部分相区分。
尽管已经结合一些实施例描述了本公开,但是其不旨在被限于在本文中所阐述的特定形式。相反,本公开的范围仅由所附权利要求来限制。附加地,尽管单独的特征可以被包括在不同的权利要求中,但是这些可以可能地被有利地组合,并且包括在不同权利要求中不暗示特征的组合不是可行的和/或有利的。特征在权利要求中的次序不暗示特征必须以其工作的任何特定次序。此外,在权利要求中,词“包括”不排除其它元件,并且术语“一”或“一个”不排除多个。权利要求中的附图标记仅作为明确的例子被提供,不应该被解释为以任何方式限制权利要求的范围。
Claims (36)
1.一种确定目标模型的方法,包括:
获取样本数据集,所述样本数据集包括训练数据集和验证数据集,所述训练数据集和所述验证数据集中的每一个包括已被标注类别的多个样本图像;
利用所述训练数据集对深度学习模型进行训练,根据不同训练轮数,得到至少两个经训练的模型;
利用所述验证数据集测试所述至少两个经训练的模型,生成验证测试结果;
基于所述验证测试结果,生成验证测试指标,所述验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;
根据所述验证测试指标,在所述至少两个经训练的模型中确定目标模型。
2.根据权利要求1所述的方法,还包括:
获取离线测试数据集,所述离线测试数据集包括以下中的至少一项:由所述样本数据集划分得到的子集、由用户提供的输入样本数据集,所述输入样本数据集包括已被标注类别的多个样本图像;
利用所述离线测试数据集测试所述目标模型,生成离线测试结果。
3.根据权利要求1或2所述的方法,还包括:
基于所述验证测试结果或者所述离线测试结果,针对至少一个类别,生成准确率曲线和召回率曲线,其中,所述准确率曲线反映准确率和置信度阈值之间的关系,所述召回率曲线反映召回率与置信度阈值之间的关系;
根据所述准确率曲线和召回率曲线,更新针对至少一个类别的置信度阈值。
4.根据权利要求3所述的方法,其中,所述根据所述准确率曲线和召回率曲线,更新针对至少一个类别的置信度阈值包括:
根据所述准确率曲线和召回率曲线的交点,更新针对至少一个类别的置信度阈值。
5.根据权利要求1或2所述的方法,还包括:
基于所述验证测试结果或者所述离线测试结果,根据准确率或召回率,确定针对各个类别的推荐置信度阈值;
基于所述推荐置信度阈值,更新针对至少一个类别的置信度阈值。
6.根据权利要求5所述的方法,还包括:
基于所述离线测试结果,生成离线测试指标,所述离线测试指标包括以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布;
根据所述离线测试指标,更新针对至少一个类别的置信度阈值。
7.根据权利要求6所述的方法,还包括:
根据更新后的置信度阈值,基于所述离线测试结果,生成以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布。
8.根据权利要求1或2所述的方法,还包括:
获取在线测试数据集,所述在线测试数据集包括未被标注类别的多个图像;
利用所述在线测试数据集测试所述目标模型,生成在线测试指标,所述在线测试指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布;以及
以下两项中的一项:
响应于所述在线测试指标满足预设标准,上线所述目标模型;以及
响应于所述在线测试指标中的至少部分指标高于相关在线模型的对应测试指标,上线所述目标模型,其中,所述对应测试指标是基于所述相关在线模型针对所述在线测试数据集的输出结果得到的。
9. 根据权利要求8所述的方法,还包括以下两项中的一项:
响应于所述在线测试指标不满足所述预设标准,通过重新训练或调整置信度阈值来更新所述目标模型;以及
响应于所述在线测试指标不高于所述相关在线模型的对应测试指标,通过重新训练或调整置信度阈值来更新所述目标模型。
10.根据权利要求8所述的方法,其中,所述获取在线测试数据集包括:
与图像获取装置建立通讯连接,其中,所述图像获取装置被配置为获取待检图像;
经由所述通讯连接,接收来自所述图像获取装置的待检图像;
基于所接收的待检图像,获取所述在线测试数据集。
11.根据权利要求8所述的方法,其中,所述获取在线测试数据集包括:
基于相关在线模型所接收的图像,获取所述在线测试数据集,其中,所述相关在线模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
12.根据权利要求8所述的方法,其中,所述上线所述目标模型包括:
获取用户针对所述目标模型的审核结果;
响应于所述审核结果指示所述目标模型可上线,上线所述目标模型,使得所述目标模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
13.根据权利要求8所述的方法,还包括:
在所述目标模型上线后,基于来自图像获取装置的待检图像,获取在线抽查数据;
接收针对所述在线抽查数据的人工复核结果,所述人工复核结果包括人工复核得到的待检图像的类别;
基于所述人工复核结果和所述目标模型预测得到的类别,生成在线抽查指标,所述在线抽查指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。
14.根据权利要求13所述的方法,其中,所述基于来自图像获取装置的待检图像,获取在线抽查数据包括以下中的至少一项:
在所述来自图像获取装置的待检图像中,随机抽取部分图像,并基于所抽取的图像,生成所述在线抽查数据;
接收针对所述来自图像获取装置的待检图像的筛选条件,基于所述筛选条件,对所述来自图像获取装置的待检图像进行筛选,并基于筛选出的图像,生成所述在线抽查数据。
15.根据权利要求1所述的方法,其中,所述根据所述验证测试指标,在所述至少两个经训练的模型中确定目标模型包括:
根据F1分数在所述至少两个经训练的模型中确定所述目标模型。
16.根据权利要求15所述的方法,其中,所述根据所述验证测试指标,在所述至少两个经训练的模型中确定目标模型还包括:
根据混淆矩阵判断所确定的目标模型是否满足预设需求;
响应于所确定的目标模型不满足预设需求,通过重新训练或调整置信度阈值来更新所述目标模型。
17.根据权利要求1所述的方法,其中,所述样本图像为目标产品的图像,所述类别为所述目标产品的产品缺陷类别。
18.一种确定图像类别的方法,包括:
利用目标模型对待检图像进行预测,以得到所述待检图像的类别,其中,所述目标模型是根据验证测试指标从至少两个经训练的模型中确定的,所述至少两个经训练的模型具有不同训练轮数,所述验证测试指标包括以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数。
19.一种确定目标模型的方法,包括:
响应于用户对样本数据集的配置操作,获取样本数据集,所述样本数据集包括训练数据集和验证数据集,所述训练数据集和所述验证数据集中的每一个包括已被标注类别的多个样本图像;
根据所述样本数据集的特征信息配置训练参数,并生成训练参数展示界面,其中,所述训练参数展示界面展示的训练参数包括测试策略,所述测试策略包括至少两个训练轮数,所述特征信息包括所述样本数据集的样本数量;
根据所述训练参数利用所述训练数据集对深度学习模型进行训练,得到至少两个经训练的模型,所述至少两个经训练的模型与所述至少两个训练轮数一一对应;
利用所述验证数据集测试所述至少两个经训练的模型,生成验证测试结果;
基于所述验证测试结果,生成验证测试指标展示界面,所述验证测试指标展示界面用于展示以下各项中的至少一项:混淆矩阵、准确率、召回率和F1分数;
响应于用户针对所述至少两个经训练的模型的选择操作,将用户所选择的模型确定为目标模型。
20.根据权利要求19所述的方法,还包括:
响应于用户针对所述目标模型的离线测试任务建立操作,生成离线测试参数配置界面;
根据用户在所述离线测试参数配置界面的配置输入,建立离线测试任务;
根据所述配置输入,获取离线测试数据集,所述离线测试数据集包括已被标注类别的多个样本图像;
利用所述离线测试数据集测试所述目标模型,生成离线测试结果。
21.根据权利要求19或20所述的方法,其中,所述根据所述离线测试结果,更新针对至少一个类别的置信度阈值包括:
基于所述验证测试结果或者所述离线测试结果,生成曲线展示界面,所述曲线展示界面用于展示各个类别的准确率曲线和召回率曲线,其中,所述准确率曲线反映准确率和置信度阈值之间的关系,所述召回率曲线反映召回率与置信度阈值之间的关系;
响应于用户对至少一个类别的置信度阈值的修改操作,更新针对至少一个类别的置信度阈值。
22.根据权利要求19或20所述的方法,还包括:
基于所述验证测试结果或者所述离线测试结果,根据准确率或召回率,确定针对各个类别的推荐置信度阈值;
基于所述推荐置信度阈值,更新针对至少一个类别的置信度阈值;
响应于用户对所述置信度阈值的查看操作,生成置信度阈值展示界面。
23.根据权利要求20所述的方法,还包括:
基于所述离线测试结果,生成离线测试指标展示界面,所述离线测试指标展示界面用于展示以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布;
响应于用户对至少一个类别的置信度阈值的修改操作,更新针对至少一个类别的置信度阈值。
24.根据权利要求20所述的方法,还包括:
基于所述离线测试结果,生成错误结果展示界面,所述错误结果展示界面用于展示模型输出类别与真实类别不一致的数据。
25.根据权利要求23所述的方法,还包括:
响应于所述置信度阈值被更新,基于所述离线测试结果,生成指标展示界面,所述指标展示界面用于展示以下各项中的至少一项:准确率、召回率、F1分数、混淆矩阵、针对各个类别的模型输出数量和真实数量的分布、针对各个类别的置信度分布。
26.根据权利要求20所述的方法,其中,所述离线测试参数配置界面包括数据集选择选项,并且其中,所述根据所述配置输入,获取离线测试数据集包括:
响应于用户通过所述数据集选择执行的选择操作,基于与所述选择操作对应的样本数据集,获取所述离线测试数据集。
27.根据权利要求20所述的方法,其中,所述离线测试参数配置界面包括数据集上传选项,并且其中,所述根据所述配置输入,获取离线测试数据集还包括:
响应于用户通过所述数据集上传选项执行的上传操作,接收输入样本数据集;
基于所述输入样本数据集,获取所述离线测试数据集。
28.根据权利要求19或20所述的方法,还包括:
响应于用户针对所述目标模型的在线测试任务建立操作,生成在线测试参数配置界面;
根据用户在所述在线测试参数配置界面的配置输入,建立在线测试任务;
基于所述配置输入,获取在线测试数据集,所述在线测试数据集包括未被标注类别的多个图像;
利用所述在线测试数据集测试所述目标模型,生成在线测试指标,所述在线测试指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布;以及
以下两项中的一项:
响应于所述在线测试指标满足预设标准,呈现上线所述目标模型的选项;以及
响应于所述在线测试指标中的至少部分指标高于相关在线模型的对应测试指标,呈现上线所述目标模型的选项,其中,所述对应测试指标是基于所述相关在线模型针对所述在线测试数据集的输出结果得到的。
29.根据权利要求28所述的方法,其中,所述在线测试参数配置界面包括新模型上线选项,并且所述基于所述配置输入,获取在线测试数据集包括:
响应于用户对所述新模型上线选项的选择操作,与图像获取装置建立通讯连接,其中,所述图像获取装置被配置为获取待检图像;
经由所述通讯连接,接收来自所述图像获取装置的待检图像;
基于所接收的待检图像,获取所述在线测试数据集。
30.根据权利要求28所述的方法,其中,所述在线测试参数配置界面包括模型更新选项,并且所述基于所述配置输入,获取在线测试数据集包括:
响应于用户对所述模型更新选项的选择操作,基于相关在线模型所接收的图像,获取所述在线测试数据集,其中,所述相关在线模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
31.根据权利要求28所述的方法,还包括:
响应于用户选择上线所述目标模型的操作,生成上线审核界面;
响应于用户针对上线审核的确认操作,上线所述目标模型,使得所述目标模型被配置为接收来自图像获取装置的待检图像,并基于所接收的待检图像预测待检图像的类别。
32.根据权利要求31所述的方法,还包括:
响应于用户针对已上线的目标模型的监控任务建立操作,生成监控任务参数配置界面;
根据用户在所述监控任务参数配置界面的配置输入,建立监控任务;
根据所述配置输入,基于所述来自图像获取装置的待检图像,获取在线抽查数据;
接收针对所述在线抽查数据的人工复核结果,所述人工复核结果包括人工复核得到的待检图像的类别;
基于所述人工复核结果和所述目标模型预测得到的类别,生成在线抽查指标,所述在线抽查指标包括以下各项中的至少一项:准确率、召回率、混淆矩阵、针对各个类别的模型输出数量和人工复核数量的分布、针对各个类别的置信度分布。
33.一种确定图像类别的系统,包括:
数据管理模块,被配置为用于存储并管理样本数据;
训练和测试管理模块,被配置为用于执行如权利要求1至17中任一项所述的确定目标模型的方法、如权利要求18所述的确定图像类别的方法或如权利要求19至32中任一项所述的确定目标模型的方法;
模型管理模块,被配置为存储、展示并管理所述目标模型。
34.一种计算设备,包括:
存储器,其被配置成存储计算机可执行指令;
处理器,其被配置成当所述计算机可执行指令被处理器执行时执行根据权利要求1至32中的任一项所述的方法。
35.一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行根据权利要求1至32中的任一项所述的方法。
36.一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实现权利要求1至32中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211354700.1A CN118038104A (zh) | 2022-11-01 | 2022-11-01 | 确定目标模型的方法、确定图像类别的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211354700.1A CN118038104A (zh) | 2022-11-01 | 2022-11-01 | 确定目标模型的方法、确定图像类别的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118038104A true CN118038104A (zh) | 2024-05-14 |
Family
ID=90991914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211354700.1A Pending CN118038104A (zh) | 2022-11-01 | 2022-11-01 | 确定目标模型的方法、确定图像类别的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118038104A (zh) |
-
2022
- 2022-11-01 CN CN202211354700.1A patent/CN118038104A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7393515B2 (ja) | 分散型製品欠陥分析システム、方法及びコンピュータ可読記憶媒体 | |
US20230048386A1 (en) | Method for detecting defect and method for training model | |
CN108776808A (zh) | 一种用于检测钢包溶蚀缺陷的方法和装置 | |
CN108830837A (zh) | 一种用于检测钢包溶蚀缺陷的方法和装置 | |
EP4141786A1 (en) | Defect detection method and apparatus, model training method and apparatus, and electronic device | |
CN110009614A (zh) | 用于输出信息的方法和装置 | |
CN112613569B (zh) | 图像识别方法、图像分类模型的训练方法及装置 | |
CN115049057B (zh) | 一种模型部署方法、装置、电子设备和存储介质 | |
CN112183627B (zh) | 生成预测密度图网络的方法和车辆年检标数量检测方法 | |
CN114862832A (zh) | 缺陷检测模型的优化方法、装置、设备及存储介质 | |
US20220366244A1 (en) | Modeling Human Behavior in Work Environment Using Neural Networks | |
CN117319223A (zh) | 一种基于数字孪生技术的领导驾驶舱可视化方法及系统 | |
CN103913150B (zh) | 智能电能表电子元器件一致性检测方法 | |
CN118038105A (zh) | 确定图像类别以及确定置信度阈值的方法和装置 | |
CN115546218B (zh) | 置信度阈值确定方法和装置、电子设备和存储介质 | |
CN112700112B (zh) | Rpa流程调整方法、装置、电子设备及存储介质 | |
JP2019075078A (ja) | 工事現場画像判定装置及び工事現場画像判定プログラム | |
CN111414921B (zh) | 样本图像处理方法、装置、电子设备及计算机存储介质 | |
CN118038104A (zh) | 确定目标模型的方法、确定图像类别的方法及系统 | |
CN118520055A (zh) | 一种基于虚实融合的数据驾驶舱系统 | |
CN105468887B (zh) | 数据分析系统以及方法 | |
JP6341550B1 (ja) | 工事現場画像判定装置及び工事現場画像判定プログラム | |
US20220261998A1 (en) | Adaptive machine learning system for image-based biological sample constituent analysis | |
CN116167454A (zh) | 智能化的二分类模型训练方法及装置 | |
CN111767988B (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 |