はじめに
3年ほど前に、「Kaggleのハードルを下げたい!」という記事を執筆しました。あの頃から時は流れ、強力なAIエージェント(Claude Code、Codex、Cursorなど)の普及によって、Kaggleに取り組む最初のステップは劇的に様変わりしています。
環境構築でつまずいたり、データの読み込みエラーと格闘したりする時間はかなり少なくなりました。この記事では、簡単な事前準備をした後に、AIエージェントに貼り付けるだけで、サクッとベースラインが作れるプロンプトを紹介し、その意図を解説します。
この記事で紹介すること
- 簡単な事前準備の方法
- コピペで動くベースライン作成プロンプト
- プロンプトの各ステップの意図の解説
この記事で紹介しないこと
- 自動でメダルを獲得できるプロンプト
序盤で一時的にメダル圏内に到達することはあれど、メダル獲得(特に金メダル)は、AIエージェントに完全に丸投げして取れるものではありません。ほとんどの参加者が気づいていないことの発見など、一定以上の努力が不可欠です。
参考記事:
事前準備
AIエージェントに指示を出す前に、事前準備を済ませておく必要があります。
①目的のコンペの参加ボタンを押す
ルールに同意していないとAPI経由でデータをダウンロードできません。
参考:現在開催中のメダル付きコンペ一覧(終了が近い順)
②Kaggle APIトークンを発行する
アカウント設定画面から kaggle.json を発行し、所定のディレクトリ(~/.kaggle/など)に配置します。
参考:Kaggle API ドキュメント
③AIエージェントをインストールする
Claude Code、Codex、Cursorなど、お好みのAIエージェントを準備してください。
💡 準備ができたか確認するTips
①〜③が正しく設定できているか不安な場合は、AIエージェントに「Kaggle APIを使って、現在開催中のコンペ一覧を教えてください」と聞いてみてください。正しく一覧が返ってくれば、エージェントはKaggleと通信できる状態になっています!
プロンプト
以下のテンプレートの【 】部分を埋めて、AIエージェントに貼り付けてください。
【コンペURL】には、https://www.kaggle.com/competitions/titanicのように、参加したいコンペのトップページのURLを入力してください。https://www.kaggle.com/competitions/以降(この場合はtitanic)はスラッグと呼ばれ、Kaggle CLIの引数となります。
【コンペ概要・データセット概要】には、コンペの概要・データセット概要をコピペしてください。
現在、Kaggleの【コンペURL】に参加しています。
以下の要件に従って、コンペティションの初期ベースライン構築から検証環境の確立までを行ってください。
# 前提・環境構築
- パッケージ管理および環境構築には `uv` を使用してください。
- ディスカッションの取得、データのダウンロード、Save & Commit、Submit(提出)などの操作には `Kaggle CLI` を使用してください。もしやり方がわからない場合はKaggle CLI Documentation(https://github.com/Kaggle/kaggle-cli/blob/main/docs/README.md)を確認してください。
# 実行ステップ
1. ベースラインの作成とSubmit確認
- まずは最もシンプルなベースラインモデルを作成し、実際に提出(Submit)が通るか(Submission Errorにならないか)を確認してください。
2. ローカル検証(CV)の確立と自律的改善
- 提出成功後、手元で信頼できるローカル検証(Cross Validation)の仕組みを構築してください。
- その後、自律的に特徴量エンジニアリングやモデルの改善を進め、CVスコアが改善されたタイミングで提出し、LBスコアを確認してください。
3. 実験管理と可視化
- 実験内容、CVスコア、LBスコアのログを正確に記録してください。
- CVとLBの相関を確認するためのプロット(散布図など)を作成し、実験ごとに更新してください。
4. コンペ理解のためのドキュメント化
- ユーザーがコンペの全体像を深く理解できるよう、コンペ概要、データの仕様、EDA結果、およびあなたが試したアプローチを、日本語のMarkdown形式で `docs/` ディレクトリ等に整理して保存してください。
# コンペ概要・データセット概要
【コンペ概要・データセット概要】
解説
なぜこのプロンプトになっているのか、意図を解説します。
① 環境構築に uv を指定
Pythonのパッケージ管理ツールとして非常に高速な uv を指定することで、エージェントがライブラリの依存関係解決やインストールでもたつくのを防ぎます。
② Kaggle CLI を明示
エージェントに「Kaggleからデータを取ってきて」とだけ伝えると、ブラウザを自動操作しようとしてスクレイピング対策に引っかかることがあります。Kaggle CLI を明示することで、安全かつ確実なAPI経由でのデータ取得や提出を促します。
③ 「まずはベースラインを作成し、提出が通るかを確認」
コンペによっては提出フォーマットが複雑だったり、推論時間制限が厳しかったりします。エージェントが数時間かけて高度なモデルを作ったのに「提出フォーマットエラーでやり直し」になる悲劇を防ぐため、まずは「最小構成でSubmitを通す」ことを最優先にしています。
④ 「CVの確立と、CV-LBプロットの作成」
Kaggleにおいてよくある落とし穴は、Public LBに過学習してしまうことです。エージェントが自律的に改善ループを回す際、手元のCVスコアを信頼できる状態にし、CVが改善されたのにLBが悪化するといった乖離を人間がチェックできるようにプロットを作成させます。
⑤ 「日本語でMarkdownとして保存」
AIエージェントに丸投げで参加するのはもったいないですし、人間側のアイデアを出しやすいように、ドキュメントをまとめさせています。
終わりに
最近ではポケカコンペをきっかけに、Kaggleに興味を持ってくれる方がぐっと増えたと感じています。
また、AIエージェントの登場により、環境構築ができない、最初の提出方法がわからない、といった参加へのハードルは大きく下がりました。まずは本記事のプロンプトを使って、どんどんKaggleに参加し、提出の喜びを体感してください。
そして、ベースラインを作った後に、AIエージェントだけではスコアが伸び悩む限界を身をもって実感していただき、Kaggle沼にどっぷりハマってもらえたら嬉しいです!
本記事は以上です。皆様の良いKaggleライフを応援しております。