返回列表

12th place solution

473. PetFinder.my - Pawpularity Contest | petfinder-pawpularity-score

开始: 2021-09-23 结束: 2022-01-14 计算机视觉 数据算法赛
第12名解决方案

第12名解决方案

作者: kuro_B | 排名: 12 | 发布时间: 2022-01-16

首先,感谢主办方和本次比赛的所有参与者。
我的解决方案如下。

摘要

我使用了由2个fastai模型和1个pytorch模型组成的3个模型的加权集成。

Fastai模型基于此链接
而pytorch模型基于此链接

各模型的详细信息如下。

模型配置 beit_large_patch16_224 swin_large_patch4_window7_224 swin_large_patch4_window12_384
框架 fastai fastai pytorch-lightning (推理时使用纯pytorch)
学习率 2e-5 4e-5 1e-5
轮数 10 5 20 (使用早停)
调度器 OneCycleScheduler OneCycleScheduler CosineAnnealingWarmRestarts(T_0=20, eta_min=1e-4)
批次大小 4 4 4
梯度累积 16 8 8
折数 10 10 10
数据增强 翻转, 亮度, 对比度, 饱和度 翻转, 亮度, 对比度, 饱和度 随机水平翻转, 随机垂直翻转, 随机仿射变换, 颜色抖动
TTA 3倍, beta=0.5, 仅翻转 4倍, beta=0.5, 仅翻转 3倍, 水平翻转和随机旋转(rotate=45)
附加头 - - SVR 头
CV 得分 17.46 17.47 17.33
公开/私有 LB 18.00 / 17.20 17.87 / 17.02 17.86 / 17.01

我使用的损失函数是 BCEWithLogitsLoss,Mixup 在所有模型中通用。
此外,我使用 optuna 进行权重优化。

集成结果 CV/publicLB/privateLB: 17.121/17.774/16.936

效果良好的方法

以下两点对我很有效。

  • SVR 头
    它将 CV 提高了约 0.15 (17.51→17.33),私有 LB 也有类似程度的提升 (17.17→17.01)。
  • 将 'beit_large_patch16_224' 与 Swin 集成
    起初,我只集成了 Swin 模型,CV 约为 17.21 (私有 LB 16.947~16.975)。
    最后,我将 Beit-L 加入集成模型,CV 约为 17.121 (私有 LB 16.917~16.936)。

    我也尝试用 ConvNext-XL 代替 Beit-L 进行集成,结果与使用 Beit-L 的情况相似。(CV:
同比赛其他方案