🦁

2022年の画像分類コンペティションに参加した時のまとめ

2025/03/04に公開

はじめに

2022年の画像分類コンペティションは、医療画像解析から生物多様性の識別まで、多岐にわたる分野でコンピュータビジョンの限界を押し広げました。これらのコンペでは、限られたデータや高次元の画像データを用いて、極めて微妙な視覚的違いを識別するモデルの開発が求められました。上位チームは、データ拡張、強力なモデルアーキテクチャ、巧妙なトレーニング手法を活用し、高精度の分類を実現しました。また、複数のGPUを活用した分散学習(PyTorch Distributed) を駆使することで、大規模データの高速処理とモデルの大規模学習を可能にしました。

本記事では、2022年に開催された代表的なコンペをいくつか取り上げ、その詳細(主催者、データセット、評価指標など)、高精度を達成するために使用された技術、分散機械学習環境の活用方法、そして各コンペティションを通じて得られた知見や課題を詳しく解説します。


コンペティション①:Mayo Clinic STRIP AI(脳梗塞血栓の起源分類)

概要

「Mayo Clinic STRIP AI」コンペは、Mayo Clinic によってKaggleで開催され、脳梗塞を引き起こした血栓の起源(CE:心原性血栓 vs LAA:動脈硬化性血栓)を分類 する課題でした。

  • データセット:超高解像度の病理組織スライド画像(ギガピクセル級)。
  • 課題の難易度:わずか約750枚のトレーニング画像(約630名の患者から収集)。
  • 評価指標マルチクラスのロジスティックロス(クラスバランス補正付き)
  • 主要課題:クラス間のデータ数に偏りがあり(CEがLAAより多い)、また、限られたデータ量で学習する必要がある。

高精度を達成するための手法

データが少なく、画像サイズが巨大であるため、上位チームは Multiple Instance Learning (MIL) 手法 を採用しました。

  1. スライド画像をタイル分割し、小さなパッチ(例えば256×256ピクセル)に変換。
  2. 各パッチにラベルを継承(ただし、多くのパッチは背景情報しか持たない)。
  3. CNNモデル(EfficientNetやResNet)を パッチ単位で学習し、
  4. 注意機構を用いたプーリング(Attention-based Pooling) を適用し、スライド全体の予測を統合。

その他の工夫:

  • 画像のデータ拡張(回転・反転・カラー補正・染色正規化) を活用し、データの多様性を増強。
  • クラス不均衡問題を解決するため、LAAクラスのオーバーサンプリングクラスバランス調整ロス を導入。
  • Ensemble手法(複数モデルのアンサンブル)を活用し、精度向上を図る。

分散学習環境の活用

PyTorch Distributed Data Parallel(DDP) を用いて、複数GPU上での並列学習を実施。

  • 4枚のGPU に分散してタイルパッチを並列処理し、学習時間を大幅に短縮。
  • 混合精度学習(FP16) により、メモリ使用量を削減しながら学習速度を向上。
  • 大規模モデルの並列推論 も実施し、推論速度の最適化を図る。

このように、PyTorchの分散学習環境を活用することで、ギガピクセル画像の効率的な処理が可能となり、実験回数を増やすことで高精度化が実現されました。

知見と課題

  • 画像内の特徴が極めて微妙 であり、人間の専門家でも識別が難しい場合がある。
  • データのバイアスが影響 し、一部のクラスに偏った学習が発生。
  • データ前処理が極めて重要(組織マスキング・背景除去など)。

このコンペは、AIを用いた病理診断の可能性と限界を示す ものとなりました。


コンペティション②:Happywhale – クジラ・イルカ個体識別(Kaggle)

概要

Happywhaleプロジェクトによる本コンペでは、クジラやイルカの画像から 個体を識別する 課題に挑戦しました。

  • データセット50,000枚以上の画像(15,000以上の個体、30種のクジラ・イルカを含む)。
  • 評価指標Mean Average Precision @ 5 (MAP@5)
  • 課題の特異性:新規個体(未学習の個体)がテストセットに含まれる。

高精度を達成するための手法

  • ArcFace(角度マージン損失) を採用し、個体識別の埋め込みベクトルを最適化。
  • EfficientNetV2・ConvNeXt などの高性能CNNをバックボーンに使用。
  • kNNによる埋め込み空間の補正 を実施し、「未学習個体」の識別精度を向上。

分散学習環境の活用

  • PyTorch Lightning + DDP により、4~8枚のGPUを活用した高速学習。
  • Optunaによるハイパーパラメータ最適化 を分散環境で実施。

知見と課題

  • 顔認識技術の動物識別への応用 の成功事例。
  • データ拡張(bounding box mixなど) により識別精度が向上。
  • 新規個体識別が難しい(適応型閾値設定が必要)。

まとめ:2022年の画像分類コンペが示したもの

  • 高精度を実現するには、最新のモデルと巧妙なデータ処理が不可欠
  • 分散学習が実験速度とモデル性能向上に直結
  • AIの活用分野が広がり、医療・環境保護・生物識別へ応用が進む

2023年以降のコンペに参加する方は、最新のモデル選定・強力なデータ拡張・分散学習環境の活用 を意識することが、勝利への鍵となるでしょう。

Discussion