1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで挑むKaggleコンペティション

Connected

演習

二値分類を超えて

もちろん、二値分類は特殊なケースのひとつにすぎません。ターゲットエンコーディングはあらゆる種類の目的変数に適用できます。

  • 二値分類 では、通常はターゲットの平均によるエンコーディングを用います
  • 回帰 では、平均の代わりに中央値や四分位点などを用いることができます
  • 多クラス分類 では、クラス数 N に対して、one-vs-all 方式で各カテゴリのターゲット平均を用いた特徴量を N 個作成します

あなたが作成した mean_target_encoding() 関数は、上記のどの目的変数タイプにも利用できます。今回は、Kaggle の House Prices コンペティションを例に、回帰問題に適用してみましょう。

目標は、カテゴリカル特徴量 "RoofStyle" を平均ターゲットエンコーディングで変換することです。train と test の各 DataFrame はワークスペースにすでに用意されています。

指示

100 XP
  • mean_target_encoding() の呼び出しで不足しているパラメータをすべて指定してください。目的変数名は "SalePrice"、ハイパーパラメータ \(\alpha\) は 10 に設定します。
  • train と test パラメータには、学習用とテスト用の各 DataFrame を渡すことを思い出してください。
  • target と categorical パラメータには、目的変数名とエンコード対象の特徴量名を指定します。