Wygląda na to, że rozumiesz, że możesz mieć n
poziomy, w przeciwieństwie do n-1
, ponieważ w przeciwieństwie do regresji liniowej nie musisz martwić się o idealną kolinearność.
(Podchodzę do tego z perspektywy R., ale zakładam, że tak samo jest w Pythonie.) To zależy od kilku rzeczy, takich jak 1) jakiego pakietu używasz i 2) ile poziomów czynników masz.
1) Jeśli używasz randomForest
pakietu R , to jeśli masz <33 poziomy współczynników, możesz iść dalej i pozostawić je w jednej funkcji, jeśli chcesz. Jest tak, ponieważ w losowej implementacji lasu R sprawdzi, które poziomy czynników powinny znajdować się po jednej stronie podziału, a które po drugiej (np. 5 z twoich poziomów może być zgrupowanych po lewej stronie, a 7 może być zgrupowanych razem po prawej). Jeśli podzielisz funkcję kategorialną na n
manekiny, algorytm nie będzie miał do dyspozycji tej opcji.
Oczywiście, jeśli konkretny pakiet, którego używasz, nie obsługuje funkcji jakościowych, musisz po prostu utworzyć n
zmienne zastępcze.
2) Jak wspomniałem powyżej, losowa implementacja lasu R może obsłużyć tylko 32 poziomy czynników - jeśli masz ich więcej, musisz podzielić swoje czynniki na mniejsze podzbiory lub utworzyć zmienną zastępczą dla każdego poziomu.
randomForest
jakościowe są kodowane automatycznie, powinienem pójść zn
manekinami, ponieważ kolinearność nie jest problemem dla RF?