2.6 KiB
2.6 KiB
特征学习
此部分主要是针对特征学习的训练模式进行说明,即RecModel
的训练模式。主要是为了支持车辆识别(车辆细分类、ReID)、Logo识别、动漫人物识别、商品识别等特征学习的应用。与在ImageNet
上训练普通的分类网络不同的是,此特征学习部分,主要有以下特征
- 支持对
backbone
的输出进行截断,即支持提取任意中间层的特征信息 - 支持在
backbone
的feature输出层后,添加可配置的网络层,即Neck
部分 - 支持
ArcFace Loss
等metric learning
相关loss函数,提升特征学习能力
1 整体流程
特征学习的整体结构如上图所示,主要包括:数据增强、Backbone的设置、Neck、Metric Learning等几大部分。其中Neck
部分为自由添加的网络层,如添加的embedding层等,当然也可以不用此模块。训练时,利用Metric Learning
部分的Loss对模型进行优化。预测时,一般来说,默认以Neck
部分的输出作为特征输出。
针对不同的应用,可以根据需要,对每一部分自由选择。每一部分的具体配置,如数据增强、Backbone、Neck、Metric Learning相关Loss等设置,详见具体应用:车辆识别、Logo识别、动漫人物识别、商品识别
2 配置文件说明
配置文件说明详见yaml配置文件说明文档。其中模型结构配置,详见文档中识别模型结构配置部分。
3 预训练模型
以下为各应用在不同数据集下的预训练模型