CN117036843A - 目标检测模型训练方法、目标检测方法和装置 - Google Patents
目标检测模型训练方法、目标检测方法和装置 Download PDFInfo
- Publication number
- CN117036843A CN117036843A CN202211104862.XA CN202211104862A CN117036843A CN 117036843 A CN117036843 A CN 117036843A CN 202211104862 A CN202211104862 A CN 202211104862A CN 117036843 A CN117036843 A CN 117036843A
- Authority
- CN
- China
- Prior art keywords
- model
- image sample
- feature
- inputting
- sample
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 133
- 238000012549 training Methods 0.000 title claims abstract description 119
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000013140 knowledge distillation Methods 0.000 claims abstract description 47
- 238000005070 sampling Methods 0.000 claims abstract description 13
- 230000007547 defect Effects 0.000 claims description 46
- 230000004927 fusion Effects 0.000 claims description 42
- 238000004821 distillation Methods 0.000 claims description 29
- WHXSMMKQMYFTQS-UHFFFAOYSA-N Lithium Chemical compound [Li] WHXSMMKQMYFTQS-UHFFFAOYSA-N 0.000 claims description 21
- 229910052744 lithium Inorganic materials 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 18
- 238000010801 machine learning Methods 0.000 claims description 16
- 238000002372 labelling Methods 0.000 claims description 9
- 239000000758 substrate Substances 0.000 claims 2
- 238000013473 artificial intelligence Methods 0.000 abstract description 18
- 238000005516 engineering process Methods 0.000 description 20
- 210000003128 head Anatomy 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000013135 deep learning Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000011160 research Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007797 corrosion Effects 0.000 description 2
- 238000005260 corrosion Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 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
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static 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
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- 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/40—Extraction of image or video features
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (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)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种目标检测模型训练方法、目标检测方法和装置,涉及人工智能领域。该训练方法包括:根据第一图像样本训练得到基础模型;获取第二图像样本,包括对第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本;将第二图像样本输入基础模型得到第二图像样本的第一特征向量;将第二图像样本输入增量模型得到第二图像样本的第二特征向量;根据第一特征向量和第二特征向量对基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,实现快速的模型迭代。回放数据样本能够维持模型在旧数据上的高识别率,新数据样本能够提升模型对新数据的识别率,从而保证模型对多种不同出现频率的目标的识别率。
Description
技术领域
本申请实施例涉及人工智能技术领域,尤其涉及一种目标检测模型训练方法、目标检测方法和装置。
背景技术
近年来基于深度学习的目标检测模型得到了快速发展。现有的目标检测模型基于深度学习的目标检测算法,通过大量数据的学习可以实现对目标较高的识别准确率。
在实际应用中,由于某些类型的目标出现频率低导致训练样本数据中该类型的目标的数据量较少,最终导致模型对这些数据不足的目标的识别率较低。并且,随着时间推移,低频目标数据慢慢积累获得更多的数据(即新数据),现有方案仍然需要将之前收集的数据(旧数据)和新数据混合来重新训练模型,这样不但模型迭代缓慢而且无法保证新模型在旧数据上仍有高识别率。
发明内容
本申请提供一种目标检测模型训练方法、目标检测方法和装置,能够有助于保证模型对多种不同出现频率的目标的识别率。
第一方面,本申请实施例提供一种目标检测模型训练方法,包括:
获取第一训练样本集,所述第一训练样本集包括第一时间段收集的第一图像样本;
根据所述第一训练样本集对机器学习模型进行训练,得到基础模型;
获取第二训练样本集,所述第二训练样本集包括第二图像样本,所述第二图像样本包括对所述第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本;
将所述第二图像样本输入所述基础模型,得到所述第二图像样本的第一特征向量;
将所述第二图像样本输入增量模型,得到所述第二图像样本的第二特征向量,其中,所述增量模型与所述基础模型具有相同的模型结构;
根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失;
根据所述检测损失和所述知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
第二方面,本申请实施例提供一种目标检测方法,包括:
获取待检测图像;
将所述待检测图像输入目标检测模型,得到所述待检测图像的目标检测结果,其中,所述目标检测模型是根据第一方面的方法训练得到的。
第三方面,本申请实施例提供了一种目标检测模型训练装置,包括:
获取单元,用于获取第一训练样本集,所述第一训练样本集包括第一时间段收集的第一图像样本;
训练单元,用于根据所述第一训练样本集对机器学习模型进行训练,得到基础模型;
所述获取单元还用于获取第二训练样本集,所述第二训练样本集包括第二图像样本,所述第二图像样本包括对所述第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本;
所述基础模型,用于输入所述第二图像样本,得到所述第二图像样本的第一特征向量;
增量模型,用于输入所述第二图像样本,得到所述第二图像样本的第二特征向量,其中,所述增量模型与所述基础模型具有相同的模型结构;
确定单元,用于根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失;
参数更新单元,用于根据所述检测损失和所述知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
第四方面,本申请实施例提供了一种目标检测装置,包括:
获取单元,用于获取待检测图像;
目标检测模型,用于输入所述待检测图像,得到所述待检测图像的目标检测结果,其中,所述目标检测模型是根据第一方面的方法训练得到的。
第五方面,本申请实施例提供一种电子设备,包括:处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行如第一方面或第二方面的方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机指令,该计算机指令被计算机设备的处理器读取并执行时,使得计算机设备执行上述第一方面或第二方面的方法。
第七方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面或第二方面的方法。
通过上述技术方案,本申请实施例在基于第一时间段收集的第一图像样本训练得到的基础模型的基础上,使用包含回放数据样本和新数据样本的训练样本集对基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,实现快速的模型迭代。并且,本申请实施例通过回放数据样本能够有助于维持模型在旧数据上对目标的高识别率,通过新数据样本能够有助于提升模型对新数据中目标的识别率,从而能够有助于保证模型对多种不同出现频率的目标的识别率。
附图说明
图1为本申请实施例的方案的系统架构的一个示意图;
图2为根据本申请实施例的一种目标检测模型训练方法的示意性流程图;
图3为根据本申请实施例的一种训练模型的网络架构的示意图;
图4为根据本申请实施例的另一种训练模型的方法的示意性流程图;
图5为根据本申请实施例的全局上下文模块的结构的一个示意图;
图6为根据本申请实施例的另一种训练模型的方法的示意性流程图;
图7为根据本申请实施例的一种目标检测方法的示意性流程图;
图8为根据本申请实施例的一种目标检测模型的示意性框图;
图9为根据本申请实施例的一种训练模型的装置的示意图;
图10为根据本申请实施例的一种目标检测装置的示意性框图;
图11为根据本申请实施例的电子设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
应理解,在本申请实施例中,“与A对应的B”表示B与A相关联。在一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
在本申请的描述中,除非另有说明,“至少一个”是指一个或多个,“多个”是指两个或多于两个。另外,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
还应理解,本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。
还应理解,说明书中与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例应用于人工智能技术领域。
其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
本申请实施例可涉及人工智能技术中的计算机视觉(Computer Vision,CV)技术,计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
本申请实施例也可以涉及人工智能技术中的机器学习(Machine Learning,ML),ML是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
深度学习(Deep Learning,DL)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。深度学习是学习训练样本数据的内在规律和表示层次,这些学习过程中获得的信息对文字、图像和声音等数据的解释有很大的帮助。深度学习的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。
图1为本申请实施例涉及的一种系统架构的示意图。如图1所示,系统架构可以包括用户设备101、数据采集设备102、训练设备103、执行设备104、数据库105和内容库106。
其中,数据采集设备102用于从内容库106中读取训练数据,并将读取的训练数据存储至数据库105中。本申请实施例涉及的训练数据包括图像样本和图像样本的标注信息,比如锂电池的缺陷图像样本和缺陷标注信息。
训练设备103基于数据库105中维护的训练数据,对机器学习模型进行训练。训练设备103得到的目标检测模型可以有效地对图像中的目标进行识别。例如,用于检测锂电池缺陷的目标检测模型可以有效地对图像中的锂电池缺陷进行识别。训练设备103得到的目标检测模型可以应用到不同的系统或设备中。
另外,参考图1,执行设备104配置有I/O接口107,与外部设备进行数据交互。比如通过I/O接口接收用户设备101发送的待检测的图像。执行设备104中的计算模块109使用训练好的目标检测模型对输入的图像进行处理,输出目标检测结果,比如输出分类结果和标注框,并通过I/O接口将相应的结果发送至用户设备101。
其中,用户设备101可以包括手机、平板电脑、笔记本电脑、掌上电脑、车载终端、移动互联网设备(mobile internet device,MID)或其他的终端设备。
执行设备104可以为服务器。
示例性的,服务器可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备。该服务器可以是独立的服务器,也可以是多个服务器所组成的服务器集群。
本实施例中,执行设备104通过网络与用户设备101连接。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobilecommunication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
需要说明的是,图1仅是本申请实施例提供的一种系统架构的示意图,图中所示设备、器件、模块等之间的位置关系不构成任何限制。在一些实施例中,上述数据采集设备102与用户设备101、训练设备103和执行设备104可以为同一个设备。上述数据库105可以分布在一个服务器上也可以分布在多个服务器上,上述的内容库106可以分布在一个服务器上也可以分布在多个服务器上。
在实际应用中,目标检测模型基于深度学习的目标检测算法,通过大量数据的学习可以实现对目标较高的识别准确率。但是,由于某些类型的目标出现频率低导致训练样本数据中该类型的目标的数据量较少,最终导致模型对这些数据不足的目标的识别率较低。并且,随着时间推移,这些出现频率低的目标数据慢慢积累获得了更多的数据(即新数据),现有方案仍然需要将之前收集的数据(旧数据)和新数据混合来重新训练模型,这样不但模型迭代缓慢而且无法保证新模型在旧数据上仍有高识别率。
有鉴于此,本申请实施例提供了一种目标检测模型训练方法、目标检测方法和装置,能够有助于保证模型对多种不同出现频率的目标的识别率。
具体而言,首先获取第一训练样本集,包括第一时间段收集的第一图像样本,根据该第一训练样本集对机器学习模型进行训练,得到基础模型;然后获取第二训练样本集,包括第二图像样本,其中第二图像样本包括对第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本,并将该第二图像样本输入该基础模型和与该基础模型具有相同结构的增量模型,分别基于该基础模型得到第二图像样本的第一特征向量,基于该增量模型得到第二图像样本的第二特征向量;最后根据该第一特征向量和第二特征向量确定知识蒸馏损失,并根据该知识蒸馏损失对该增量模型的参数进行调整得到该目标检测模型。
因此,本申请实施例在基于第一时间段收集的第一图像样本训练得到的基础模型的基础上,使用包含回放数据样本和新数据样本的训练样本集对基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,实现快速的模型迭代。并且,本申请实施例通过回放数据样本能够有助于维持模型在旧数据上对目标的高识别率,通过新数据样本能够有助于提升模型对新数据中目标的识别率,从而能够有助于保证模型对多种不同出现频率的目标的识别率。
本申请实施例可用于对锂电池的缺陷检测场景。具体的,锂电池一般在实际生产过程中存在多种缺陷,若坏品流入市场,轻则电池充放电不稳定,重则漏液爆炸。目前工厂一般采用人工抽检,检测效率低,效果差并且无法全检。为提高手机锂电池缺陷检测的精准度和检测效率,可以通过自动化视觉缺陷检测设备对锂电池进行缺陷检测。自动化视觉缺陷检测设备包含目标检测模型,通过对大量缺陷数据进行学习,可以实现较高的识别准确率。
示例性的,手机锂电池缺陷共7类,其中5类是高频缺陷(出现频率很高,比如出现频率大于第一预设值的缺陷),包括异物、坑点、划伤、打皱、极耳不良等,剩余2类是低频缺陷(出现频率很低的缺陷,比如出现频率小于第二预设值的缺陷),包括腐蚀、压伤。如果基于一段时间收集的大量的缺陷数据进行学习,目标检测模型可以对于5类高频缺陷进行高准确的识别,而剩余的2类缺陷由于数据量少,在目标检测模型训练时由于数据不均衡问题,容易导致该2类缺陷的识别率低。
而本申请实施例的技术方案包含两个阶段的模型训练。第一阶段:使用第一时间段收集的大量缺陷标注数据,对基于深度学习的目标检测模型进行训练,得到基础模型,该模型对于5类高频缺陷能够进行高准确率的识别,而可能对2类低频缺陷的识别率低。第二阶段:随着时间推移不断积累收集2类低频缺陷的新数据,使用包含第一阶段的回放数据和第二阶段的新数据对第一阶段得到的基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,实现快速的模型迭代,得到增量模型。其中,在第二阶段中使用回放数据样本能够有助于增量模型维持对高频缺陷的高识别率,使用不断积累收集的低频缺陷的新数据样本能够有助于提升模型对低频缺陷的识别率,从而能够有助于保证模型对多种不同出现频率的缺陷的识别率。
下面结合附图,对本申请实施例提供的技术方案进行描述。
图2示出了根据本申请实施例的一种目标检测模型训练方法200的示意性流程图。方法200可以由任何具有数据处理能力的电子设备执行,例如,该电子设备可实施为服务器,又例如,该电子设备可实施为图1中的训练设备103,本申请对此不做限定。
一些实施例中,电子设备中可以包括(比如部署)训练模型的网络架构,用于执行该目标检测模型训练方法200。图3示出了训练模型的网络架构300的一个示意图,可以用于执行该方法200。如图3所示,网络架构300包括样本获取模块310、基础模型320、增量模型330、知识蒸馏模块340和参数更新模块350。可选的,基础模块320进一步可以包括第一主干网络321、第一脖颈网络322、第一检测头323和第一全局上下文模块324,增量模型330进一步可以包括第二主干网络331、第二脖颈网络332、第二检测头333和第二全局上下文模块334。下面,将结合图3的网络架构300对方法200的各个步骤进行描述。
如图2所示,方法200包括步骤210至步骤270。其中,步骤210至220为模型训练的第一阶段,目的是训练基础模型;步骤230至270为模型训练的第二阶段,目的是训练增量模型。基础模型也可以称为基础检测器(basedetector),增量模型也可以称为增量检测器(incrementaldetector),本申请对此不做限定。
210,获取第一训练样本集,该第一训练样本集包括第一时间段收集的第一图像样本。
示例性的,参见图3,可以由样本获取模块310获取该第一训练样本集。该第一训练样本集用于训练基础模型,也可以称为初始数据(Origindata)。
在一些实施例中,第一图像样本的标注信息包括标注框(box)和目标物实例类别。例如,对于每张图像表示为x,目标物实例类别是yc,box框是yb。
作为示例,在手机锂电池缺陷检测应用场景中,该第一时间段收集的第一图像样本包含锂电池大量缺陷数据,其中包含5类高频缺陷数据和2类低频缺陷数据。
220,根据该第一训练样本集对机器学习模型进行训练,得到基础模型。
具体而言,基础模型,即基础目标检测模型,可以灵活选用现有的基于深度学习的目标检测模型,例如FasterRCNN、FCOS或VFnet等,不做限定。
作为示例,如图3所示,基础模型320框架可以包括3个关键结构:第一主干网络(Backbone)第一脖颈网络(Neck)/>和第一检测头(Detectionheads)/>主干网络用于特征提取,比如为ResNet50和Swin-Transformer等;脖颈网络用于对提取的特征进行多尺度融合和增强,从而得到更优秀的特征,一般选用特征金字塔网络(featureparymid network,FPN);检测头用于进行类别预测和box回归,输出分类结果和兴趣区域的box相关信息。
基础模型输入图像x,输出的预测结果包括预测类别和box框/>公式表示如下:
在该步骤中,可以使用第一训练样本集中的大量标注数据(比如box和对应的目标物实例类别)对目标检测模型进行全监督训练,通过计算真值标注和模型预测结果之间的误差损失,来进行模型参数迭代更新,得到基础目标检测模型,即基础模型。
通过上述步骤210和220,即可实现第一阶段基础模型训练。训练好的该基础模型可以实现较高识别率的目标检测。例如,在手机锂电池缺陷检测应用场景中,通过锂电池大量缺陷数据进行第一阶段基础模型训练和推理,可以实现较高识别率的手机锂电池缺陷检测。
同时,随着时间推移,可以逐步积累等多的数据,用于第二阶段增量模型的迭代训练,进一步提高目标识别率。第二阶段增量模型的迭代训练过程具体参见下文步骤230至270的描述。
230,获取第二训练样本集,该第二训练样本集包括第二图像样本,该第二图像样本包括对第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本。
示例性的,参见图3,可以由样本获取模块310获取该第二训练样本集。该第二训练样本集用于训练增量模型。
其中,新数据样本,即新数据(newdata),可以是在第一阶段之后,随着时间推移逐步积累收集的更多的出现频率低于预设值(即低频类型)的数据。例如,对于手机锂电池缺陷数据,新数据可以为在第一阶段之后持续收集的2类低频缺陷(如腐蚀、压伤)数据。
回放数据样本,即回放数据(replaydata),是从第一阶段收集到的初始数据中采样得到的。示例性的,采样率可以设置为n%,即从初始数据采样n%的数据。作为具体的例子,可以设置n%=30%。采样方式可以为按照类别均匀采样,即每个类别上采样的数量一致。
本申请实施例中,采用新数据和回放数据组合的方式确定第二阶段的训练样本集,一方面能够增加训练样本中出现频率低的数据样本的数量,进而缓解由于样本数量不均衡导致模型对样本少的目标类型识别能力差的问题。另一方面,回放数据还能够防止模型遗忘导致在初始数据上目标识别性能下降的问题,即防止模型过拟合到新数据而遗忘初始数据的特性。另外,通过采样部分初始数据以得到回放数据来进行模型训练,可以加快模型训练迭代过程。
具体的,第二图像样本的标注信息与第一图像样本的标注信息类似,可以参见上文中的描述,不再赘述。
240,将第二图像样本输入基础模型,得到第二图像样本的第一特征向量。
这里,该基础模型即为步骤220中训练好的基础目标检测模型,即第一阶段中训练完成的模型。
一些实施例中,参见图4,将第二图像样本输入基础模型后,可以得到第二图像样本第一特征向量,以及第一预测结果。
401,将第二图像样本输入第一主干网络,得到第二图像样本的多个不同分辨率的第一特征图。
具体而言,第一主干网络可以包括卷积层,用于提取输入的图像的特征。示例性的,提取的特征一般按阶段(stage)划分,分别即为C1、C2、C3、C4、C5、C6、C7等,其中数字与stage编号相同,代表的是分辨率减半的次数,如C2代表stage2输出的特征图,分辨率为输入图片的1/4,C5代表stage5输出的特征图,分辨率为输入图片的1/32。对于图3中的基础模型320而言,第一主干网络输出的第一特征图可以表示为:
402,将该多个不同分辨率的第一特征图输入第一脖颈网络,得到第一融合特征。
示例性的,第一脖颈网络,可以为FPN。在步骤402中,可以将步骤401生成的不同分辨率的特征作为第一脖颈网络的输入,输出经过融合后的特征。具体的,第一脖颈网络(比如FPN)可以融合具有高分辨率的浅层特征和具有丰富语义信息的深层特征,生成在所有尺度上都具有强语义信息的特征金字塔。
例如,FPN对于层2(layer2)的特征进行降采样操作,对层4(layer4)的特征进行上采样操作,使得它们具有相同的尺寸,然后对处理后的layer2和处理后的layer4执行加法操作(对应元素相加),将获得的结果输入到层5(layer5)中。由于低层特征可以提供更准确的位置信息,而多次的降采样和上采样操作使得深层网络的定位信息存在误差,因此通过将处理过的低层特征和处理过的高层特征进行累加,将低层特征和高层特征结合使用能够融合多层的特征信息。
在一些实施例中,对于图3中的基础模型320而言,第一融合特征可以表示为:
403,将该第一融合特征输入第一检测头,得到第二图像样本的第一预测结果。
示例性的,第一检测头具体可以实现为两个全连接网络层,连接对应的分类层和回归层。这里,该第一预测结果包括类别预测结果(即分类层的输出,比如上述预测类别)和box回归结果(即回归层的输出,比如上述box框/>)。例如,对于图3中的基础模型320而言,第一检测头输出的第一预测结果可以表示为:/>
404,将该第一融合特征输入第一全局上下文模块,得到该第二图像样本的不同类别之间的第一关系。
具体而言,第一全局上下文模块可以获取第一融合特征中强相关的至少两个目标物(即大概率会同时出现的至少两个目标物)之间的关系,并对该强相关的目标物的特征进行相互增强,从而提高目标物的识别率。对于图3中的基础模型320,第一全局上下文模块输出的第二图像样本的不同类别之间的第一关系可以表示为:
图5示出了第一全局上下文模块的结构的一个示意图。输入特征X经过三个1×1×1卷积层处理,分别得到特征X1、X2和X3,然后对特征X1和X2进行矩阵相乘计算特征X1和X2的特征相似度,得到特征X1和X2的相关矩阵A。然后,利用矩阵A作为权重,对特征X3进行加权重组。此时如果特征X3与特征X1强相关(即有很强的相似度),则该强相关的特征将被进一步增强得到特征Y。对该特征Y进一步输入1×1×1的卷积层进行自适应调整,进一步与特征X进行求和操作,得到特征Z,即第一全局上下文模块的输出的第二图像样本的不同类别之间的第一关系。这里,对特征Y与特征X求和既能保证特征提取稳定(即保证特征Z和特征X特征变换不会过大),又能使用特征Y达到特征增强的目的。
在本申请实施例中,第二图像样本的第一特征向量,可以包括第一融合特征、第二图像样本的不同类别之间的第一关系和第一预测结果中的至少一种。
250,将第二图像样本输入增量模型,得到第二图像样本的第二特征向量。
其中,该增量模型,即增量目标检测模型,与基础模型具有相同的模型结构,区别在于模型的权重不同。参见图3,增量模型330框架也可以包括3个关键结构:第二主干网络fθ331、第一脖颈网络(Neck)gθ332和第一检测头(Detectionheads)hθ333。类似的,增量模型输入图像x,输出的预测结果包括预测类别和box框/>公式表示如下:
一些实施例中,参见图6,将第二图像样本输入增量模型后,可以得到第二图像样本的第二特征向量和第二预测结果。
601,将第二图像样本输入第二主干网络,得到第二图像样本的多个不同分辨率的第二特征图。
对于图3中的增量模型330而言,第二主干网络输出的第二特征图可以表示为:fθ(x)。
602,将该多个不同分辨率的第二特征图输入第二脖颈网络,得到第二融合特征。
在一些实施例中,对于图3中的增量模型330而言,第二融合特征可以表示为:gθ(fθ(x))。
603,将该第二融合特征输入第二检测头,得到第二图像样本的第二预测结果。
例如,对于图3中的增量模型330而言,第二预测结果可以表示为:
604,将该第二融合特征输入第二全局上下文模块,得到该第二图像样本的不同类别之间的第二关系。
对于图3中的增量模型330,第二全局上下文模块输出可以表示为:Nθ(gθ(fθ(x)))。
具体的,增量模型330与基础模型320具有相同的模型结构,增量模型330中各个模块的处理过程与基础模型330中各个模块的处理过程相似,可以参考上文中的描述。
在本申请实施例中,第二图像样本的第二特征向量,可以包括第二融合特征、第二图像样本的不同类别之间的第二关系和第二预测结果中的至少一种。
需要说明的是,本申请实施例中,第一特征向量与第二特征向量对应,分别为基础模型和增量模型中的相同模块输出的特征数据。例如,第一特征向量包含第一融合特征,则第二特征向量包含第二融合特征;第一特征向量包含第二图像样本的不同类别之间的第一关系,则第二特征向量包含第二图像样本的不同类别之间的第二关系;第一特征向量包含第一预测结果,则第二特征向量包含第二预测结果。
260,根据第一特征向量和第二特征向量,确定知识蒸馏(knowledgedistillation)损失。
知识蒸馏损失Lknow,即第二图像样本的第一特征向量和第二特征向量之间的误差。
示例性的,在图3中,可以由知识蒸馏模块340根据上述第二图像样本的第一特征向量和第二特征向量确定知识蒸馏损失Lknow。参见图3,基础模型320的第一脖颈网络322输出的第一融合特征、第一检测头323输出的第一预测结果和第一全局上下文模块324输出的第二图像样本的至少两个类别之间的第一关系中的至少一种可以输入至知识蒸馏模块340,增量模型330的第二脖颈网络332输出的第二融合特征、第二检测头333输出的第二预测结果和第二全局上下文模块334输出的第二图像样本的至少两个类别之间的第二关系中的至少一种可以输入至知识蒸馏模块340。
可选的,知识蒸馏模块340可以根据第一融合特征和第二融合特征,确定特征蒸馏损失Lfeat,即基础模型和增量模型之间的特征误差。特征蒸馏损失Lfeat可以实现特征蒸馏,让增量模型的特征响应尽量接近基础模型的特征响应。特征蒸馏能够保持增量模型与基础模型的特征一致性,防止增量模型遗忘初始数据的特征向量。
示例性的,特征蒸馏损失Lfeat可以表示为如下公式:
其中,l2为L2距离函数。
可选的,知识蒸馏模块340可以根据第二图像样本的至少两个类别之间的第一关系和第二图像样本的至少两个类别之间的第二关系,确定全局上下文蒸馏损失Lcont,即基础模型和增量模型之间的全局上下文特征误差。全局上下文蒸馏损失Lcont可以实现全局上下文蒸馏,让增量模型的全局上下文特征尽量接近基础模型的全局上下文特征。全局上下文蒸馏能够保持增量模型与基础模型的类间关系一致性,防止增量模型遗忘初始数据的多个类别间的关系。
示例性的,特征蒸馏损失Lfeat可以表示为如下公式:
/>
其中,l2为L2距离函数。
可选的,知识蒸馏模块340可以根据第二图像样本的第一预测结果和第二预测结果,确定预测结果蒸馏损失Lpred,即基础模型和增量模型之间的预测结果误差。预测结果蒸馏损失Lpred可以实现预测结果蒸馏,让增量模型的预测结果尽量接近基础模型的预测结果。预测结果蒸馏能够保持增量模型与基础模型的预测结果一致性,防止增量模型遗忘初始数据的预测结果。
示例性的,预测结果损失Lpred可以表示为如下公式:
在一些实施例中,知识蒸馏损失Lknow可以包括特征蒸馏损失Lfeat、全局上下文蒸馏损失Lcont和预测结果蒸馏损失Lpred中的至少一种。
在一些实施例中,还可以根据第二图像样本的标注信息和第二预测结果,确定检测损失。
其中,检测损失Ldet,即使用第二图像样本的标注信息(即box框和对应的目标物实例类别)对增量模型进行全监督训练时,增量模型的预测结果和输入的第二图像样本的真值{yc,yb}的误差。
270,根据知识蒸馏损失,对增量模型的参数进行调整得到目标检测模型。
具体的,根据该知识蒸馏损失对基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,对增量模型的参数进行调整得到目标检测模型,实现快速的模型迭代。
在一些实施例中,可以根据知识蒸馏损失和检测损失,对增量模型的参数进行调整得到目标检测模型。继续参见图3,在确定检测损失Ldet和知识蒸馏损失Lknow之后,参数更新模块350可以根据检测损失Ldet和知识蒸馏损失Lknow,利用梯度下降算法,对增量模型中各网络模块的参数进行更新,直至满足停止训练条件。将满足该停止训练条件所确定的增量模型输出为目标检测模型。
因此,本申请实施例在基于第一时间段收集的第一图像样本训练得到的基础模型的基础上,使用包含回放数据样本和新数据样本的训练样本集对基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,实现快速的模型迭代。并且,本申请实施例通过回放数据样本能够有助于维持模型在旧数据上对目标的高识别率,通过新数据样本能够有助于提升模型对新数据中目标的识别率,从而能够有助于保证模型对多种不同出现频率的目标的识别率。
图7示出了本申请实施例提供了一种目标检测的方法700的示意性流程图。如图7所示,方法700包括步骤710和720。
710,获取待检测图像。
示例性的,该待检测图像可以为锂电池的缺陷图像。
720,将该待检测图像输入目标检测模型,得到该待检测图像的目标检测结果,其中,所述目标检测模型是根据本申请实施例提供的目标检测模型训练方法训练得到的。
示例性的,该目标检测模块可以是根据大量锂电池的缺陷图像样本训练得到的。具体的,可以根据上文中的目标检测模型训练方法200训练得到。相应的,目标检测结果包括锂电池缺陷类型和缺陷标注框。
参见图8,可以将待检测图像输入目标检测模型800,主干网络fθ810、脖颈网络gθ820和检测头hθ830依次对待检测图像进行处理,得到待检测图像的检测结果,包括预测类别和box框。其中,目标检测模型800可以是图3中训练好的增量模型330的一个示例。
因此,本申请实施例在基于第一时间段收集的第一图像样本训练得到的基础模型的基础上,使用包含回放数据样本和新数据样本的训练样本集对基础模型进行知识蒸馏,将基础模型包含的知识提取到增量模型上,实现快速的模型迭代。并且,本申请实施例通过回放数据样本能够有助于维持模型在旧数据上对目标的高识别率,通过新数据样本能够有助于提升模型对新数据中目标的识别率,从而能够有助于保证模型对多种不同出现频率的目标的识别率。
以上结合附图详细描述了本申请的具体实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。应理解这些序号在适当情况下可以互换,以便描述的本申请的实施例能够以除了在图示或描述的那些以外的顺序实施。
上文详细描述了本申请的方法实施例,下文结合图9至图11,详细描述本申请的装置实施例。
图9是本申请实施例的目标检测模型训练装置900的示意性框图。如图9所示,所述目标检测模型训练装置900可包括获取单元910、训练单元920、基础模型930、增量模型940、确定单元950和参数更新单元960。
获取单元910,用于获取第一训练样本集,所述第一训练样本集包括第一时间段收集的第一图像样本;
训练单元920,用于根据所述第一训练样本集对机器学习模型进行训练,得到基础模型;
所述获取单元910还用于获取第二训练样本集,所述第二训练样本集包括第二图像样本,所述第二图像样本包括对所述第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本;
所述基础模型930,用于输入所述第二图像样本,得到所述第二图像样本的第一特征向量;
增量模型940,用于输入所述第二图像样本,得到所述第二图像样本的第二特征向量,其中,所述增量模型与所述基础模型具有相同的模型结构;
确定单元950,用于根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失;
参数更新单元960,用于根据所述知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
在一些实施例中,所述基础模型930包括第一主干网络、第一脖颈网络和第一检测头,所述增量模型940包括第二主干网络、第二脖颈网络和第二检测头。
在一些实施例中,所述基础模型930具体用于:
将所述第二图像样本输入所述第一主干网络,得到所述第二图像样本的多个不同分辨率的第一特征图;
将所述多个不同分辨率的第一特征图输入所述第一脖颈网络,得到第一融合特征,其中,所述第一特征向量包括所述第一融合特征;
其中,所述增量模型940具体用于:
将所述第二图像样本输入所述第二主干网络,得到所述第二图像样本的多个不同分辨率的第二特征图;
将所述多个不同分辨率的第二特征图输入所述第二脖颈网络,得到第二融合特征,其中,所述第二特征向量包括所述第二融合特征。
在一些实施例中,所述确定单元950具体用于:
根据所述第一融合特征和所述第二融合特征,确定特征蒸馏损失,其中,所述知识蒸馏损失包括所述特征蒸馏损失。
在一些实施例中,所述基础模型930还包括第一全局上下文模块,所述增量模型还包括第二全局上下文模块;
其中,所述基础模型930具体用于:
将所述第二图像样本输入所述第一主干网络,得到所述第二图像样本的多个不同分辨率的第一特征图;
将所述多个不同分辨率的第一特征图输入所述第一脖颈网络,得到第一融合特征;
将所述第一融合特征输入所述第一全局上下文模块,得到所述第二图像样本的不同类别之间的第一关系,其中,所述第一特征向量包括所述第二图像样本不同类别之间的第一关系;
其中,所述增量模型940具体用于:
将所述第二图像样本输入所述第二主干网络,得到所述第二图像样本的多个不同分辨率的第二特征图;
将所述多个不同分辨率的第二特征图输入所述第二脖颈网络,得到第二融合特征;
将所述第二融合特征输入所述第二全局上下文模块,得到所述第二图像样本的不同类别之间的第二关系,其中,所述第二特征向量包括所述第二图像样本不同类别之间的第二关系。
在一些实施例中,所述确定单元950具体用于:
根据所述第二图像样本的不同类别之间的第一关系和所述第二图像样本的不同类别之间的第二关系,确定全局上下文蒸馏损失,其中,所述知识蒸馏损失包括所述全局上下文蒸馏损失。
在一些实施例中,所述基础模型930具体用于:
所述将所述第二图像样本输入所述基础模型,得到所述第二图像样本的第一特征向量,包括:
将所述第二图像样本输入所述第一主干网络,得到所述第二图像样本的多个不同分辨率的第一特征图;
将所述多个不同分辨率的第一特征图输入所述第一脖颈网络,得到第一融合特征;
将所述第一融合特征输入所述第一检测头,得到所述第二图像样本的第一预测结果,其中,所述第一特征向量包括所述第一预测结果;
所述增量模型940具体用于:
将所述第二图像样本输入所述第二主干网络,得到所述第二图像样本的多个不同分辨率的第二特征图;
将所述多个不同分辨率的第二特征图输入所述第二脖颈网络,得到第二融合特征;
将所述第二融合特征输入所述第二检测头,得到所述第二图像样本的第二预测结果,其中,所述第二特征向量包括所述第二预测结果。
在一些实施例中,所述确定单元950具体用于:
根据所述第一预测结果和所述第二预测结果,确定预测结果蒸馏损失,其中,所述知识蒸馏损失包括所述预测结果蒸馏损失。
在一些实施例中,所述确定单元950还用于:
根据所述第二预测结果和所述第二图像样本的标注信息,确定检测损失;
其中,所述参数更新单元960具体用于:
根据所述检测损失和所述知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
在一些实施例中,所述第一图像样本包括锂电池的缺陷图像样本,所述第二图像样本包括锂电池的缺陷图像样本。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图9所示的装置900可以执行上述方法实施例,并且装置900中的各个模块的前述和其它操作和/或功能分别为了实现上述各个方法200中的相应流程,为了简洁,在此不再赘述。
图10是本申请实施例的目标检测装置1000的示意性框图。如图10所示,所述目标检测装置1000可包括获取单元1010和目标检测模型1020。
获取单元1010,用于获取待检测图像;
目标检测模型1020,用于输入所述待检测图像,得到所述待检测图像的目标检测结果,其中,所述目标检测模型是本申请实施例的目标检测模型训练方法训练得到的。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图10所示的装置1000可以执行上述方法实施例,并且装置1000中的各个模块的前述和其它操作和/或功能分别为了实现上述各个方法700中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图11是本申请实施例提供的电子设备1100的示意性框图。
如图11所示,该电子设备1100可包括:
存储器1110和处理器1120,该存储器1110用于存储计算机程序,并将该程序代码传输给该处理器1120。换言之,该处理器1120可以从存储器1110中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器1120可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请的一些实施例中,该处理器1120可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器1110包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器1110中,并由该处理器1120执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图11所示,该电子设备1100还可包括:
收发器1130,该收发器1130可连接至该处理器1120或存储器1110。
其中,处理器1120可以控制该收发器1130与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器730可以包括发射机和接收机。收发器1130还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
可以理解的是,在本申请的具体实施方式中,可能涉及到用户信息等相关的数据。当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。
Claims (16)
1.一种目标检测模型训练方法,其特征在于,包括:
获取第一训练样本集,所述第一训练样本集包括第一时间段收集的第一图像样本;
根据所述第一训练样本集对机器学习模型进行训练,得到基础模型;
获取第二训练样本集,所述第二训练样本集包括第二图像样本,所述第二图像样本包括对所述第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本;
将所述第二图像样本输入所述基础模型,得到所述第二图像样本的第一特征向量;
将所述第二图像样本输入增量模型,得到所述第二图像样本的第二特征向量,其中,所述增量模型与所述基础模型具有相同的模型结构;
根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失;
根据知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
2.根据权利要求1所述的方法,其特征在于,所述基础模型包括第一主干网络、第一脖颈网络和第一检测头,所述增量模型包括第二主干网络、第二脖颈网络和第二检测头。
3.根据权利要求2所述的方法,其特征在于,
所述将所述第二图像样本输入所述基础模型,得到所述第二图像样本的第一特征向量,包括:
将所述第二图像样本输入所述第一主干网络,得到所述第二图像样本的多个不同分辨率的第一特征图;
将所述多个不同分辨率的第一特征图输入所述第一脖颈网络,得到第一融合特征,其中,所述第一特征向量包括所述第一融合特征;
其中,所述将所述第二图像样本输入增量模型,得到所述第二图像样本的第二特征向量,包括:
将所述第二图像样本输入所述第二主干网络,得到所述第二图像样本的多个不同分辨率的第二特征图;
将所述多个不同分辨率的第二特征图输入所述第二脖颈网络,得到第二融合特征,其中,所述第二特征向量包括所述第二融合特征。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失,包括:
根据所述第一融合特征和所述第二融合特征,确定特征蒸馏损失,其中,所述知识蒸馏损失包括所述特征蒸馏损失。
5.根据权利要求2所述的方法,其特征在于,所述基础模型还包括第一全局上下文模块,所述增量模型还包括第二全局上下文模块;
其中,所述将所述第二图像样本输入所述基础模型,得到所述第二图像样本的第一特征向量,包括:
将所述第二图像样本输入所述第一主干网络,得到所述第二图像样本的多个不同分辨率的第一特征图;
将所述多个不同分辨率的第一特征图输入所述第一脖颈网络,得到第一融合特征;
将所述第一融合特征输入所述第一全局上下文模块,得到所述第二图像样本的不同类别之间的第一关系,其中,所述第一特征向量包括所述第二图像样本不同类别之间的第一关系;
其中,所述将所述第二图像样本输入增量模型,得到所述第二图像样本的第二特征向量,包括:
将所述第二图像样本输入所述第二主干网络,得到所述第二图像样本的多个不同分辨率的第二特征图;
将所述多个不同分辨率的第二特征图输入所述第二脖颈网络,得到第二融合特征;
将所述第二融合特征输入所述第二全局上下文模块,得到所述第二图像样本的不同类别之间的第二关系,其中,所述第二特征向量包括所述第二图像样本不同类别之间的第二关系。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失,包括:
根据所述第二图像样本的不同类别之间的第一关系和所述第二图像样本的不同类别之间的第二关系,确定全局上下文蒸馏损失,其中,所述知识蒸馏损失包括所述全局上下文蒸馏损失。
7.根据权利要求2所述的方法,其特征在于,
所述将所述第二图像样本输入所述基础模型,得到所述第二图像样本的第一特征向量,包括:
将所述第二图像样本输入所述第一主干网络,得到所述第二图像样本的多个不同分辨率的第一特征图;
将所述多个不同分辨率的第一特征图输入所述第一脖颈网络,得到第一融合特征;
将所述第一融合特征输入所述第一检测头,得到所述第二图像样本的第一预测结果,其中,所述第一特征向量包括所述第一预测结果;
其中,所述将所述第二图像样本输入增量模型,得到所述第二图像样本的第二特征向量,包括:
将所述第二图像样本输入所述第二主干网络,得到所述第二图像样本的多个不同分辨率的第二特征图;
将所述多个不同分辨率的第二特征图输入所述第二脖颈网络,得到第二融合特征;
将所述第二融合特征输入所述第二检测头,得到所述第二图像样本的第二预测结果,其中,所述第二特征向量包括所述第二预测结果。
8.根据权利要求7所述的方法,其特征在于,所述根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失,包括:
根据所述第一预测结果和所述第二预测结果,确定预测结果蒸馏损失,其中,所述知识蒸馏损失包括所述预测结果蒸馏损失。
9.根据权利要求7所述的方法,其特征在于,还包括:
根据所述第二预测结果和所述第二图像样本的标注信息,确定检测损失;
其中,所述根据知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型,包括:
根据所述检测损失和所述知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述第一图像样本包括锂电池的缺陷图像样本,所述第二图像样本包括锂电池的缺陷图像样本。
11.一种目标检测方法,其特征在于,包括:
获取待检测图像;
将所述待检测图像输入目标检测模型,得到所述待检测图像的目标检测结果,其中,所述目标检测模型是根据权利要求1-10任一项所述的方法训练得到的。
12.一种目标检测模型训练装置,其特征在于,包括:
获取单元,用于获取第一训练样本集,所述第一训练样本集包括第一时间段收集的第一图像样本;
训练单元,用于根据所述第一训练样本集对机器学习模型进行训练,得到基础模型;
所述获取单元还用于获取第二训练样本集,所述第二训练样本集包括第二图像样本,所述第二图像样本包括对所述第一图像样本进行采样得到的回放数据样本和第二时间段收集的出现频率低于预设值的新数据样本;
所述基础模型,用于输入所述第二图像样本,得到所述第二图像样本的第一特征向量;
增量模型,用于输入所述第二图像样本,得到所述第二图像样本的第二特征向量,其中,所述增量模型与所述基础模型具有相同的模型结构;
确定单元,用于根据所述第一特征向量和所述第二特征向量,确定知识蒸馏损失;
参数更新单元,用于根据所述知识蒸馏损失,对所述增量模型的参数进行调整得到所述目标检测模型。
13.一种目标检测装置,其特征在于,包括:
获取单元,用于获取待检测图像;
目标检测模型,用于输入所述待检测图像,得到所述待检测图像的目标检测结果,其中,所述目标检测模型是根据权利要求1-10任一项所述的方法训练得到的。
14.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有指令,所述处理器执行所述指令时,使得所述处理器执行权利要求1-10任一项所述的方法。
15.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序包括用于执行权利要求1-10中任一项所述的方法。
16.一种计算机程序产品,其特征在于,包括计算机程序代码,当所述计算机程序代码被电子设备运行时,使得所述电子设备执行权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211104862.XA CN117036843A (zh) | 2022-09-09 | 2022-09-09 | 目标检测模型训练方法、目标检测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211104862.XA CN117036843A (zh) | 2022-09-09 | 2022-09-09 | 目标检测模型训练方法、目标检测方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117036843A true CN117036843A (zh) | 2023-11-10 |
Family
ID=88639933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211104862.XA Pending CN117036843A (zh) | 2022-09-09 | 2022-09-09 | 目标检测模型训练方法、目标检测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117036843A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117853492A (zh) * | 2024-03-08 | 2024-04-09 | 厦门微亚智能科技股份有限公司 | 一种基于融合模型的智能化工业缺陷检测方法及系统 |
-
2022
- 2022-09-09 CN CN202211104862.XA patent/CN117036843A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117853492A (zh) * | 2024-03-08 | 2024-04-09 | 厦门微亚智能科技股份有限公司 | 一种基于融合模型的智能化工业缺陷检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111860573B (zh) | 模型训练方法、图像类别检测方法、装置和电子设备 | |
CN109086811B (zh) | 多标签图像分类方法、装置及电子设备 | |
CN108229522B (zh) | 神经网络的训练方法、属性检测方法、装置及电子设备 | |
CN111027576B (zh) | 基于协同显著性生成式对抗网络的协同显著性检测方法 | |
CN111582175A (zh) | 一种共享多尺度对抗特征的高分遥感影像语义分割方法 | |
CN113095346A (zh) | 数据标注的方法以及数据标注的装置 | |
CN113469088A (zh) | 一种无源干扰场景下的sar图像舰船目标检测方法及系统 | |
CN111680753A (zh) | 一种数据标注方法、装置、电子设备及存储介质 | |
EP4273754A1 (en) | Neural network training method and related device | |
CN113052295B (zh) | 一种神经网络的训练方法、物体检测方法、装置及设备 | |
CN114419570A (zh) | 一种点云数据识别方法、装置、电子设备及存储介质 | |
CN115082752A (zh) | 基于弱监督的目标检测模型训练方法、装置、设备及介质 | |
CN115830399A (zh) | 分类模型训练方法、装置、设备、存储介质和程序产品 | |
CN115222061A (zh) | 基于持续学习的联邦学习方法以及相关设备 | |
CN117036843A (zh) | 目标检测模型训练方法、目标检测方法和装置 | |
CN114372532A (zh) | 标签标注质量的确定方法、装置、设备、介质及产品 | |
CN114168768A (zh) | 图像检索方法及相关设备 | |
CN115374927A (zh) | 一种神经网络模型训练的方法、异常检测的方法及设备 | |
CN116977249A (zh) | 缺陷检测的方法、模型训练的方法和装置 | |
CN116958512A (zh) | 目标检测方法、装置、计算机可读介质及电子设备 | |
CN115982388A (zh) | 案件质控图谱建立、案件文书质检方法、设备及存储介质 | |
CN117011219A (zh) | 物品质量检测方法、装置、设备、存储介质和程序产品 | |
CN115131291A (zh) | 对象计数模型的训练方法、装置、设备以及存储介质 | |
CN114638973A (zh) | 目标图像检测方法及图像检测模型训练方法 | |
CN117011616B (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 |