Wykonuję regresję przy użyciu Losowych lasów do przewidywania cen na podstawie kilku atrybutów. Kod jest napisany w Pythonie przy użyciu Scikit-learn.
Jak zdecydować, czy należy przekształcić zmienne za pomocą exp
/ log
przed użyciem, aby dopasować je do modelu regresji? Czy jest to konieczne, gdy stosuje się podejście Ensemble, takie jak Losowy Las?
Odpowiedzi:
Sposób, w jaki budowane są losowe lasy, jest niezmienny dla monotonicznych przekształceń zmiennych niezależnych. Podziały będą całkowicie analogiczne. Jeśli dążysz do dokładności, nie zauważysz żadnej poprawy. W rzeczywistości, ponieważ Lasy Losowe są w stanie znaleźć złożone relacje nieliniowe (dlaczego nazywasz to regresją liniową?) I interakcje zmiennych w locie, jeśli przekształcisz zmienne niezależne, możesz wygładzić informacje, które pozwalają temu algorytmowi to poprawnie.
Czasami losowe lasy nie są traktowane jako czarna skrzynka i wykorzystywane do wnioskowania. Na przykład możesz zinterpretować miary ważności zmiennej lub obliczyć pewien marginalny wpływ zmiennej niezależnej na zmienną zależną. Zazwyczaj jest to wizualizowane jako wykresy częściowej zależności. Jestem pewien, że na tę ostatnią rzecz ma duży wpływ skala zmiennych, co stanowi problem przy próbie uzyskania informacji o bardziej opisowym charakterze z Losowych Lasów. W takim przypadku może pomóc ci transformacja zmiennych (standaryzacja), co może sprawić, że wykresy zależności częściowych będą porównywalne. Nie do końca pewny, będzie musiał się nad tym zastanowić.
Nie tak dawno temu próbowałem przewidzieć dane zliczania za pomocą Losowego Lasu, cofanie się do pierwiastka kwadratowego i log naturalny zmiennej zależnej pomogło trochę, niewiele i niewystarczająco, aby pozwolić mi zachować model.
Niektóre pakiety, w których do wnioskowania można użyć losowych lasów:
https://uc-r.github.io/lime
https://cran.r-project.org/web/packages/randomForestExplainer/index.html
https://pbiecek.github.io/DALEX_docs/2-2-useCaseApartmetns.html
źródło
Echoing @JEquihua, dokładność prognoz losowego lasu nie ulegnie poprawie.
Pamiętaj również, że jeśli zachowujesz zarówno predyktor pierwotny, jak i predyktor przekształcony (jak to często się dzieje w regresji liniowej), możesz powodować problemy. Dzieje się tak, ponieważ RF losowo wybiera podzbiór zmiennych, aby wyhodować każde drzewo, a w zasadzie umieściłeś transformowaną zmienną dwukrotnie. Jeśli jest to silny predyktor, zostanie wykorzystany, a twoje losowe lasy nie będą tak nieskorelowane, jak mogłyby być, co prowadzi do większej wariancji.
źródło