Kaggle の概要、初心者が最初に取り組むべきこと、定番の学習資料をまとめています。
Kaggle は、機械学習モデルの性能を競い合うデータサイエンスコンペティションのプラットフォームです。 企業や研究機関が提供する実データと課題に対し、世界中の参加者が予測精度を競います。 プラットフォーム側でユーザ管理、順位表、スコア計算の基盤が提供されているため、主催者は比較的手軽にコンペを開催でき、参加者も多くのコンペに挑戦しやすい利点があります。 データ分析の普及に伴い認知度が高まり、登録ユーザ数は 2000 万人を超えています。
Kaggle では常に複数のコンペが開催されています。 Kaggle 公式のコンペ一覧で確認できるほか、有志による X(旧 Twitter)の bot も活用できます。
各コンペには、メダルやランキングポイントの付与対象かどうかが設定されています。 付与対象のコンペほど多くの参加者が集まる傾向があります。
Kaggle では、ブラウザ上で Python や R を実行できる Code(Notebook)環境が提供されています。 主要な機械学習ライブラリがあらかじめ導入されており、必要に応じてライブラリを追加することも可能です。 週あたりの利用時間制限はあるものの、GPU や TPU も無料で利用できます。
Kaggle に参加するにあたって、次の知識があるとスムーズに進められます。 国際人工知能オリンピック(IOAI)では、参加者に期待する知識を理論と実践に分けてシラバス(日本語訳版)に整理しています。
すべてを事前に網羅する必要はありません。最低限の基本を押さえたら、実際のコンペへの参加を通じて不足した知識を補っていく進め方が適しています。
Titanic などのチュートリアルコンペを終えたあと、実践的なコンペへどう進むかが次の段階です。 以下の定番資料で、その後の進め方をつかめます。 体系的に学びたい場合は「書籍」、継続するための考え方は「心構え」を参照してください。
興味のあるデータ種別やコンペ形式が決まったら、対応する概念ページの「押さえどころ」と「入門・基礎」の資料から読み始めるのがおすすめです。各概念ページにその話題の定跡、技術動向、資料一覧が集約されています。コンペ形式そのものの歴史的な流れは「コンペ形式・技術動向の変遷」を参照してください。
データ種別によらず共通する土台(実験管理、環境構築、性能評価と検証)や、コード提出の制約(コードコンペティション)は、どのコンペに取り組む場合でも事前に確認しておくと役立ちます。学び続けるための心構えは「心構え」を参照してください。