線形回帰とは異なり、完全な共線性について心配する必要がないためn
、とは対照的にn-1
、レベルを設定できることを理解しているようです。
(これはRの観点から来ていますが、Pythonでも同じだと思います。)それは、1)使用しているパッケージ、2)持っている因子レベルの数など、いくつかの要因によって異なります。
1)RのrandomForest
パッケージを使用している場合、33未満の因子レベルがあれば、必要に応じてそれらを1つの機能に残すことができます。これは、Rのランダムフォレスト実装では、分割の片側にある因子レベルと反対側にある因子レベルを確認するためです(たとえば、レベルの5つが左側にグループ化され、7つがグループ化される可能性があります)一緒に右側)。カテゴリ機能をn
ダミーに分割すると、アルゴリズムはこのオプションを自由に使用できなくなります。
明らかに、使用している特定のパッケージがカテゴリカル機能を処理できない場合は、n
ダミー変数を作成するだけで済みます。
2)上記で触れたように、Rのランダムフォレストの実装では32の因子レベルしか処理できません。それ以上の場合は、因子をより小さなサブセットに分割するか、各レベルにダミー変数を作成する必要があります。
randomForest
自動的にコード化されますが、n
コリニアリティはRFの問題ではないので、ダミーを使用する必要がありますか?