はじめに

本記事は、JOAI 2025 で提出された複数の上位解法資料を俯瞰し、「多くの参加者に共通して見られた工夫」を整理することを目的としています。
個々の細かいハイパーパラメータの調整等よりも、勝ち筋になりやすかった工夫に焦点を当てて解説します。

※ JOAI2025本番と同様の形式で、Playground 用コンペティションページ [Playground] JOAI Competition 2025 が公開されています
初心者向けのチュートリアルコードを公開しています。これを元にした、チュートリアル講座の録画も公開されています。


1. 問題設定のおさらい

各サンプルには以下が与えられ、ガス状態を 4 クラス(NoGas / Perfume / Smoke / Mixture)に分類します。

  • センサ数値:MQ5, MQ8
  • 赤外線画像:サーモグラフィー画像
  • テキスト:画像キャプション(温度・色・位置等の定型表現を含みやすい)

評価はF1 スコアです。したがって、「当てやすいクラスだけを強くする」だけではなく、難しいクラスの取りこぼしを減らすのもスコアに効きやすい設計になっています。


2. 全体戦略

2.1 手元のスコアを信じるための工夫

Cross Validation (CV) を行う際に、Stratified K-Fold という分割方法によって、4クラスが均等になるようにデータを分割するケースが見られました。
このような手法を用いることで、ローカルでの評価を信頼できるものにすることができます。

2.2 利用されたモデルとパイプライン

上位でも以下のように様々なモデルが見られました:

  • 画像のみを ResNet, ViT で学習・予測
  • 各モダリティをテーブル特徴量に変換してLightGBMなどのモデルで学習・予測
  • 単一のマルチモーダル深層モデルで全モダリティを扱えるようにして学習・予測

最終的に上記で作成された予測結果をアンサンブル・スタッキングしている解法がほとんどでした:

  • 各モデルの出力確率の平均・重み付き平均を取る
  • LightGBM等のメタモデルでスタッキング

2.3 上位解法に共通していたこと

センサ(MQ5/MQ8)・画像・キャプションの情報それぞれが重要なので、上位に入った人は何かしら複数のモダリティを組み合わせて最終的な予測をしていました。
また、上位のスコア争いが激しいのもあり、何かしらのアンサンブル・スタッキング手法を利用している方がほとんどでした。


3. モダリティ別の工夫

3.1 テーブル(センサ:MQ5/MQ8)

特徴量として重要な情報であったため、ほとんどの解法でこれらを用いていました。
扱いやすさの観点から多くの解法で、他のモダリティから得られた情報とともに LightGBM, XGBoost, CatBoostやなどの勾配ブースティングと呼ばれるモデルに入力していました。他にも、単一のマルチモーダル深層モデルで他のモダリティの情報と同時に学習・推論を行う解法も見られました。

その他、特徴量エンジニアリングとして、加工した以下の特徴量を入力しているケースもありました:

  • 生値:MQ5, MQ8
  • 相互作用:sum / diff / ratio / product / log-ratio
  • ビニング:quantile bucket(例:qcut でカテゴリ化)

3.2 テキスト(キャプション)

キャプション情報には、温度範囲・色・位置・座標などが含まれます。
上位提出で頻出だったのは、次のいずれかです。

パターンA:正規表現で抽出(温度・色・座標)

  • 温度(min/max/diff)を抽出し、℃/℉を統一して数値化
  • 色名の出現(has_red等)や色数(color_count)
  • 座標(coordinates)の有無・値(ただし後述の通り扱い注意)

このは計算資源をあまり使わず安定して効きやすく、LightGBMなどのモデルにテーブルデータとして追加することが容易でした。特に 「温度」は頻出の特徴でした。

パターンB:DeBERTa / RoBERTaから得られた埋め込み表現の抽出

DeBERTa / RoBERTa 等の最終層から得られる埋め込み表現をLightGBMや、マルチモーダル深層学習モデルに入力しているケースが多く見られました。

3.3 画像(赤外線)

以下のような解法が見られました:

  • ResNet, Vit などの画像モデルを fine-tuning して学習・予測
  • ResNet, CLIP などで抽出した埋め込み表現や、温度変換処理を施してから計算した統計情報をテーブルデータとしてLightGBMなどに入力

画像データをテーブルデータに変換する際には、温度変換→平均化して4x4に整形をすることにして、特徴量を圧縮するような工夫も見られました。


4. その他工夫

  • 単一マルチモーダル深層学習モデルを利用するに、言語で画像を条件付けして変調するFiLM というLayerを利用して性能を上げる工夫も見られました。
  • テキストに ℃が含まれ、かつ℉が含まれないものは NoGas か Perfume とルールベースで後処理
  • CLIPを用いて計算した画像と caption の類似度を特徴量にするケースもありました

おわりに

作問時には、テーブル・画像・テキストの情報を複数組み合わせるような解法が上位に来るように設計しました。意図通りに上位解法のほとんどでは、それらの情報をすべて利用するようなものが多かったですが、想定以上にレベルが高い戦いになりました。

JOAI2025の復習や、今後のJOAIコンペの対策としてお役立ていただければ幸いです。JOAIの対策に関しては 「人工知能オリンピック (IOAI/JOAI) の対策と勉強法」も参照ください。