返回列表

Private 22nd Place Solution

434. Human Protein Atlas - Single Cell Classification | hpa-single-cell-image-classification

开始: 2021-01-26 结束: 2021-05-11 生命科学 数据算法赛
Private 22nd Place Solution

Private 22nd Place Solution (Private LB 第22名方案)

作者: cool_rabbit
原文发布时间: 2021-05-12

恭喜所有的获奖者,也非常感谢主办方举办了如此有趣的比赛!!
这个任务主要在两个方面非常有挑战性:弱标签和类别不平衡。
我在解决这些问题上花了很多精力,并在这个过程中学到了很多。

摘要

  • 我将这次比赛视为一个分类任务(除了 HPA Cell Segmentator 外,我没有使用任何分割模型)。
  • 环境:Kaggle Notebook 和 Datasets,TPU 训练,GPU 推理,PyTorch。
  • 细胞切片:选择“细胞核 BBox 中心”作为切片中心,选择“细胞 BBox 短边”作为切片边长 → 分数有所提升!!
  • 两阶段训练流程(对于第二阶段,使用了伪标签、阈值处理和采样方法)。
  • 进一步添加了绿色图像级标签预测,由 @h053473666 分享。

训练

我的流程如下:
交叉验证:多标签分层分组 K折(按图像 ID 分组)
数据增强:翻转、随机旋转、位移缩放旋转
损失函数:BCEWithLogitsLoss
优化器:Adam
学习率调度器:余弦退火
作为输入使用的细胞切片数量:约 70000(第一阶段),约 75000(第二阶段)
训练轮数:5轮,不使用早停
训练时间:每个模型 1~2 小时

Screen Shot 2021-05-12 at 12 54 37

推理

我使用了 @samusram 的快速分割器,并做了一些修改。
上述模型的分类预测结果与分割器的实例分割结果相结合。
https://www.kaggle.com/drtausamaru/hpa-ct-ill-inference-private

Screen Shot 2021-05-12 at 12 48 40

对我无效的方法(分数下降)

  • 除了我采用的策略外的其他细胞切片方法(整细胞切片、细胞 BBox 长边长度、将目标细胞外部区域的值全部转换为 0、仅使用绿色信号等)。
  • Focal Loss(焦点损失)。
  • pos-weight 参数大于 1.0 的 BCEWithLogitsLoss。
  • 标签平滑。
  • 伪硬标签(0/1)。
  • 对于第一阶段,一次使用 >=4 个细胞切片。
  • MLSKF(非分组)。
  • 模型:ResNet200D, SEResNeXt101。
  • 细胞系分类模型。

我没尝试过的方法

  • RGBY。
  • 细胞切片:大于 256x256,uint16 格式。
  • 其他分割模型(目标检测)。
  • 其他数据增强(mixup、亮度修改、cutout 等)。

结语

我非常享受这次比赛,因为任务本身既有趣又充满挑战,而且只有少数公开的 Kernel 是简单的集成或 Fork,让我有机会与顶尖的 Kagglers 同台竞技。
感谢阅读 :)

同比赛其他方案