10th place solution
皆さんお疲れさまでした。
私にとって、画像分類のコンペは初めてでしたが、E資格の課題が画像分類でしたので、その時に得た知識をフル動員して取り組みました。
また、上位の皆さんの様々な解法を拝見して、いろいろなことを学ばせていただきました。ありがとうございまいた。
あまり難しいことはできませんでしたが、これから機械学習などを始められる方のご参考になればと、私の取り組みも投稿させていただきます。
【全体像】
上位の方の見よう見まねで全体像の図を作ってみました。
描き方なども理解できていないので、わかりにくかったら申し訳ございません。
以下、それぞれの部分の実施内容です。
(1).データ拡張
データを読み込んで、E資格の課題のときに大活躍したデータ拡張をいろんなモデルに、それぞれの割合をハイパーパラメータとして最大になる値を探索しました。
データ拡張は、HorizontalFlip,RandomContrast,RandomBrightness,Blur,Cutoutの6種類を使いました。
また、モデルはResNet18,34,101,WideResNet50,DenseNet121,VGG11,13,16の8種類を使いました。
(2).1層目の学習
(1)で探索した割合のデータ拡張を施した入力を使って1層目の学習を実施しました。
1層目の学習はStratifiedKFoldを使って、5Foldのクロスバリデーションを行いました。
今回は、各Fold毎に最も精度が良くなるモデルを保存するように工夫してみました。
(3).1層目の出力(2層目の入力を作成)
(2)で学習させた精度の良い各モデルの出力を2層目への入力として作成しました。
4.1層目の出力に係数をかけてLightGBMに入力
2層目は、LightGBMを使ってみました。
入力は、1層目の出力に対して、0.0~1.0の係数をかけて、精度が最大となる係数をOptunaにて探索しました。
5.上記までのモデルを3パターン作って平均をとる
最終的には、上記までのモデルを3パターン作って、平均したものを提出しました。
結果
最終結果としては、提出回数98回、ベストスコア:0.899でした。
E資格の課題で、画像分類を実施していたので、その時の経験をフルに活用でき、満足のいく結果でした。
ただ、逆にいうとE資格の課題に取り組んだ際に学んだ知識しかなかったので、いろいろな方々の解法を参考にして、もっと精進していきたいと思います。
今後もいろいろなコンペに参加して、技術を磨いていきたいと思います。
参考までにブログにも投稿しておりますので、ご参照ください。
>>ProbSpace浮世絵作者予測コンペ振り返り