CN116977770A - 图像分类模型的构建方法、图像分类方法、装置和设备 - Google Patents
图像分类模型的构建方法、图像分类方法、装置和设备 Download PDFInfo
- Publication number
- CN116977770A CN116977770A CN202310248006.XA CN202310248006A CN116977770A CN 116977770 A CN116977770 A CN 116977770A CN 202310248006 A CN202310248006 A CN 202310248006A CN 116977770 A CN116977770 A CN 116977770A
- Authority
- CN
- China
- Prior art keywords
- classification model
- image
- training
- category
- class
- 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
- 238000013145 classification model Methods 0.000 title claims abstract description 496
- 238000000034 method Methods 0.000 title claims abstract description 147
- 238000010276 construction Methods 0.000 title description 10
- 238000012549 training Methods 0.000 claims abstract description 277
- 230000008569 process Effects 0.000 claims abstract description 68
- 238000013140 knowledge distillation Methods 0.000 claims abstract description 56
- 239000013598 vector Substances 0.000 claims description 70
- 239000011159 matrix material Substances 0.000 claims description 64
- 238000012545 processing Methods 0.000 claims description 47
- 238000000605 extraction Methods 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 31
- 238000011176 pooling Methods 0.000 claims description 27
- 230000004927 fusion Effects 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000002372 labelling Methods 0.000 claims description 13
- 238000012216 screening Methods 0.000 claims description 5
- 238000013473 artificial intelligence Methods 0.000 abstract description 19
- 238000005516 engineering process Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004821 distillation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 229910052799 carbon Inorganic materials 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning 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/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
- 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/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
- 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)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种图像分类模型的构建方法、图像分类方法、装置、设备、存储介质和程序产品。所述方法涉及人工智能,包括:根据图像样本集和预训练得到第一分类模型的输出数据,输出数据包括表示图像类别在空间上的位置信息的类别空间数据,和表示各图像类别之间的关联关系的类别关联参数,对第二分类模型进行知识蒸馏训练。在训练过程中,根据图像样本集、类别空间数据和类别关联参数更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。采用本方法可实现利用图像类别在空间上的位置信息和各图像类别之间的关联关系,对第二分类模型的全面训练,提升训练好的图像分类模型的识别分类准确度。
Description
技术领域
本申请涉及人工智能技术领域,特别是涉及一种图像分类模型的构建方法、图像分类方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着人工智能技术的发展,以及在图像识别、目标检测领域下,对图像上不同对象的分类和识别准确度要求日益提升,出现了通过训练得到分类模型,并利用分类模型来执行识别分类任务,以获得图像的对象识别结果的方式。
为了减少模型训练时间以及训练过程中的资源消耗,通常采用知识蒸馏的方式训练得到分类模型。其中,知识蒸馏是深度学习中一种模型小型化技术,其主要框架是先训练一个较大的教师模型,而后将教师模型的知识迁移给较小的学生模型,以实现模型小型化,并提高小模型的效果。
然而,传统的知识蒸馏方式,其迁移的知识通常包括大模型的输出结果和特征图等,而仅将大模型的输出结果和特征图进行迁移的方式,并未全面考虑在图像识别及目标检测领域下,基于图像上的多个图像类别的准确识别要求,实际所需要的特征和数据,导致训练得到的分类模型,由于缺少全面的实际所需特征和数据,仍然存在分类识别准确度较为低下的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升图像的对象分类、识别准确度的图像分类模型的构建方法、图像分类方法、装置、计算机设备、存储介质和计算机程序产品。
第一方面,本申请提供了一种图像分类模型的构建方法。所述方法包括:
获取图像样本集;
根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第二方面,本申请还提供了一种图像分类方法。所述方法包括:
接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;
其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第三方面,本申请还提供了一种图像分类模型的构建装置。所述装置包括:
图像样本集获得模块,用于获取图像样本集;
图像分类模型获得模块,用于根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第四方面,本申请还提供了一种图像分类装置。所述装置包括:
待分类图像获取模块,用于接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
图像分类处理模块,用于根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第五方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取图像样本集;
根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第六方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;
其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第七方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取图像样本集;
根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第八方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;
其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第九方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取图像样本集;
根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
第十方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;
其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
上述图像分类模型的构建方法、图像分类方法、装置、计算机设备、存储介质和计算机程序产品中,通过获取图像样本集,并根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练,以获得训练好的图像分类模型。其中,在训练过程中,通过将第一分类模型输出的类别空间数据和类别关联参数,传递至第二分类模型,使得第二分类模型可学习到第一分类模型传递的表示图像类别在空间上的位置信息的类别空间数据、以及表示各图像类别之间的关联关系的类别关联参数,同时利用图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,则将训练结束时的第二分类模型,确定为训练好的图像分类模型,从而达到根据图像分类过程所需的图像类别在空间上的位置信息、以及各图像类别之间的关联关系,完成对第二分类模型的全面训练的目的,以获得模型精度、分类准确度更高的图像分类模型,进一步提升利用训练好的图像分类模型,进行图像分类时的对象识别和分类准确度。
附图说明
图1为一个实施例中图像分类模型的构建方法、图像分类方法的应用环境图;
图2为一个实施例中图像分类模型的构建方法的流程示意图;
图3为一个实施例中训练得到第一分类模型的流程示意图;
图4为一个实施例中预训练得到第一分类模型的过程示意图;
图5为一个实施例中获得第一分类模型的类别空间数据的过程示意图;
图6为一个实施例中将训练结束时的第二分类模型确定为训练好的图像分类模型的流程示意图;
图7为一个实施例中对第二分类模型进行知识蒸馏训练的过程示意图;
图8为另一个实施例中图像分类模型的构建方法的流程示意图;
图9为一个实施例中图像分类方法的流程示意图;
图10为一个实施例中图像分类模型的构建装置的结构框图;
图11为一个实施例中图像分类装置的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的图像分类模型的构建方法以及图像分类方法,具体涉及人工智能技术,可应用于云技术、人工智能、智慧交通、网络媒体以及辅助驾驶等各种场景。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
其中,计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、检测和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。而机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例提供的图像分类模型的构建方法、以及图像分类方法,具体涉及人工智能技术中的计算机视觉技术和机器学习等技术,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备、便携式可穿戴设备以及飞行器等,物联网设备可为智能音箱、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群。
进一步地,终端102和服务器104均可单独用于执行本申请实施例中提供的图像分类模型的构建方法以及图像分类方法,终端102和服务器104也可以协同执行本申请实施例提供的图像分类模型的构建方法以及图像分类方法。举例来说,以终端102和服务器104协同执行本申请实施例提供的图像分类模型的构建方法为例,服务器104通过获取图像样本集,并根据图像样本集以及和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练,获得训练好的图像分类模型。其中,第一分类模型的输出数据具体包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系。图像样本集以及第一分类模型的输出数据,可存储在服务器104的云端存储中、或存储在数据存储系统中、或存储在终端102的本地存储中,当需要构建图像分类模型时,可从服务器104、或数据存储系统、或终端102中获取。进一步地,在训练过程中,服务器104可根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,则将训练结束时的第二分类模型,确定为训练好的图像分类模型。
同样地,以终端102和服务器104协同执行本申请实施例提供的图像分类方法为例,服务器104通过接收终端102发送的图像分类请求,并获取与图像分类请求对应的待分类图像。其中,待分类图像可存储在服务器104的云端存储中、或存储在数据存储系统中、或存储在终端102的本地存储中,当需要进行图像分类时,可从服务器104、或数据存储系统、或终端102中获取。进一步地,服务器104根据训练好的图像分类模型,对待分类图像进行分类处理,获得待分类图像对应的至少一个图像类别,并将待分类图像所对应的图像类别反馈至终端102。其中,训练好的图像分类模型,是服务器104根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的。其中,第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系。进一步地,在训练过程中,服务器104可根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
在一个实施例中,如图2所示,提供了一种图像分类模型的构建方法,以该方法应用于图1中的服务器为例进行说明,具体包括以下步骤:
步骤S202,获取图像样本集。
其中,图像样本集用于对第一分类模型进行预训练,还用于结合预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练。
具体地,图像样本集具体是可以是进行标签标注后的图像样本集,进行标签标注后的图像样本集中包括多个图像样本,且各图像样本可以携带正标签或负标签。其中,正标签表示该图像样本属于正样本,而负标签用于表示该图像样本属于负样本,图像样本集通常包括多个正、负样本,用于对初始模型的模型参数进行更新,以获得训练好的模型。
举例来说,针对图像样本集中的各图像样本,包括的图像类别包括人物、汽车、建筑或自行车等,根据实际场景的分类要求不同,设置不同图像类别作为正标签。具体来说,对图像样本进行标注时,比如属于单分类场景时,可将人物的图像类别作为正标签,即携带人物的图像类别的图像样本即为正样本,若不携带人物的图像类别的图像样本则为负样本。同样地,也可以将汽车的图像类别作为正标签,即携带汽车的图像类别的图像样本即为正样本,若不携带汽车的图像类别的图像样本则为负样本。
同样地,若属于多分类场景时,可将人物、自行车的图像类别作为正标签,即携带人物或自行车的图像类别的图像样本、或同时携带人物和自行车的图像类别的图像样本,为正样本,不携带人物或自行车的图像类别的图像样本,则为负样本。其中,在多分类场景下,还可以将人物、自行车、汽车的图像类别作为正标签,即作为正标签的图像类别的数量不进行具体限定,同样地,图像样本中包括的图像类别也不进行具体限定,比如图像样本中还可以包括船只、飞机、动物、植物、路障、以及指示牌等多种对象。
步骤S204,根据图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练,第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系。在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
其中,第一分类模型和第二分类模型的网络层级结构相同,且第一分类模型的层级节点数大于第二分类模型中同一层级的层级节点数,进而在进行知识蒸馏训练时,是将预训练得到的第一分类模型中的知识传递至第二分类模型中。
可以理解的是,预训练得到的第一分类模型作为知识蒸馏训练中的教师模型,用于将其输出数据作为知识传递至第二分类模型,以用于对第二分类模型的训练,而第二分类模型则是未经学习或训练的学生模型。其中,第一分类模型传递的知识可以理解为是第一分类模型的输出数据,具体包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数则用于表示各图像类别之间的关联关系。
具体地,根据图像样本集对第一分类模型进行预训练,获得预训练后的第一分类模型,并获取预训练后的第一分类模型的输出数据,包括类别空间数据和类别关联参数。
其中,根据图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练的过程,可以理解为:根据图像样本集对第二分类模型进行训练,同时结合根据第一分类模型的输出数据即类别空间数据和类别关联参数,对第二分类模型进行知识蒸馏训练,达到根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数的目的,从而实现对第二分类模型的更新和训练,以在满足训练结束条件时,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
进一步地,由于第一分类模型和第二分类模型的网络层级结构相同,则根据图像样本集对第一分类模型进行预训练的方式,和在知识蒸馏训练过程中,根据图像样本集对第二分类模型进行训练的方式是相同的。
上述图像分类模型的构建方法中,通过获取图像样本集,并根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练,以获得训练好的图像分类模型。其中,在训练过程中,通过将第一分类模型输出的类别空间数据和类别关联参数,传递至第二分类模型,使得第二分类模型可学习到第一分类模型传递的表示图像类别在空间上的位置信息的类别空间数据、以及表示各图像类别之间的关联关系的类别关联参数,同时利用图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,则将训练结束时的第二分类模型,确定为训练好的图像分类模型,从而达到根据图像分类过程所需的图像类别在空间上的位置信息、以及各图像类别之间的关联关系,完成对第二分类模型的全面训练的目的,以获得模型精度、分类准确度更高的图像分类模型,进一步提升利用训练好的图像分类模型,进行图像分类时的对象识别和分类准确度。
在一个实施例中,如图3所示,训练得到第一分类模型的方式,具体包括以下步骤:
步骤S302,基于特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量。
其中,第一分类模型是根据图像样本集对初始分类模型进行预训练得到的,初始分类模型具体包括特征提取层、池化层和全连接层,则具体是根据图像样本集中的各图像样本,对初始分类模型的特征提取层、池化层和全连接层进行训练,更新各层的参数,直至满足训练结束条件时,获得预训练的第一分类模型。
具体地,对初始分类模型进行训练的方式为类激活映射(即class activationmapping)训练方式,可生成与图像样本中不同图像类别相关的类别空间数据,即图像类别在空间上的位置信息。
进一步地,通过初始分类模型的特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量。其中,初始分类模型属于卷积神经网络模型,而卷积神经网络模型通常包括多层特征提取层,本申请实施例中,具体是通过初始分类模型的最后一层特征提取层,对图像样本集中的各图像样本进行特征提取,以获得特征张量。
其中,每一样本图像对应一个特征张量,特征张量的尺寸为C*H*W,C表示特征层数量,H、W分别表示特征对应的高与宽,特征层数量C具体是通过最后一层特征提取层进行卷积操作时使用的卷积核数量确定的,不进行具体限定,可根据实际应用场景设置不同的卷积核数量,即对应不同的特征层数量C。
步骤S304,基于池化层,对各特征张量进行空间池化处理,获得与各图像样本对应的特征向量。
具体地,针对特征提取层进行特征提取获得的特征张量,基于初始分类模型的池化层,对各特征张量进行空间池化处理,具体可以是对特征张量在空间上进行全局平均池化(即global avgpool)处理,从而将特征张量在空间上池化为特征向量。
其中,每一图像样本对应一个特征张量、以及一个特征向量,图像样本对应的特征张量或特征向量,可用于表示图像样本上涉及的所有图像类别。其中,特征张量用F进行表示,则具体可以用{F1、F2、……、FC}表示,即可以包括C层,每一层可对应不同的特征。
举例来说,F1层对应图像样本中车轮的特征,不对具体图像类别进行限定,即既可以是汽车的车轮的特征,也可以是自行车的车轮特征。同样地,特征张量用F中表示的特征,也可以和图像类别的进行对应,比如限定F1层对应图像样本中汽车的图像类别,即F1层中包括的是汽车的车轮的特征,而不包括自行车的车轮的特征。
进一步地,将特征张量在空间上池化为特征向量的过程,可以理解为将尺寸为C*H*W的特征张量,设置C个通道,在空间上基于每个通道对H*W进行池化处理,每个通道输出一个池化后的特征值,从而可得到C个特征值,即得到与特征张量对应的池化后的C维特征向量。
步骤S306,基于与全连接层对应的类别参数矩阵,对各图像样本对应的特征向量进行加权处理,获得预测类别数据,类别参数矩阵中包括与不同类别对应的类别关联参数。
其中,初始分类模型的全连接层对应的类别参数矩阵中,包括与不同类别对应的类别关联参数,其中,类别关联参数可以理解为各图像类别之间的关联关系,即初始分类模型的全连接层用于表示各个图像类别的特征中心,而全连接的类别参数矩阵(或权重),用于表征各个图像类别之间的关联关系。
举例来说,在多分类场景下,各个图像类别之间存在类别间的相关性,例如“自行车”的图像类别与“人物”的图像类别,通常在一个图像样本中同时出现,则“自行车”的图像类别与“人物”的图像类别之间存在关联关系,进而利用图像类别之间的关联关系,对模型进行训练,有助于模型进行分类,提升分类精准度。
具体地,通过将特征向量输入至全连接层中,利用全连接层的类别参数矩阵,对特征张量进行加权处理,获得对应图像样本的预测类别数据。其中,通过获取全连接层对应的类别参数矩阵,并从与全连接层对应的类别参数矩阵中,确定出与图像样本的各特征向量一一对应的类别关联参数。进一步地,依次对每一图像样本的各特征向量、以及与各特征向量一一对应的类别关联参数,进行加权处理,获得对应图像样本的预测类别数据。
在一个实施例中,特征张量用F进行表示,则具体可以用{F1、F2、……、FC}表示,特征向量用V表示,则具体可以用{V1、V2、……、VC}进行表示,且F1和V1对应,F2和V2对应,……,FC和VC对应,则确定出与特征向量V中的V1、V2、……、以及VC等各自对应的类别关联参数,也可理解为确定出与特征张量F中的F1、F2、……、以及FC等各自对应的类别关联参数。
同样地,全连接层的类别参数矩阵,可以理解为是N个向量长度为C的类别向量组成的矩阵,每个类别向量表示每个图像类别的特征中心。其中,对于每个类别向量,其内部的各类别关联参数,与特征张量F在空间上池化后得到特征向量V相对应。
具体地,全连接层的类别参数矩阵(即N个向量长度为C的类别向量组成的矩阵),具体包括{w11,w12,…w1C,w21,w22,…w2C…wN1,wN2…wNC},通过以下公式(1)所示的矩阵进行表示:
其中,{w11,w12,…w1C}可以理解为是第一个类别向量,{w21,w22,…w2C}可以理解为是第二个类别向量,以此类推,{wN1,wN2…wNC}可以理解为是第N个类别向量。其中,类别向量的数量N和图像样本中的图像类别数量相对应,类别向量的长度为C,和特征向量V中的特征维度C相对应。
具体来说,比如图像样本中的图像类别为1,即N为1,即从类别参数矩阵中确定出的类别向量为{w11,w12,…w1C},特征向量V为{V1、V2、……、VC},其中,V1和w11对应,V2和W12对应,以此类推,VC和w1C对应。
又比如图像样本中的图像类别为2,即N为2,则从类别参数矩阵中确定出的类别向量为第一个类别向量{w11,w12,…w1C},和第二个类别向量{w21,w22,…w2C},特征向量V同样为{V1、V2、……、VC},则计算第一个图像类别的预测类别数据时,则是基于第一个类别向量{w11,w12,…w1C}、特征向量V即{V1、V2、……、VC},进行加权处理。而计算第二个图像类别的预测类别数据时,则是基于第二个类别向量{w21,w22,…w2C}、特征向量V即{V1、V2、……、VC},进行加权处理,从而得到的是两个图像类别分别对应的预测类别数据。
步骤S308,若预测类别数据满足对初始分类模型的训练结束条件,获得训练好的第一分类模型。
具体地,对始分类模型的模型参数进行更新的过程中,基于二值交叉熵损失函数(即LBCE损失函数,全称为Binary Cross Entropy Loss),结合预测类别数据进行损失值计算,确定对初始分类模型的更新过程中的损失值。其中,当确定更新过程中的损失值满足更新结束条件时,获得训练好的第一分类模型。
其中,更新结束条件可以是更新过程中的损失值达到预设交叉熵损失阈值,即当确定更新过程中的损失值达到预设交叉熵损失阈值时,结束对初始分类模型的参数更新,将更新结束时的初始分类模型确定为训练好的第一分类模型。
在一个实施例中,如图4所示,提供了一种预训练得到第一分类模型的过程,参照图4可知,通过图像样本输入初始分类模型(具体可以是卷积神经网络)中,用于对初始分类模型进行训练,针对输入的每个图像样本,初始分类模型中的特征提取层,对图像样本集中的各图像样本进行特征提取,获得如图4所示的特征张量F(尺寸为C*H*W)。
进一步地,参照图4可知,通过基于初始分类模型的池化层,对特征张量F进行空间池化处理,获得与各图像样本对应的特征向量V。同样地,通过获取初始分类模型的全连接层对应的类别参数矩阵M(即图4中的Fc weight),并基于与全连接层对应的类别参数矩阵M,对各图像样本对应的特征向量V进行加权相加处理,获得预测类别数据(即图4中的logits)。最终,若预测类别数据满足对初始分类模型的训练结束条件,则获得训练好的第一分类模型。
在一个实施例中,获得预训练得到的第一分类模型后,需获取第一分类模型的输出数据,输出数据包括类别空间数据;获得类别空间数据的方式,包括:
从与全连接层对应的类别参数矩阵中,确定出与图像样本的各特征张量一一对应的类别关联参数;依次对每一图像样本的各特征张量、以及与各特征张量一一对应的类别关联参数,进行加权处理,获得对应图像样本的类别空间数据。
其中,第一分类模型的全连接层对应的类别参数矩阵中,包括与不同类别对应的类别关联参数,通过从与全连接层对应的类别参数矩阵中,确定出与图像样本的各特征张量一一对应的类别关联参数,以依次基于每一样本图像对应的特征向量和对应的类别关联参数,进行加权处理,从而获得对应图像样本的类别空间数据。
具体来说,每一图像样本对应一个特征张量F,可以用{F1、F2、……、FC}表示,即可以包括C层,每一层可对应不同的特征。而全连接层的类别参数矩阵(即N个向量长度为C的类别向量组成的矩阵),具体包括{w11,w12,…w1C,w21,w22,…w2C…wN1,wN2…wNC}。其中,{w11,w12,…w1C}可以理解为是第一个类别向量,{w21,w22,…w2C}可以理解为是第二个类别向量,以此类推,{wN1,wN2…wNC}可以理解为是第N个类别向量。其中,类别向量的数量N和图像样本中的图像类别数量相对应,类别向量的长度为C,特征张量F中的特征层C对应。
举例来说,若图像样本中的图像类别为1,即N为1,即从类别参数矩阵中确定出的类别向量为{w11,w12,…w1C},特征张量F为{向量F1、F2、……、FC},其中,F1和w11对应,F2和W12对应,以此类推,FC和w1C对应。又比如图像样本中的图像类别为2,即N为2,则从类别参数矩阵中确定出的类别向量为第一个类别向量{w11,w12,…w1C},和第二个类别向量{w21,w22,…w2C},特征张量F同样为{F1、F2、……、FC},则计算第一个图像类别的预测类别数据时,则是基于第一个类别向量{w11,w12,…w1C}、特征张量F即{F1、F2、……、FC},进行加权处理。而计算第二个图像类别的预测类别数据时,则是基于第二个类别向量{w21,w22,…w2C}、特征张量F即{F1、F2、……、FC},进行加权处理,从而得到的是两个图像类别分别对应的预测类别数据。
进一步地,采用以下公式(2),对进行加权处理,确定图像样本中与每一图像类别对应的类别空间数据Sj:
Sj=F1*wj1+F2*wj2+……+FC*wjC(2);
其中,j表示图像类别,为正整数,具体可以包括N个图像类别,即j的取值范围为[0,N],wj1表示类别参数矩阵中第j个类别向量的第1个参数,以此类推,wjC表示类别参数矩阵中第j个类别向量的第C个参数,而F1、F2、……、FC,则表示图像样本的特征张量,则进行加权相加处理时,具体是F1和wj1、F2和wj2、……、以及FC和wjC,进行加权后再相加,得到第j个类别的类别空间数据。
同样地,当存在多个图像类别(比如N个图像类别)时,计算得到每个图像类别的类别空间数据,进而由N个类别空间数据组成得到空间信息层S。其中,空间信息S中包括N个不同图像类别对应的类别空间数据,当需要进行知识蒸馏处理时,是将预训练得到的第一分类模型的空间信息层中的类别空间数据,传递至第二分类模型。
在一个实施例中,如图5所示,提供了一种获得第一分类模型的类别空间数据的过程参照图5可知,将样本图像输入第一分类模型后,通过第一分类模型进行特征提取获得特征张量F,以及获取第一分类模型的全连接层对应的类别参数矩阵M,通过类别参数矩阵M中的类别关联参数,对特征张量F进行加权相加处理,从而获得如图5所示的与图像样本对应的类别空间数据Sj。
在一个实施例中,第一分类模型的输出数据具体包括第一类别空间数据和第一类别关联参数。其中,在获取图像样本集之后,还包括:获取图像样本集中各图像样本对应的标注标签;从图像样本集中,筛选出标注标签为正标签的目标图像样本。
具体地,图像样本集中各图像样本通常包括正样本和负样本,正样本携带的标注标签为正标签,而负样本携带的标注标签为负标签,而在知识蒸馏过程中,为防止错误知识传递,通常采用传递正样本对应的输出数据,而不传递负样本对应的输出数据的方式。
进一步地,通过获取各样本图像对应的标注标签,并将标注标签为正标签的正样本,作为目标图像样本,即具体是需要获取目标图像样本对应的输出数据,即获取第一分类模型的输出数据时,是根据图像样本集中的各图像样本,对第一分类模型进行训练,获得第一分类模型输出的与目标图像样本对应的第一类别空间数据。同样地,获取与第一分类模型的全连接层关联的第一类别参数矩阵,并从第一类别参数矩阵中提取与目标图像样本对应的第一类别关联参数。
其中,在从第一类别参数矩阵中提取与目标图像样本对应的第一类别关联参数后,具体是依次对目标图像样本的各特征张量、以及与各特征张量一一对应的第一类别关联参数,进行加权处理,以获得第一类别空间数据。
本实施例中,根据图像样本对初始分类模型进行预训练,具体是基于特征提取层对图像样本集中的各图像样本进行特征提取,获得特征张量,以及基于池化层对各特征张量进行空间池化处理,获得与各图像样本对应的特征向量,还包括基于与全连接层对应的类别参数矩阵,对各图像样本对应的特征向量进行加权处理,获得预测类别数据,进而若预测类别数据满足对初始分类模型的训练结束条件,获得训练好的第一分类模型。实现了根据图像样本对初始分类模型的各层进行训练、模型参数的更新,同时获得在知识蒸馏训练过程中需要进行传递的类别空间数据以及类别关联参数,从而为后续图像分类模型的训练提供全面、准确的类别相关数据,提升训练得到的图像分类模型的分类精准度。
在一个实施例中,如图6所示,将训练结束时的第二分类模型确定为训练好的图像分类模型的步骤,即在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型的步骤,具体包括:
步骤S602,根据图像样本集中的各图像样本,对第二分类模型进行训练,获得第二分类模型输出的与目标图像样本对应的第二类别空间数据。
其中,在获取图像样本集之后,还包括:获取图像样本集中各图像样本对应的标注标签;从图像样本集中,筛选出标注标签为正标签的目标图像样本。
具体地,图像样本集中各图像样本通常包括正样本和负样本,正样本携带的标注标签为正标签,而负样本携带的标注标签为负标签,而在知识蒸馏过程中,为防止错误知识传递,通常采用传递正样本对应的输出数据,而不传递负样本对应的输出数据的方式。
进一步地,通过获取各样本图像对应的标注标签,并将标注标签为正标签的正样本,作为目标图像样本,即具体是需要获取目标图像样本对应的输出数据,针对第二分类模型进行训练时,具体是获得第二分类模型输出的与目标图像样本对应的第二类别空间数据。
在一个实施例中,根据图像样本集中的各图像样本,对第二分类模型进行训练的过程,和根据图像样本集中的各图像样本预训练得到第一分类模型的过程相同,第二分类模型同样包括特征提取层、池化层以及全连接层,训练过程包括:
基于特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量;基于池化层,对各特征张量进行空间池化处理,获得与各图像样本对应的特征向量;基于与全连接层对应的类别参数矩阵,对各图像样本对应的特征向量进行加权处理,获得预测类别数据。
其中,在预测类别数据满足对第二分类模型的类别空间数据提取条件时,则从与全连接层对应的类别参数矩阵中,确定出与图像样本的各特征张量一一对应的类别关联参数,依次对每一图像样本的各特征张量、以及与各特征张量一一对应的类别关联参数,进行加权处理,从而获得第二分类模型输出的第二类别空间数据。
步骤S604,获取与第二分类模型的全连接层关联的第二类别参数矩阵,并从第二类别参数矩阵中提取与目标图像样本对应的第二类别关联参数。
具体地,在获得与第二分类模型的全连接层关联的第二类别参数矩阵后,为防止知识蒸馏训练过程中的错误知识传递,同样是需要从第二类别参数矩阵中提取与目标图像样本(即正样本)对应的第二类别关联参数。
步骤S606,基于第一类别空间数据和第二类别空间数据,确定第一损失值。
具体地,通过确定第一类别空间数据和第二类别空间数据之间的差值,并进一步判断该差值是否满足损失计算条件。其中,若差值满足损失计算条件,根据第一处理逻辑,确定与目标图像类别对应的第一损失值。同样地,若差值不满足损失计算条件,根据第二处理逻辑,确定与目标图像类别对应的第一损失值。
其中,损失计算条件具体可以是第一类别空间数据和第二类别空间数据之间的差值的绝对值是否小于预设差值阈值,其中,预设差值阈值具体可以取1,也可以取其他数值,可根据实际需求进行调整和设置。
在一个实施例中,具体通过以下公式(3)计算得到第一损失值Lkd_spatial:
其中,i表示某个图像类别,I表示图像样本中的目标图像类别总数,根据实际场景的不同,图像样本中确定出的目标图像类别数量不同,比如为多分类场景事,目标图像类别的数量大于1,可以是3、4、5等等不同的取值。li表示图像样本中某个图像类别的类别损失值,当存在多个目标图像类别时,则需要计算得到每个图像类别的类别损失值,并对各图像类别的类别损失值进行求和,以得到第一损失值Lkd_spatial。
进一步地,具体通过以下公式(4)计算每个图像类别的类别损失值li:
其中,xi表示第二分类模型的类别空间数据,即第二类别空间数据,yi表示第一分类模型的类别空间数据,即第一类别空间数据,通过计算第一类别空间数据yi和第二类别空间数据xi之间的差值的绝对值,并判断该差值的绝对值是否小于预设差值阈值1。
具体地,若满足损失计算条件,即确定|xi-yi|(即差值的绝对值)小于预设差值阈值1,则根据第一处理逻辑计算类别损失值li=0.5*(xi-yi)。相反地,若不满足损失计算条件,即处于除|xi-yi|<1以外的其他情况下时,则根据第二处理逻辑计算类别损失值li=|xi-yi|-0.5。
步骤S608,基于第一类别关联参数和第二类别关联参数,确定第二损失值。
具体地,基于第一类别关联参数和第二类别关联参数,进行损失值计算,具体是采用均方差损失函数计算方式,计算得到第二损失值。
进一步地,具体采用以下公式(5),计算得到第二损失值:
其中,Fi表示第二类别关联参数,Ei表示第一类别关联参数,i表示某个图像类别,I表示图像样本中的目标图像类别总数,根据实际场景的不同,图像样本中确定出的目标图像类别数量不同,比如为多分类场景事,目标图像类别的数量大于1,可以是3、4、5等等不同的取值。同样地,(Fi-Ei)2表示图像样本中某个图像类别的特征损失值,当存在多个目标图像类别时,则需要计算得到每个图像类别的特征损失值,并对各图像类别的特征损失值进行求和,以得到第二损失值Lkd_class。
步骤S610,根据与第一损失值对应的第一权重、第一损失值、与第二损失值对应的第二权重、以及第二损失值,确定融合训练损失值。
具体地,通过获取与第一损失值对应的第一权重、以及与第二损失值对应的第二权重,并根据第一权重、第一损失值、第二权重、第二损失值、以及二值交叉熵损失函数值,确定融合损失值。
进一步地,具体采用以下公式(6),计算得到融合损失值L:
L=α1Lkd_spatial+α2Lkd_class+LBCE (6);
其中,α1表示第一权重,Lkd_spatial为第一损失值,α2表示第二权重,Lkd_class为第二损失值,LBCE为二值交叉熵损失函数值(即Binary Cross Entropy Loss)。其中,α1、α2作为调整参数,可根据实际需求进行设置和调整,不具体限定为某一个或者某些取值,比如可以根据实际需求设置α1为0.1,设置α2为1等,还可以是其他取值。
步骤S612,若融合训练损失值满足训练结束条件,完成对第二分类模型的模型参数的更新,并将更新结束时的第二分类模型,确定为训练好的图像分类模型。
具体地,训练结束条件可以是融合训练损失值达到对应的预设融合损失值,即当确定融合训练损失值达到对应的预设融合损失值,确定满足训练结束条件,完成对第二分类模型的模型参数的更新,即完成对第二分类模型的知识蒸馏训练,并将训练结束时的第二分类模型,确定为训练好的图像分类模型。
在一个实施例中,如图7所示,提供了一种对第二分类模型进行知识蒸馏训练的过程,即根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练的过程,参照图7可知,在进行知识蒸馏训练之前,根据图像样本集对初始分类模型进行预训练,获得预训练后的第一分类模型(即图7中的教师网络)。
具体地,根据图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练的过程,具体包括:
一方面,参照图7可知,将图像样本集输入预训练得到的第一分类模型,通过第一分类模型的特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量Ft(尺寸为C*H*W)。进一步地,获取第一分类模型的全连接层对应的第一类别参数矩阵Mt,基于与全连接层对应的第一类别参数矩阵Mt,对各图像样本对应的特征张量Ft进行加权处理,获得第一类别空间数据St。
另一方面,参照图7可知,在将图像样本集输入预训练得到的第一分类模型的同时,将图像样本集输入第二分类模型中,通过第二分类模型的特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量Fs(尺寸为C*H*W)。进一步地,获取第二分类模型的全连接层对应的第二类别参数矩阵Ms,基于与全连接层对应的第二类别参数矩阵Ms,对各图像样本对应的特征张量Fs进行加权处理,获得第二类别空间数据Ss。
第三,参照图7可知,基于第一类别空间数据St和第二类别空间数据Ss,确定第一损失值Lkd_spatial,基于第一类别参数矩阵Ms中的第一类别关联参数和第二类别参数矩阵Ms中的第二类别关联参数,确定第二损失值Lkd_class。进而基于第一损失值Lkd_spatial、第一损失对应的第一权重、第二损失值Lkd_class、第二损失值对应的第二权重、以及二值交叉熵损失函数值,确定融合损失值L。
进一步地,若融合训练损失值L满足训练结束条件,完成对第二分类模型的模型参数的更新,并将更新结束时的第二分类模型,确定为训练好的图像分类模型。
在一个实施例中,比如在多分类场景下中,类别空间数据表示图像类别在空间上的位置信息,而类别关联参数表示各图像类别之间的关联关系,两者对于多分类场景下的分类精准度均起到辅助提升作用。
具体地,在知识蒸馏训练过程中,一方面,通过生成与类别空间数据组成的空间信息层(也可以理解为是与类别空间位置相关的累积激活层),将该空间信息层中的类别空间数据作为知识,传递至第二分类模型。
另一方面,将预训练的得到的第一分类模型的全连接层对应的类别关联参数(也可以理解为是全连接层的权重数据),作为知识传递至第二分类模型,实现将各图像类别之间的关联关系进行传递。其中,对于第一分类模型,其全连接层可以表示为各个类别的特征中心,可以通过传递类特征中心,实现将第一分类模型中各图像类别之间的关联关系的知识传递给第二分类模型,具体是在训练过程中,使得第二分类模型的第二类别关联参数,逼近第一分类模型的第一类别关联参数,从而实现知识传递。
本实施例中,根据图像样本集中的各图像样本,对第二分类模型进行训练,获得第二分类模型输出的与目标图像样本对应的第二类别空间数据。通过获取与第二分类模型的全连接层关联的第二类别参数矩阵,并从第二类别参数矩阵中提取与目标图像样本对应的第二类别关联参数,以基于第一类别空间数据和第二类别空间数据,确定第一损失值,以及基于第一类别关联参数和第二类别关联参数,确定第二损失值。进一步地,根据与第一损失值对应的第一权重、第一损失值、与第二损失值对应的第二权重、以及第二损失值,确定融合训练损失值,并在确定融合训练损失值满足训练结束条件时,完成对第二分类模型的模型参数的更新,并将更新结束时的第二分类模型,确定为训练好的图像分类模型。实现了根据样本图像集、以及预训练得到的第一分类模型的第一类别空间数据和第一类别关联参数,对第二分类模型的知识蒸馏训练,并在训练过程中,同时考虑知识蒸馏训练的损失值以及根据样本图像对第二分类模型的训练损失,通过全面考虑训练损失以减少训练过程中的误差,提升训练好的图像分类模型的模型精度,进一步提升后续进行图像识别、分类识别的准确度。
在一个实施例中,如图8所示,提供了一种图像分类模型的构建方法,具体包括以下步骤:
步骤S801,获取图像样本集,图像样本集用于对初始分类模型进行预训练获得预训练后的第一分类模型,初始分类模型包括特征提取层、池化层和全连接层。
步骤S802,基于特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量。
步骤S803,基于池化层,对各特征张量进行空间池化处理,获得与各图像样本对应的特征向量。
步骤S804,从与全连接层对应的类别参数矩阵中,确定出与图像样本的各特征向量一一对应的类别关联参数。
步骤S805,依次对每一图像样本的各特征向量、以及与各特征向量一一对应的类别关联参数,进行加权处理,获得对应图像样本的预测类别数据。
步骤S806,若预测类别数据满足对初始分类模型的训练结束条件,获得训练好的第一分类模型。
步骤S807,获取图像样本集中各图像样本对应的标注标签,并从图像样本集中,筛选出标注标签为正标签的目标图像样本。
步骤S808,获取与第一分类模型的全连接层关联的第一类别参数矩阵,并从第一类别参数矩阵中提取与目标图像样本对应的第一类别关联参数。
步骤S809,依次对目标图像样本的各特征张量、以及与各特征张量一一对应的第一类别关联参数,进行加权处理,获得第一类别空间数据。
步骤S810,根据图像样本集中的各图像样本,对第二分类模型进行训练,获得第二分类模型输出的与目标图像样本对应的第二类别空间数据。
步骤S811,获取与第二分类模型的全连接层关联的第二类别参数矩阵,并从第二类别参数矩阵中提取与目标图像样本对应的第二类别关联参数。
步骤S812,确定第一类别空间数据和第二类别空间数据之间的差值,若差值满足损失计算条件,根据第一处理逻辑,确定与目标图像类别对应的第一损失值。
步骤S813,若差值不满足损失计算条件,根据第二处理逻辑,确定与目标图像类别对应的第一损失值。
步骤S814,基于第一类别关联参数和第二类别关联参数,确定第二损失值。
步骤S815,根据与第一损失值对应的第一权重、第一损失值、与第二损失值对应的第二权重、以及第二损失值,确定融合训练损失值。
步骤S816,若融合训练损失值满足训练结束条件,完成对第二分类模型的模型参数的更新,并将更新结束时的第二分类模型,确定为训练好的图像分类模型。
上述图像分类模型的构建方法中,通过获取图像样本集,并根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练,以获得训练好的图像分类模型。其中,在训练过程中,通过将第一分类模型输出的类别空间数据和类别关联参数,传递至第二分类模型,使得第二分类模型可学习到第一分类模型传递的表示图像类别在空间上的位置信息的类别空间数据、以及表示各图像类别之间的关联关系的类别关联参数,同时利用图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,则将训练结束时的第二分类模型,确定为训练好的图像分类模型,从而达到根据图像分类过程所需的图像类别在空间上的位置信息、以及各图像类别之间的关联关系,完成对第二分类模型的全面训练的目的,以获得模型精度、分类准确度更高的图像分类模型,进一步提升利用训练好的图像分类模型,进行图像分类时的对象识别和分类准确度。
在一个实施例,如图9所示,提供了一种图像分类方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤S902,接收图像分类请求,获取与图像分类请求对应的待分类图像。
具体地,若接收到图像分类请求,则对图像分类请求进行解析,获得与图像分类请求对应的待分类图像。其中,待分类图像可以是对应多种不同图像类别的图像,或者说具有多种对象类别的图像,比如具有汽车、单车、人物、以及建筑等不同类别的图像。
步骤S904,根据训练好的图像分类模型,对待分类图像进行分类处理,获得待分类图像对应的至少一个图像类别。其中,训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的。第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系,在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
具体地,通过利用训练好的图像分类模型,对待分类图像进行分类处理,从而获得与待分类图像对应的至少一个图像类别,比如获得待分类图像上的图像类别为汽车图像类别,又比如获得待分类图像上的图像类别为人物图像类别。
可以理解的是,通过利用训练好的图像分类模型,对待分类图像进行分类处理,可确定与待分类图像对应的多个不同图像类别,从而可将待分类图像划分至多个不同的图像类别,提升在不同实际场景下,比如图像内容识别、目标对象检测等场景下,对图像的多类别识别和多分类的准确度。
在一个实施例中,训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的。具体来说,其中,第一分类模型和第二分类模型的网络层级结构相同,且第一分类模型的层级节点数大于第二分类模型中同一层级的层级节点数,进而在进行知识蒸馏训练时,是将预训练得到的第一分类模型中的知识传递至第二分类模型中。
可以理解的是,预训练得到的第一分类模型作为知识蒸馏训练中的教师模型,用于将其输出数据作为知识传递至第二分类模型,以用于对第二分类模型的训练,而第二分类模型则是未经学习或训练的学生模型。其中,第一分类模型传递的知识可以理解为是第一分类模型的输出数据,具体包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数则用于表示各图像类别之间的关联关系。
具体地,根据图像样本集对第一分类模型进行预训练,获得预训练后的第一分类模型,并获取预训练后的第一分类模型的输出数据,包括类别空间数据和类别关联参数。
其中,根据图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练的过程,可以理解为:根据图像样本集对第二分类模型进行训练,同时结合根据第一分类模型的输出数据即类别空间数据和类别关联参数,对第二分类模型进行知识蒸馏训练,达到根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数的目的,从而实现对第二分类模型的更新和训练,以在满足训练结束条件时,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
进一步地,由于第一分类模型和第二分类模型的网络层级结构相同,则根据图像样本集对第一分类模型进行预训练的方式,和在知识蒸馏训练过程中,根据图像样本集对第二分类模型进行训练的方式是相同的。其中,在知识蒸馏训练过程中,也可以采用其他蒸馏方法,实现同时蒸馏特征以及预测结果,提升训练得到的图像分类模型的模型精度和分类精准度。
上述图像分类方法中,通过接收图像分类请求,获取与图像分类请求对应的待分类图像,并根据训练好的图像分类模型,对待分类图像进行分类处理,获得待分类图像对应的至少一个图像类别。其中,训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的,而第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系。进一步地,在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。实现了在训练过程中,达到根据图像分类过程所需的图像类别在空间上的位置信息、以及各图像类别之间的关联关系,完成对第二分类模型的全面训练的目的,以获得模型精度、分类准确度更高的图像分类模型,进一步提升利用训练好的图像分类模型,进行图像分类时的对象识别和分类准确度。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的图像分类模型的构建方法的图像分类模型的构建装置、以及图像分类方法的图像分类装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图像分类模型的构建装置以及图像分类装置实施例中的具体限定可以参见上文中对于图像分类模型的构建方法以及图像分类方法的限定,在此不再赘述。
在一个实施例中,如图10所示,提供了一种图像分类模型的构建装置,包括:图像样本集获得模块1002、以及图像分类模型获得模块1004,其中:
图像样本集获得模块1002,用于获取图像样本集。
图像分类模型获得模块1004,用于根据图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练。其中,第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系。在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
上述图像分类模型的构建装置中,通过获取图像样本集,并根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练,以获得训练好的图像分类模型。其中,在训练过程中,通过将第一分类模型输出的类别空间数据和类别关联参数,传递至第二分类模型,使得第二分类模型可学习到第一分类模型传递的表示图像类别在空间上的位置信息的类别空间数据、以及表示各图像类别之间的关联关系的类别关联参数,同时利用图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,则将训练结束时的第二分类模型,确定为训练好的图像分类模型,从而达到根据图像分类过程所需的图像类别在空间上的位置信息、以及各图像类别之间的关联关系,完成对第二分类模型的全面训练的目的,以获得模型精度、分类准确度更高的图像分类模型,进一步提升利用训练好的图像分类模型,进行图像分类时的对象识别和分类准确度。
在一个实施例中,提供了一种图像分类模型的构建装置,还包括第一分类模型训练模块,第一分类模型是根据图像样本集对初始分类模型进行预训练得到的,初始分类模型包括特征提取层、池化层和全连接层;第一分类模型训练模块,包括:
特征提取模块,用于基于特征提取层,对图像样本集中的各图像样本进行特征提取,获得特征张量;
特征向量获得模块,用于基于池化层,对各特征张量进行空间池化处理,获得与各图像样本对应的特征向量;
预测类别数据获得模块,用于基于与全连接层对应的类别参数矩阵,对各图像样本对应的特征向量进行加权处理,获得预测类别数据;类别参数矩阵中包括与不同类别对应的类别关联参数;
第一分类模型获得模块,用于若预测类别数据满足对初始分类模型的训练结束条件,获得训练好的第一分类模型。
在一个实施例中,提供了一种图像分类模型的构建装置,还包括类别空间数据获得模块,用于:
从与全连接层对应的类别参数矩阵中,确定出与图像样本的各特征张量一一对应的类别关联参数;依次对每一图像样本的各特征张量、以及与各特征张量一一对应的类别关联参数,进行加权处理,获得对应图像样本的类别空间数据。
在一个实施例中,提供了一种图像分类模型的构建装置,还包括目标图像样本筛选模块,用于:
获取图像样本集中各图像样本对应的标注标签;从图像样本集中,筛选出标注标签为正标签的目标图像样本。
在一个实施例中,提供了一种图像分类模型的构建装置,还包括第一分类模型的输出数据获得模块,第一分类模型的输出数据包括第一类别空间数据和第一类别关联参数;第一分类模型的输出数据获得模块,用于:
根据图像样本集中的各图像样本,对第一分类模型进行训练,获得第一分类模型输出的与目标图像样本对应的第一类别空间数据;获取与第一分类模型的全连接层关联的第一类别参数矩阵,并从第一类别参数矩阵中提取与目标图像样本对应的第一类别关联参数。
在一个实施例中,图像分类模型获得模块还包括:
第二类别空间数据获得模块,用于根据图像样本集中的各图像样本,对第二分类模型进行训练,获得第二分类模型输出的与目标图像样本对应的第二类别空间数据;
第二类别关联参数获得模块,用于获取与第二分类模型的全连接层关联的第二类别参数矩阵,并从第二类别参数矩阵中提取与目标图像样本对应的第二类别关联参数;
第一损失值确定模块,用于基于第一类别空间数据和第二类别空间数据,确定第一损失值;
第二损失值确定模块,用于基于第一类别关联参数和第二类别关联参数,确定第二损失值;
融合训练损失值确定模块,用于根据与第一损失值对应的第一权重、第一损失值、与第二损失值对应的第二权重、以及第二损失值,确定融合训练损失值;
模型参数更新模块,用于若融合训练损失值满足训练结束条件,完成对第二分类模型的模型参数的更新,并将更新结束时的第二分类模型,确定为训练好的图像分类模型。
在一个实施例中,第一损失值确定模块,还用于:
确定第一类别空间数据和第二类别空间数据之间的差值;若差值满足损失计算条件,根据第一处理逻辑,确定与目标图像类别对应的第一损失值;若差值不满足损失计算条件,根据第二处理逻辑,确定与目标图像类别对应的第一损失值。
在一个实施例中,如图11所示,提供了一种图像分类装置,包括:待分类图像获取模块1102、以及图像分类处理模块1104,其中:
待分类图像获取模块1102,用于接收图像分类请求,获取与图像分类请求对应的待分类图像。
图像分类处理模块1104,用于根据训练好的图像分类模型,对待分类图像进行分类处理,获得待分类图像对应的至少一个图像类别;其中,训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
上述图像分类装置中,获取与图像分类请求对应的待分类图像,并根据训练好的图像分类模型,对待分类图像进行分类处理,获得待分类图像对应的至少一个图像类别。其中,训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的,而第一分类模型的输出数据包括类别空间数据和类别关联参数,类别空间数据表示图像类别在空间上的位置信息,类别关联参数表示各图像类别之间的关联关系。进一步地,在训练过程中,根据图像样本集、类别空间数据和类别关联参数,更新第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。实现了在训练过程中,达到根据图像分类过程所需的图像类别在空间上的位置信息、以及各图像类别之间的关联关系,完成对第二分类模型的全面训练的目的,以获得模型精度、分类准确度更高的图像分类模型,进一步提升利用训练好的图像分类模型,进行图像分类时的对象识别和分类准确度。
上述图像分类模型的构建装置以及图像分类装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储图像样本集、第一分类模型的输出数据(包括类别空间数据、类别关联参数)、训练好的图像分类模型、待分类图像以及待分类图像对应的图像类别等数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像分类模型的构建方法以及图像分类方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (14)
1.一种图像分类模型的构建方法,其特征在于,所述方法包括:
获取图像样本集;
根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
2.根据权利要求1所述的方法,其特征在于,所述第一分类模型是根据所述图像样本集对初始分类模型进行预训练得到的,所述初始分类模型包括特征提取层、池化层和全连接层;训练得到所述第一分类模型的方式,包括:
基于所述特征提取层,对所述图像样本集中的各图像样本进行特征提取,获得特征张量;
基于所述池化层,对各所述特征张量进行空间池化处理,获得与各所述图像样本对应的特征向量;
基于与所述全连接层对应的类别参数矩阵,对各所述图像样本对应的特征向量进行加权处理,获得预测类别数据;所述类别参数矩阵中包括与不同类别对应的类别关联参数;
若所述预测类别数据满足对初始分类模型的训练结束条件,获得训练好的第一分类模型。
3.根据权利要求2所述的方法,其特征在于,所述第一分类模型的输出数据包括类别空间数据,获得所述类别空间数据的方式,包括:
从与所述全连接层对应的类别参数矩阵中,确定出与所述图像样本的各特征张量一一对应的类别关联参数;
依次对每一图像样本的各所述特征张量、以及与各所述特征张量一一对应的类别关联参数,进行加权处理,获得对应图像样本的类别空间数据。
4.根据权利要求1至3任意一项所述的方法,其特征在于,在所述获取图像样本集之后,还包括:
获取所述图像样本集中各图像样本对应的标注标签;
从所述图像样本集中,筛选出所述标注标签为正标签的目标图像样本。
5.根据权利要求4所述的方法,其特征在于,所述第一分类模型的输出数据包括第一类别空间数据和第一类别关联参数;获得所述第一分类模型的输出数据的方式,包括:
根据所述图像样本集中的各图像样本,对所述第一分类模型进行训练,获得所述第一分类模型输出的与所述目标图像样本对应的第一类别空间数据;
获取与所述第一分类模型的全连接层关联的第一类别参数矩阵,并从所述第一类别参数矩阵中提取与所述目标图像样本对应的第一类别关联参数。
6.根据权利要求5所述的方法,其特征在于,在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型,包括:
根据所述图像样本集中的各图像样本,对所述第二分类模型进行训练,获得所述第二分类模型输出的与所述目标图像样本对应的第二类别空间数据;
获取与所述第二分类模型的全连接层关联的第二类别参数矩阵,并从所述第二类别参数矩阵中提取与所述目标图像样本对应的第二类别关联参数;
基于所述第一类别空间数据和所述第二类别空间数据,确定第一损失值;
基于所述第一类别关联参数和所述第二类别关联参数,确定第二损失值;
根据与所述第一损失值对应的第一权重、第一损失值、与所述第二损失值对应的第二权重、以及第二损失值,确定融合训练损失值;
若所述融合训练损失值满足训练结束条件,完成对所述第二分类模型的模型参数的更新,并将更新结束时的第二分类模型,确定为训练好的图像分类模型。
7.根据权利要求6所述的方法,其特征在于,所述基于所述第一类别空间数据和所述第二类别空间数据,确定第一损失值,包括:
确定所述第一类别空间数据和所述第二类别空间数据之间的差值;
若所述差值满足损失计算条件,根据第一处理逻辑,确定与所述目标图像类别对应的第一损失值;
若所述差值不满足损失计算条件,根据第二处理逻辑,确定与所述目标图像类别对应的第一损失值。
8.根据权利要求1至3任意一项所述的方法,其特征在于,所述第一分类模型和所述第二分类模型的网络层级结构相同,且所述第一分类模型的层级节点数大于所述第二分类模型中同一层级的层级节点数。
9.一种图像分类方法,其特征在于,所述方法包括:
接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;
其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
10.一种图像分类模型的构建装置,其特征在于,所述装置包括:
图像样本集获得模块,用于获取图像样本集;
图像分类模型获得模块,用于根据所述图像样本集,和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练;其中,所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
11.一种图像分类装置,其特征在于,所述装置包括:
待分类图像获取模块,用于接收图像分类请求,获取与所述图像分类请求对应的待分类图像;
图像分类处理模块,用于根据训练好的图像分类模型,对所述待分类图像进行分类处理,获得所述待分类图像对应的至少一个图像类别;其中,所述训练好的图像分类模型,是根据图像样本集和预训练得到第一分类模型的输出数据,对第二分类模型进行知识蒸馏训练得到的;所述第一分类模型的输出数据包括类别空间数据和类别关联参数,所述类别空间数据表示图像类别在空间上的位置信息,所述类别关联参数表示各图像类别之间的关联关系;在训练过程中,根据所述图像样本集、类别空间数据和类别关联参数,更新所述第二分类模型的模型参数,若满足训练结束条件,将训练结束时的第二分类模型,确定为训练好的图像分类模型。
12.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述的方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
14.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310248006.XA CN116977770A (zh) | 2023-03-08 | 2023-03-08 | 图像分类模型的构建方法、图像分类方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310248006.XA CN116977770A (zh) | 2023-03-08 | 2023-03-08 | 图像分类模型的构建方法、图像分类方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116977770A true CN116977770A (zh) | 2023-10-31 |
Family
ID=88475553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310248006.XA Pending CN116977770A (zh) | 2023-03-08 | 2023-03-08 | 图像分类模型的构建方法、图像分类方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116977770A (zh) |
-
2023
- 2023-03-08 CN CN202310248006.XA patent/CN116977770A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414432B (zh) | 对象识别模型的训练方法、对象识别方法及相应的装置 | |
CN110580482A (zh) | 图像分类模型训练、图像分类、个性化推荐方法及装置 | |
CN111507378A (zh) | 训练图像处理模型的方法和装置 | |
WO2021139191A1 (zh) | 数据标注的方法以及数据标注的装置 | |
CN113011282A (zh) | 图数据处理方法、装置、电子设备及计算机存储介质 | |
CN111476806B (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN113177559B (zh) | 结合广度和密集卷积神经网络的图像识别方法、系统、设备及介质 | |
CN113947764B (zh) | 一种图像处理方法、装置、设备及存储介质 | |
CN113449736B (zh) | 一种基于深度学习的摄影测量点云语义分割方法 | |
US11270425B2 (en) | Coordinate estimation on n-spheres with spherical regression | |
CN112733602B (zh) | 关系引导的行人属性识别方法 | |
Ding et al. | A comparison: different DCNN models for intelligent object detection in remote sensing images | |
CN113240120A (zh) | 基于温习机制的知识蒸馏方法、装置、计算机设备和介质 | |
CN116310318A (zh) | 交互式的图像分割方法、装置、计算机设备和存储介质 | |
Zheng et al. | CLMIP: cross-layer manifold invariance based pruning method of deep convolutional neural network for real-time road type recognition | |
CN116935188B (zh) | 模型训练方法、图像识别方法、装置、设备及介质 | |
WO2023179593A1 (zh) | 数据处理方法及装置 | |
CN116958624A (zh) | 指定材质的识别方法、装置、设备、介质及程序产品 | |
Gudur et al. | A vision-based deep on-device intelligent bus stop recognition system | |
CN117011219A (zh) | 物品质量检测方法、装置、设备、存储介质和程序产品 | |
CN117011635A (zh) | 模型训练方法、图像数据处理方法、装置及计算机设备 | |
CN116977770A (zh) | 图像分类模型的构建方法、图像分类方法、装置和设备 | |
CN114329065A (zh) | 视频标签预测模型的处理方法、视频标签预测方法和装置 | |
Jain et al. | Flynet–neural network model for automatic building detection from satellite images | |
CN112417260A (zh) | 本地化推荐方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |