CN113159115B - 基于神经架构搜索的车辆细粒度识别方法、***和装置 - Google Patents
基于神经架构搜索的车辆细粒度识别方法、***和装置 Download PDFInfo
- Publication number
- CN113159115B CN113159115B CN202110262167.5A CN202110262167A CN113159115B CN 113159115 B CN113159115 B CN 113159115B CN 202110262167 A CN202110262167 A CN 202110262167A CN 113159115 B CN113159115 B CN 113159115B
- Authority
- CN
- China
- Prior art keywords
- network
- fine
- vehicle
- granularity
- fusion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 230000001537 neural effect Effects 0.000 title claims abstract description 35
- 238000012549 training Methods 0.000 claims abstract description 19
- 230000006870 function Effects 0.000 claims description 56
- 230000004927 fusion Effects 0.000 claims description 37
- 230000008569 process Effects 0.000 claims description 15
- 238000007500 overflow downdraw method Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 10
- 238000010276 construction Methods 0.000 claims description 8
- 238000002922 simulated annealing Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 5
- 238000004422 calculation algorithm Methods 0.000 claims description 3
- 230000007547 defect Effects 0.000 abstract description 4
- 210000002569 neuron Anatomy 0.000 description 11
- 210000004027 cell Anatomy 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000011176 pooling Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/254—Fusion techniques of classification results, e.g. of results related to same input data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/08—Detecting or categorising vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于神经架构搜索的车辆细粒度识别方法,包括利用预先确定的多路径网络对已获取的图像进行车辆细粒度识别,融合多路径网络输出的多个分类结果,得到最终识别结果;多路径网络的确定包括:获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;重复堆叠最佳的网络架构单元,得到未训练的多路径网络;基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。本发明能够解决神经架构搜索方法难以扩展至细粒度识别任务的不足。
Description
技术领域
本发明涉及基于神经架构搜索的车辆细粒度识别方法、***和装置,属于计算机视觉技术领域。
背景技术
神经架构搜索是一种通过机器自动搜索网络架构的技术,通常在一个由卷积、池化等大量原子操作构建的集合中选择最佳的操作组合,形成一个最佳的网络架构单元,并以此构建新的网络。神经架构搜索摒弃了人工设计网络架构的思路,将设计神经网络架构的任务交由机器自动搜索完成。
车辆细粒度识别是经典分类任务的延伸,不同于经典通用目标识别中目标类别差异巨大,车辆细粒度识别需要区分车辆这一大类下不同子类的车辆。由于待分类的车辆同属于一个大类,类间差异相对较小,同时由于同一类型的不同个体车辆存在着拍摄视角、距离、光照、遮挡等各种因素的影响,类内差异相对较大,这就使得车辆细粒度识别较通用目标识别任务难度大得多。现阶段,神经架构搜索主要用于通用目标识别任务,来搜索最佳的网络架构,缺乏从细粒度识别角度进行目标函数设计和网络骨架构建等考虑,难以直接扩展至细粒度识别任务。
发明内容
本发明的目的在于克服现有技术中的不足,提供基于神经架构搜索的车辆细粒度识别方法、***和装置,能够解决现有技术中神经架构搜索方法难以直接有效扩展至细粒度识别任务的不足。为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供了基于神经架构搜索的车辆细粒度识别方法,包括:
获取包含待识别目标的图像;
利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果;
其中,所述多路径网络通过以下步骤得到的:
获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;
在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;
重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络;
基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
结合第一方面,优选地,所述源域车辆细粒度识别数据集是通过以下方式中的一种或多种获取的:采用一个或多个的可开源获取的通用车辆细粒度识别数据集或通用车辆再识别数据集构建得到;采用摄像设备对车辆进行摄录并标注得到;采用搜索引擎从互联网搜索下载并标注得到。
结合第一方面,优选地,所述目标域车辆细粒度识别数据集是通过以下方式中的一种或多种获取的:采用摄像设备对目标域车辆进行摄录并标注得到;采用搜索引擎从互联网搜索下载并标注得到。
结合第一方面,具体地,所述目标域车辆指特定行业的车辆,包括军用装甲车辆和工程施工车辆。
结合第一方面,优选地,所述搜索的方法为DARTS或PDARTS。
结合第一方面,进一步地,所述预设的初始网络由堆叠若干神经架构搜索中的网络架构单元构成,且每个网络架构单元的内部连接结构是相同的、经搜索确定的。
结合第一方面,优选地,所述预设的初始网络性能最优时,对应网络架构单元的内部连接结构为最优,得到最佳的网络架构单元。
结合第一方面,进一步地,所述预设的损失函数为:
L=LPM+λLCE (1)
(1)式中,λ表示LCE和LPM之间的权重,LPM表示类中心度量损失函数,通过以下公式表示:
(2)式中,fi k表示第i类车辆中的第k个样本特征,表示第i类车辆中的样本特征中心,函数g表示度量fi k和/>的距离函数;
(1)式中,LCE表示分类损失函数,通过以下公式表示:
(3)式中,fk表示第k个样本特征,yk表示第k个样本的真实标签,且yk∈{1,2,...,C},表示特征fk映射到真实标签类别yk的权重参数,Wj表示特征fk映射到第j个类别的权重参数,C为类别总个数。
结合第一方面,进一步地,所述类中心度量损失函数需要配置如下数据采样方法:
使用不放回采样随机选择P个类别;对选择的每个类别,再次使用不放回采样随机选择Q个样本,最终构造总数为PQ个样本的一个批量的采样数据。
结合第一方面,优选地,表示第i类车辆中的样本特征中心的由批量数据中的第i类Q个样本计算均值得到。
结合第一方面,优选地,所述多路径网络由多个分支路径组成,并分为N个计算阶段,所述多路径网络中的各个计算阶段由重复堆叠最佳网络架构单元得到。
结合第一方面,优选地,当源域车辆细粒度识别数据集的图像数据输入网络后,每个计算阶段的输出会输入下一个阶段,或输入另一个分支路径,在阶段N共生成N个特征输出和分类预测概率。
结合第一方面,优选地,所述预设的损失函数用于指导计算。
结合第一方面,优选地,按照一定的规则重复堆叠所述最佳的网络架构单元,所述一定的规则包括每个阶段线性串连若干个神经元胞,且具有相同维度的输入输出大小。
结合第一方面,进一步地,所述训练多路径网络的初始网络的参数采用批量随机梯度下降算法训练,其中参数更新规则如下:
(4)式中,wt为第t次迭代时的参数值,为目标损失对参数wt的偏导数,学习率ηt按照带预热的余弦模拟退火策略进行更新,计算规则如下:
(5)式中,η0为最大学习率,t0为预热的迭代次数,ttotal为总迭代次数。
结合第一方面,进一步地,所述预设的融合方法包括加权融合和乘积融合:
其中,所述加权融合通过以下公式实现:
(6)式中,为加权融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数;
其中,所述乘积融合通过以下公式实现:
(7)式中,为加权融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数。
结合第一方面,进一步地,所述利用所述多路径网络对车辆进行细粒度识别,融合多路径网络输出的多个分类结果时,采用预设的融合方法中加权融合和乘积融合的任一种。
第二方面,本发明提供了一种基于神经架构搜索的车辆细粒度识别***,包括:
获取模块:用于获取包含待识别目标的图像;
融合识别模块:用于利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果;
其中,还包括用于确定所述多路径网络的网络构建模块,包括:
数据集获取模块:用于获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;
搜索模块:用于在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;
堆叠构建模块:用于重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络;
训练模块:用于基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
结合第一方面,进一步地,还包括初始网络构建模块,该模块利用神经架构搜索中的网络架构单元堆叠构建得到所述初始网络,所述初始网络为车辆细粒度识别的初始网络。
第三方面,本发明提供了一种基于神经架构搜索的车辆细粒度识别装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行第一方面所述方法的步骤。
第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述方法的步骤。
与现有技术相比,本发明实施例所提供的一种基于神经架构搜索的车辆细粒度识别方法所达到的有益效果包括:
本发明利用多路径网络对包含识别目标的图像进行车辆细粒度识别,融合多路径网络输出的多个分类结果,得到最终识别结果;所述融合步骤集成多个路径的预测概率进行最终的分类决策,即使单个路径出现分类决策失误,多路径融合的决策结果也可以得到正确的决策结果;多路径网络较单个路径网络更具鲁棒性、可靠性,泛化能力更强;
多路径网络由最佳的网络架构单元重复堆叠得到的,其中最佳的网络架构单元的内部连接结构是通过损失函数指导在源域车辆细粒度识别数据集中搜索得到的,多路径网络的参数基于目标域车辆细粒度识别数据集经过损失函数训练,能够得到更适用于车辆细粒度识别的多路径网络,能够解决现有技术中神经架构搜索方法难以直接有效扩展至细粒度识别任务的不足,能够提升细粒度识别结果的准确性和鲁棒性。
附图说明
图1是本发明实施例一提供的一种基于神经架构搜索的车辆细粒度识别方法的流程图;
图2是本发明实施例一提供的一种基于神经架构搜索的车辆细粒度识别方法中多路径网络的结构图;
图3是本发明实施例一提供的一种基于神经架构搜索的车辆细粒度识别方法中学习率变化曲线对比图;
图4是本发明实施例二提供的一种基于神经架构搜索的车辆细粒度识别***的结构图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
实施例一:
如图1所示,本发明实施例提供了一种基于神经架构搜索的车辆细粒度识别方法,包括:
获取包含待识别目标的图像;
利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果;
其中,所述多路径网络通过以下步骤得到的:
获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;
在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;
重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络;
基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
如图1所示,具体步骤如下:
步骤1:获取包含待识别目标的图像。
步骤2:获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集。
需要说明的是,源域车辆细粒度识别数据集相对目标域车辆细粒度识别数据集在数据规模上更大,可包含各种通用或非通用车辆,例如:小汽车、公交车、大货车、工程车、装甲车等等。而所述目标域车辆主要指特定行业的车辆,例如:军用装甲车辆中的坦克、步战车、通信车,或工程施工车辆中的吊车、挖土车、压路机等。
源域车辆细粒度识别数据集是通过以下方式中的一种或多种获取的:采用一个或多个的可开源获取的通用车辆细粒度识别数据集或通用车辆再识别数据集构建得到;采用摄像设备对车辆进行摄录并标注得到;采用搜索引擎从互联网搜索下载并标注得到。目标域车辆细粒度识别数据集是通过以下方式中的一种或多种获取的:采用摄像设备对目标域车辆进行摄录并标注得到;采用搜索引擎从互联网搜索下载并标注得到。
在采用一个或多个的可开源获取的通用车辆细粒度识别数据集或通用车辆再识别数据集构建得到源域车辆细粒度识别数据集时,可开源获取的通用车辆细粒度识别数据集包括StanfordCars等,通用车辆再识别数据集包括VeRi776等,需要将不同数据集中同类的数据进行合并,例如:数据集A中包含车辆类别S,数据集B中也包含车辆类别S,则合同后为一个类,类别为S。
在采用摄像设备对车辆进行摄录并标注得到源域/目标域车辆细粒度识别数据集时,同一个类别的车辆数据应该尽可能包含不同角度、场景、天气等条件下的数据,例如拍摄99式主战坦克,应包括前视、后视、侧视、俯视等角度拍摄的数据,还应包括丛林、平原、丘陵、荒漠、城市等场景拍摄的数据,还包括晴天、雨天、雾天、雪天等不同天气条件下拍摄的数据。
在采用搜索引擎从互联网搜索下载并标注得到源域/目标域车辆细粒度识别数据集时,能够利用搜索引擎的查询接口进行批量下载后人工筛选,也能够利用搜索引擎的爬虫接口,从专业车辆网站下载数据并人工筛选标注。
将源域车辆细粒度识别数据集按照一定的比例,如1∶1或2∶1等,随机划分为训练集和测试集。
步骤3:在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元。
所述网络架构单元也称为神经元胞(Cell),通过若干个Cell堆叠可构建一个车辆细粒度识别的初始网络。所述Cell由若干节点和操作边构成,所述最佳的网络架构单元是通过一定的搜索技术,使初始网络获得最佳性能时的网络架构单元。
所述Cell由若干计算操作组成,具体计算操作可包括3×3、5×5和7×7深度可分卷积,3×3和5×5的扩张卷积,7×1接1×7的组合卷积,3×3的平均池化,3×3的最大池化,跳跃连接和零操作等。
根据是否降低分辨率,所述神经元胞分为两类:正常元胞和降分元胞。所述降分元胞,执行其可对图像特征分辨率进行降分,并增加特征通道数;所述正常元胞,执行其不改变输入输出的大小,可以反复堆叠正常元胞以增加网络深度。
具体地,预设的初始网络由堆叠若干神经架构搜索中的网络架构单元构成,且每个网络架构单元的内部连接结构是相同的、经搜索确定的。预设的初始网络性能最优时,对应网络架构单元的内部连接结构为最优,得到最佳的网络架构单元。
预设的损失函数为类中心度量损失函数和分类损失函数的加权函数,通过以下公式表示:
L=LPM+λLCE (1)
(1)式中,λ表示LCE和LPM之间的权重,LPM表示类中心度量损失函数,通过以下公式表示:
(2)式中,fi k表示第i类车辆中的第k个样本特征,表示第i类车辆中的样本特征中心,函数g表示度量fi k和/>的距离函数;
(1)式中,LCE表示分类损失函数,通过以下公式表示:
(3)式中,fk表示第k个样本特征,yk表示第k个样本的真实标签,且yk∈{1,2,...,C},表示特征fk映射到真实标签类别yk的权重参数,Wj表示特征fk映射到第j个类别的权重参数,C为类别总个数。
配合类中心度量损失函数的采样方法要求:首先,使用不放回采样随机选择P个类别;然后,对选择的每个类别,再使用不放回采样随机选择Q个样本,最终构造总数为PQ个样本的一个批量的采样数据。其中,P和Q的选择根据经验和设备能力设定,例如:Q=4、P=16。
样本特征中心由批量数据中的第i类Q个样本计算均值得到。
搜索最佳网络架构单元:在预设的损失函数的指导下,采用DARTS技术或者PDARTS技术,在源域车辆细粒度识别数据集中搜索初始网络中网络架构单元的内部连接结构,使初始网络获得最佳性能。需要说明的是,网络架构单元(即神经元胞)的内部节点个数是固定的,搜索过程等价于为任意两个节点从若干计算操作中选择1个作为操作边,由此得到最佳网络架构单元。
具体地,DARTS技术的相关方法见Hanxiao Liu,Karen Simonyan,Yiming Yang,DARTS:Differentiable Architecture Search[C]//International Conference onLearning Representation(ICLR 2019),May 6-9,2019,New Orleans,LA,USA.OpenReview.net,2019。
具体地,PDARTS技术的相关方法见Xin Chen,LingxiXie,Jun Wu,Qi Tian,Progressive DARTS:Bridging the Optimization Gap for NAS in the Wild[J].Int.J.Comput Vis.,2020。
所述初始网络、所述损失函数、所述搜索方法,通过不断迭代优化,能够搜索到网络架构单元的最佳内部连接结构,并在所述训练集上训练模型并在所述验证集上评测模型性能。重复该过程多次,选择使得评测性能最好的网络架构单元作为最佳的网络架构单元。
步骤4:按照一定的规则重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络,基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
具体地,一定的规则包括每个阶段线性串连若干个神经元胞,且具有相同维度的输入输出大小。
例如:阶段1包括神经元胞A、B、C,并先后顺序相连,其中A的输出大小,等于B的输出大小,等于C的输出大小。阶段2包括神经元胞D、E、F、G,并先后顺序相连,其中D的输出大小,等于E的输出大小,等于F的输出大小,等于G的输出大小。阶段3、…、阶段N,类似…。
所述一定的规则还包括每个阶段若干个神经元胞可跳跃连接。
例如:阶段2包括神经元胞D、E、F、G,并先后顺序相连,其中D除了直接连接E,还跨越E连接F、连接G;类似的,E除了直接连接F,还跨越F连接G。
所述一定的规则还包括不同阶段可以具有不同的输入输出大小。
例如:阶段1输出维度为W1×H1×C1,阶段2输出维度为W2×H2×C2,阶段3输出维度为W3×H3×C3,…,其中W1不等于W2,且不等于W3,…,H1不等于H2,且不等于H3,…,C1不等于C2,且不等于C3,…。
所述不同阶段可以具有不同的输入输出大小,具体可采用如下策略:在多路径网络中,数据在输入下一个阶段后,每个阶段的第一个神经元胞为所述降分元胞;或在输入下一个路径后,第一个神经元胞为所述降分元胞。
所述一定的规则又包括每个路径具有不同数量的一个或多个阶段。
例如:路径1包括阶段1、2、3、4、5,路径2包括阶段2、3、4、5,路径3包括阶段3、4、5,路径4包括阶段4、5,路径5包括阶段5。
所述一定的规则又包括具有不同的路径个数和阶段个数。
例如:如图2(b)所示,路径2的输入是路径1的阶段2的输出,路径个数有3个,而阶段个数有4个。
预设的损失函数为类中心度量损失函数和分类损失函数的加权函数,类中心损失函数作用于每个路径提取的特征,其中特征由最后一个阶段输出的结果经过一定映射操作得到。其中,所述一定的操作可以是以下操作中的任一种:(a)最大值池化操作;(b)均值池化操作;(c)最大值池化操作和均值池化操作;(d)张量拉直操作。类中心损失函数作用的特征可以再经过一个批量归一化操作,对特征的归一化可提升在度量的一致性。
训练多路径网络的初始网络的参数采用批量随机梯度下降算法训练,其中参数更新规则如下:
(4)式中,wt为第t次迭代时的参数值,为目标损失对参数wt的偏导数,学习率ηt按照带预热的余弦模拟退火策略进行更新,计算规则如下:
(5)式中,η0为最大学习率,t0为预热的迭代次数,ttotal为总迭代次数。
例如:一种有效的设置为η0=0.0035,t0=5,ttotal=200。
图3给出了ttotal=200,η0=0.0035条件下,不同预热的迭代次数t0=5,10,20的学习率变化曲线。同时,给出了不带预热的余弦模拟退火学习率变化曲线。
根据图3可以发现,带预热的余弦模拟退火学习率最开始从0逐步上升,使学习对数据有一个缓慢的适应过程,早期维持较大的值可加快优化过程,中期快速下降实现对目标的局部寻优,后期学习率变缓,使优化逐步收敛。其中,最开始线性变化过程体现了对模型的预热过程,可以更好地提升学习结果。
所述多路径网络在所述带预热的余弦模拟退火学习率执行批量随机梯度下降优化策略下可以学习得到可执行预测任务的模型参数。
步骤5:利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果。
预设的融合方法包括加权融合和乘积融合,利用所述多路径网络对车辆进行细粒度识别,融合多路径网络输出的多个分类结果时,采用预设的融合方法中加权融合和乘积融合的任一种。
其中,所述加权融合通过以下公式实现:
(6)式中,为加权融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数;
其中,所述乘积融合通过以下公式实现:
(7)式中,为加权融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数。
多路径网络在执行细粒度识别任务时,从第m个路径输出的第i个类的概率为分支路径总数为M,即有M个分类器,各分类器分类的类别个数为C,则执行加权融合或乘积融合进行多个预测结果的合并。
实施例二:
如图4所示,本发明实施例提供一种基于神经架构搜索的车辆细粒度识别***,包括:
获取模块:用于获取包含待识别目标的图像;
融合识别模块:利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果;
其中,还包括用于确定所述多路径网络的网络构建模块,包括:
数据集获取模块:用于获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;
搜索模块:用于在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;
堆叠构建模块:用于重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络;
训练模块:用于基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
具体地,还包括初始网络构建模块,该模块利用神经架构搜索中的网络架构单元堆叠构建得到所述初始网络,所述初始网络为车辆细粒度识别的初始网络。
实施例三:
本发明实施例提供一种基于神经架构搜索的车辆细粒度识别装置,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行实施例一所述方法的步骤。
实施例四:
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现实施例一所述方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (8)
1.一种基于神经架构搜索的车辆细粒度识别方法,其特征在于,包括:
获取包含待识别目标的图像;
利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果;所述预设的融合方法包括加权融合和乘积融合:
其中,所述加权融合通过以下公式实现:
(6)式中,为加权融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数;
其中,所述乘积融合通过以下公式实现:
(7)式中,为乘积融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数;
其中,所述多路径网络通过以下步骤得到的:
获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;
在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;其中,所述预设的损失函数为:
L=LPM+λLCE (1)
(1)式中,λ表示LCE和LPM之间的权重,LPM表示类中心度量损失函数,通过以下公式表示:
(2)式中,fi k表示第i类车辆中的第k个样本特征,表示第i类车辆中的样本特征中心,函数g表示度量fi k和/>的距离函数;
(1)式中,LCE表示分类损失函数,通过以下公式表示:
(3)式中,fk表示第k个样本特征,yk表示第k个样本的真实标签,且yk∈{1,2,…,C},表示特征fk映射到真实标签类别yk的权重参数,Wj表示特征fk映射到第j个类别的权重参数,C为类别总个数;
重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络;
基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
2.根据权利要求1所述的基于神经架构搜索的车辆细粒度识别方法,其特征在于,所述预设的初始网络由堆叠若干神经架构搜索中的网络架构单元构成,且每个网络架构单元的内部连接结构是相同的、经搜索确定的。
3.根据权利要求1所述的基于神经架构搜索的车辆细粒度识别方法,其特征在于,所述类中心度量损失函数需要配置如下数据采样方法:
使用不放回采样随机选择P个类别;对选择的每个类别,再次使用不放回采样随机选择Q个样本,最终构造总数为PQ个样本的一个批量的采样数据。
4.根据权利要求1所述的基于神经架构搜索的车辆细粒度识别方法,其特征在于,所述训练多路径网络的参数采用批量随机梯度下降算法训练,其中参数更新规则如下:
(4)式中,wt为第t次迭代时的参数值,为目标损失对参数wt的偏导数,学习率ηt按照带预热的余弦模拟退火策略进行更新,计算规则如下:
(5)式中,η0为最大学习率,t0为预热的迭代次数,ttotal为总迭代次数。
5.根据权利要求1所述的基于神经架构搜索的车辆细粒度识别方法,其特征在于,所述利用所述多路径网络对车辆进行细粒度识别,融合多路径网络输出的多个分类结果时,采用预设的融合方法中加权融合和乘积融合的任一种。
6.一种基于神经架构搜索的车辆细粒度识别***,其特征在于,包括:
获取模块:用于获取包含待识别目标的图像;
融合识别模块:用于利用预先确定的多路径网络对所述图像进行车辆细粒度识别,采用预设的融合方法融合多路径网络输出的多个分类结果,得到最终识别结果;所述预设的融合方法包括加权融合和乘积融合:
其中,所述加权融合通过以下公式实现:
(6)式中,为加权融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数;
其中,所述乘积融合通过以下公式实现:
(7)式中,为乘积融合后第i个类的预测概率,/>为第m个路径输出的第i个类的概率,M为分类器个数,即分支路径个数,C为类别个数;
其中,还包括用于确定所述多路径网络的网络构建模块,包括:
数据集获取模块:用于获取源域车辆细粒度识别数据集和目标域车辆细粒度识别数据集;
搜索模块:用于在源域车辆细粒度识别数据集,基于预设的损失函数搜索使预设的初始网络性能最优时网络架构单元的内部连接结构,得到最佳的网络架构单元;其中,所述预设的损失函数为:
L=LPM+λLCE (1)
(1)式中,λ表示LCE和LPM之间的权重,LPM表示类中心度量损失函数,通过以下公式表示:
(2)式中,fi k表示第i类车辆中的第k个样本特征,表示第i类车辆中的样本特征中心,函数g表示度量fi k和/>的距离函数;
(1)式中,LCE表示分类损失函数,通过以下公式表示:
(3)式中,fk表示第k个样本特征,yk表示第k个样本的真实标签,且yk∈{1,2,...,C},表示特征fk映射到真实标签类别yk的权重参数,Wj表示特征fk映射到第j个类别的权重参数,C为类别总个数;
堆叠构建模块:用于重复堆叠所述最佳的网络架构单元,得到未训练的多路径网络;
训练模块:用于基于目标域车辆细粒度识别数据集,采用预设的损失函数训练多路径网络的参数,得到训练完成的多路径网络。
7.一种基于神经架构搜索的车辆细粒度识别装置,其特征在于,包括处理器及存储介质;
所述存储介质用于存储指令;
所述处理器用于根据所述指令进行操作以执行权利要求1~5任一项所述方法的步骤。
8.计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1~5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110262167.5A CN113159115B (zh) | 2021-03-10 | 2021-03-10 | 基于神经架构搜索的车辆细粒度识别方法、***和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110262167.5A CN113159115B (zh) | 2021-03-10 | 2021-03-10 | 基于神经架构搜索的车辆细粒度识别方法、***和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113159115A CN113159115A (zh) | 2021-07-23 |
CN113159115B true CN113159115B (zh) | 2023-09-19 |
Family
ID=76886729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110262167.5A Active CN113159115B (zh) | 2021-03-10 | 2021-03-10 | 基于神经架构搜索的车辆细粒度识别方法、***和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113159115B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114495027A (zh) * | 2022-01-11 | 2022-05-13 | 北京科技大学 | 一种基于网络数据的车型细粒度识别方法及装置 |
CN115424086A (zh) * | 2022-07-26 | 2022-12-02 | 北京邮电大学 | 多视角的细粒度识别方法、装置、电子设备及介质 |
CN117036911A (zh) * | 2023-10-10 | 2023-11-10 | 华侨大学 | 一种基于神经架构搜索的车辆再辨识轻量化方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214441A (zh) * | 2018-08-23 | 2019-01-15 | 桂林电子科技大学 | 一种细粒度车型识别***及方法 |
CN110852168A (zh) * | 2019-10-11 | 2020-02-28 | 西北大学 | 基于神经架构搜索的行人重识别模型构建方法及装置 |
CN110956260A (zh) * | 2018-09-27 | 2020-04-03 | 瑞士电信公司 | 神经架构搜索的***和方法 |
WO2020221200A1 (zh) * | 2019-04-28 | 2020-11-05 | 华为技术有限公司 | 神经网络的构建方法、图像处理方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110889487A (zh) * | 2018-09-10 | 2020-03-17 | 富士通株式会社 | 神经网络架构搜索装置和方法及计算机可读记录介质 |
-
2021
- 2021-03-10 CN CN202110262167.5A patent/CN113159115B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214441A (zh) * | 2018-08-23 | 2019-01-15 | 桂林电子科技大学 | 一种细粒度车型识别***及方法 |
CN110956260A (zh) * | 2018-09-27 | 2020-04-03 | 瑞士电信公司 | 神经架构搜索的***和方法 |
WO2020221200A1 (zh) * | 2019-04-28 | 2020-11-05 | 华为技术有限公司 | 神经网络的构建方法、图像处理方法及装置 |
CN110852168A (zh) * | 2019-10-11 | 2020-02-28 | 西北大学 | 基于神经架构搜索的行人重识别模型构建方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于多任务卷积神经网络的车辆多属性识别;王耀玮;唐伦;刘云龙;陈前斌;;计算机工程与应用(08);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113159115A (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113159115B (zh) | 基于神经架构搜索的车辆细粒度识别方法、***和装置 | |
CN110263705B (zh) | 面向遥感技术领域两期高分辨率遥感影像变化检测*** | |
CN111507370A (zh) | 获得自动标注图像中检查标签的样本图像的方法和装置 | |
CN113222011B (zh) | 一种基于原型校正的小样本遥感图像分类方法 | |
CN112308825B (zh) | 一种基于SqueezeNet的农作物叶片病害识别方法 | |
CN110826379A (zh) | 一种基于特征复用与YOLOv3的目标检测方法 | |
CN109299668A (zh) | 一种基于主动学习和聚类分析的高光谱图像分类方法 | |
Sapijaszko et al. | An overview of recent convolutional neural network algorithms for image recognition | |
CN111723915A (zh) | 深度卷积神经网络的剪枝方法、计算机设备及应用方法 | |
CN114492624A (zh) | 一种基于元学习的小样本学习方法、装置和电子设备 | |
CN114926693A (zh) | 基于加权距离的sar图像小样本识别方法及装置 | |
CN111832580A (zh) | 结合少样本学习与目标属性特征的sar目标识别方法 | |
CN111008630A (zh) | 一种基于弱监督学习的目标定位方法 | |
CN117636298A (zh) | 基于多尺度特征学习的车辆重识别方法、***及存储介质 | |
CN115546879B (zh) | 用于表情识别的细粒度识别模型及方法 | |
CN115018884B (zh) | 基于多策略融合树的可见光红外视觉跟踪方法 | |
Yamada et al. | Weight Features for Predicting Future Model Performance of Deep Neural Networks. | |
CN116304144A (zh) | 基于对抗神经网络结构搜索的图像处理方法及装置 | |
CN113032612B (zh) | 一种多目标图像检索模型的构建方法及检索方法和装置 | |
CN115292509A (zh) | 基于多粒度注意力网络的图立方链接预测方法 | |
CN115424086A (zh) | 多视角的细粒度识别方法、装置、电子设备及介质 | |
CN114742199A (zh) | 一种基于注意力机制的神经网络宏架构搜索方法及*** | |
CN114202671A (zh) | 一种图像预测优化处理方法及装置 | |
CN111626373A (zh) | 多尺度加宽残差网络、小目标识别检测网络及其优化方法 | |
CN111325242A (zh) | 一种图像的分类方法、终端及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |