Quetzall AI Lab ヒーローヘッダー

Quetzall AI Lab

【Kaggle】 RSNA 2023 Abdominal Trauma Detection

thumbnail_img

kaggleのコンペ「RSNA 2023 Abdominal Trauma Detection」に参加したので、その提出Notebookの記録です。始めてのコンペ参加であったため、上級者のNotebook[1]をフォーク・修正して取り組んでいました。

目次

  1. コンペのルール
  2. 結果順位
  3. 作成したモデルについて
  4. 振り返り
    1. できた事
    2. 反省点
  5. 参考

1. コンペのルール

まず、今回参加したコンペのルールが以下となります。

  • Notebookでの推論にかかる時間(CPU・GPUの実行時間)が9時間以内であること
  • オフライン環境でNotebookがデータセット元に推論できること*ただし、事前に学習したモデルを使用して推論を行うことは可能(=学習と推論を別々に分けることができる)
  • 提出するCSVファイル名は『submission.csv』とすること

2. 結果順位

初めて参加したコンペは 848位 / 1125チーム でした。手も足も出ませんでした。スコアは0.78808で位置的には上位どころか、団子の位置ですらない後方でした。以下のヒストグラムでオレンジ色の位置となります。次回は団子の位置まで登りたいです。

histgram of score

3. 作成したモデルについて

フォーク元のNotebookが詳しいコメント付きだったので、本記事内でのコードについて詳細な説明は省略します。 CODE を参照ください。
モデルについて簡単に説明すると、入力されたCT画像(png形式)を元に以下臓器の疾病の確率を出力(予測)するものとなります。EfficientNetを使いました。

  • 肝臓
  • 腎臓
  • 脾臓
  • 血管

4. 振り返り

i. 出来たこと

  • 約2ヶ月間を通しでコンペに参加できた
  • KaggleでGPUとTPUを使うことができた
  • import ライブラリをローカルに落として、Notebookへ上げ直すことができた
  • オフラインでNotebookをSubmissionできた

ii. 反省点

  • 訓練と推論で別々にNotebookを作らない、頭の悪いやり方をしていたので、効率が悪かった
    ↳次のコンペまでに、late submission で試しておく
  • 検証のdatasetの1名の患者データで複数のCT画像がある場合に、全ての画像を読み込むことを実装できず、1枚だけを代表して確率を吐き出す仕様しかできなかった(In[*]の#get_seriesと#get_imgの[0]の部分)
    ↳スコアに大きく影響する部分なので、序盤で確認し、実装できるようにしておく
  • 最後までフォークしたNotebookをいじって終わり、圧倒的に実装力不足だった
    ↳コンペに積極的に参加し、力をつける
  • EffiecientNetをコンペ終了まで理解できなかった
    ↳kaggleのDiscussionを読む時間を増やして、深層学習の知識を増強する

コメント・お問合せ

以下のツイートの『返信』にてお願いいたします