カテゴリ変数を数値化する方法は複数あり、選び方を間違えると精度が落ちたり、リークが起きたりします。
5 つのエンコーディング
| 手法 | 向くケース | 落とし穴 |
|---|---|---|
| One-Hot | カテゴリ数 < 10 | 高基数で次元爆発 |
| Label | 順序がある(小→中→大) | 順序ない場合に使うとモデルが誤解 |
| Target | 高基数 + ビジネス意味のあるラベル | リーク注意(CV 内で学習) |
| Frequency | 「人気度」が予測に効きそう | シンプルだが効くこと多し |
| Hashing | メモリ制約あり、未知カテゴリ多い | 衝突で精度低下 |
Target Encoding のリーク防止
Out-of-fold Encoding 必須
Target Encoding は訓練データのターゲットを学習に使うため、そのままだとテストデータに情報が漏れる。CV foldごとに再計算するか、`category_encoders` の `TargetEncoder(smoothing=...)` を使う。
ふくふくの進め方
パイプラインのエンコーディング設計、特徴量選定まで含めて 1〜2 週間でご相談承ります。
次回予告
EP.12 は数値特徴量のスケーリング。Standardize / MinMax / の使い分け。
この記事の感想を教えてください
あなたの 1 クリックで、本当にこの記事は更新されます。「もっと詳しく」「続編希望」が一定数集まった記事は、 ふくふくが 実際に内容を拡充したり続編記事を公開 します。 送信したリアクションはお使いのブラウザに記録され、再カウントされません。