返回列表

6th place solution

363. Bengali.AI Handwritten Grapheme Classification | bengaliai-cv19

开始: 2019-12-19 结束: 2020-03-16 计算机视觉 数据算法赛
第6名方案

第6名方案

作者: Maxwell
比赛排名: 第6名

首先,恭喜获胜者 @linshokaku 以及所有完成本次比赛的参与者。
我们没有想到会有这么大的震动(我们估计私有测试集中不会有那么多未见过的数据)。

无论如何,感谢 Bengali.AI 和 Kaggle 组织这次比赛,也感谢我的队友 @nejumi


下图显示了我们方案的概述。我认为我们的方案非常简单,没有什么特别之处。
(顺便说一句,第一名的方案对我来说非常独特且令人印象深刻 ;-) )
在这里,我将针对一些值得注意的点进行简单的解释。

Solution Overview

注意: 如果您想查看更高分辨率的图像,请参考此 链接

  1. 1. 密集的数据增强

    我们使用了 CutMix、MixUp、Cutout、宽度/高度平移、旋转、腐蚀、GridMask(感谢 @haqishen)、缩放等增强方法。
    CutMix 和 Cutout 对我们两人都很有效,但对我来说,高度平移和旋转效果不好,可能是因为 137 x 236 的尺寸(一些字形元素移到了图像区域之外 :-( )。

  2. 2. 共现关系处理

    在训练集中,R、V 和 C 之间的组合是有限的。但正如主办方所说,在测试集中会出现一些未见过的组合。所以我做了一个简单的技巧;建立一个同时考虑 R、V、C 的共现和非共现关系的模型,以增强基于 SE-ResNet50 模型对未见数据的鲁棒性。该模型在 SE-ResNet 块之后有双路径。一条是从 GeM2D 到各个顶层全连接层(R、V 和 C)的直接路径。另一条则经过 2 个全连接层(请见上图)。

  3. 3. 多阶段学习(交叉熵,Reduced Focal Loss(感谢 @phalanx))

    在比赛中期,@phalanx 在这个不错的 帖子 中建议我们使用 OHEM。
    实际上,使用相同的技术后,我们的 CV 分数(召回率)确实提高了。

  4. 4. 不同图像尺寸的集成

    在一些 CV 比赛中,不同尺寸的图像集成可以提高分数。我们认为这在本次比赛中也是一样的。这个集成将我们的排名从第 12 名推到了第 6 名。

  5. 5. 后处理(对我们影响很大)

    我们调整了预测结果以改善本次比赛的评估指标(召回率)。优化是针对所有类别(168 + 11 + 7)进行的。我们使用(1/每个类别的数量)作为优化的初始值。最优系数非常接近初始值。我们当时非常紧张是否要使用这种后处理,但结果是将我们推入了金牌区。

同比赛其他方案