1. 학습
  2. /
  3. 강의
  4. /
  5. Pythonで挑むKaggleコンペティション

Connected

연습 문제

K-fold 交差検証

Kaggle の playground コンペティションから抽出したサンプルで、二値分類問題に取り組みます。このコンペの目的は、有名なバスケットボール選手 Kobe Bryant が特定のシュートを成功させたか(スコア)失敗したかを予測することです。

学習データは bryant_shots DataFrame としてワークスペースに用意されています。10,000 本のシュートの特徴量と、target 変数 "shot\_made\_flag"(シュートが入ったかどうか)が含まれています。

特徴量のひとつに "game_id"(そのシュートが行われた試合)があり、異なる試合は 541 通りあります。これは高カーディナリティのカテゴリ特徴量です。ここでは target mean エンコーディングを使ってエンコードしてみましょう!

5-fold 交差検証を使い、ローカル検証で mean target エンコードした特徴量を評価したいとします。

지침

100 XP
  • これを行うには、各フォールド分割ごとに、カテゴリ特徴量 "game_id" に対するエンコード手順を個別に繰り返す必要があります。目的は、各フォールド分割内で呼び出す mean_target_encoding() 関数の不足しているパラメータをすべて指定することです。
  • train と test パラメータには、それぞれ学習用と検証用の DataFrame を指定することを思い出してください。
  • 一方、target と categorical パラメータには、ターゲット変数名とエンコード対象のカテゴリ特徴量名を指定します。