Ezra-Yu / ACCV2022_FGIA_1st

1st solution for the Webly-supervised Fine-grained Recognition competition in https://www.cvmart.net/race/10412/base

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Solution of FGIA ACCV 2022(1st Place)

This is the 1st Place Solution for Webly-supervised Fine-grained Recognition, refer to the ACCV workshop competition in https://www.cvmart.net/race/10412/base.

Mainly done by Ezra-Yu, Yuan Liu and Songyang Zhang, base on MMClassifiionMMSelfSup. please flork and star them if you think they are useful.

Lecture and slide are available.

Note:

Tricks (AdaptiveSubCenterArcFace, EQL_Loss, Post-Hoc_LT_Adjusment, Uniform_Model_Soup) have been or will be implemented in MMClassifiion.

Result

Show the result

LB A

LB-A

LB B

LB-B


Reproduce / 复现

复现精度请点击这里

Description

Backbone and Pre-train

Archs

  • ViT + CE-loss + post-LongTail-Adjusment
  • ViT + SubCenterArcFaceWithAdvMargin(CE)
  • Swin-B + SubCenterArcFaceWithAdvMargin(SoftMax-EQL)
  • Swin-L + SubCenterArcFaceWithAdvMargin(SoftMAx-EQL)

所有都使用了 Flip TTA

Flow

MIM 预训练 --> 训练 --> 清洗数据 --> fine-tune + 集成 + 生成伪标签交替训练 --> 后处理

  1. MAE 预训练
  2. Swin 与 ViT 的训练
  3. 使用权重做数据清洗
  4. 训练 -> 制作伪标签,放回训练集中 -> 再训练; (testa3轮)
  5. 训练 -> 制作伪标签,放回训练集中 -> 再训练; (testb3轮,包括testa的伪标签)
  6. 模型融合,调整预测的标签分布,提交

flow

Summary

image

使用了没有效果 used but no improvement

  1. 使用检索以及检索分类混合的方式
  2. 使用EfficientNet

后续 not used but worth try

  1. DiVE 蒸馏提升长尾问题表现
  2. Simim 训一个 swinv2 的预训练模型
  3. 优化 re-distribute-label

About

1st solution for the Webly-supervised Fine-grained Recognition competition in https://www.cvmart.net/race/10412/base


Languages

Language:Python 95.2%Language:Shell 4.2%Language:Dockerfile 0.6%