Rozumiem, że w uczeniu maszynowym może być problem, jeśli zestaw danych ma wysoce skorelowane funkcje, ponieważ skutecznie kodują te same informacje.
Ostatnio ktoś zauważył, że gdy wykonujesz kodowanie na gorąco na zmiennej kategorialnej, masz skorelowane cechy, więc powinieneś upuścić jedną z nich jako „odniesienie”.
Na przykład kodowanie płci jako dwóch zmiennych is_male
i is_female
daje dwie cechy, które są całkowicie ujemnie skorelowane, dlatego zasugerowano użycie jednej z nich, skutecznie ustawiając linię podstawową na powiedzenie „mężczyzna”, a następnie sprawdzając, czy kolumna is_female jest ważna w algorytmie predykcyjnym .
To miało dla mnie sens, ale nie znalazłem w Internecie niczego, co mogłoby sugerować, że tak jest, więc czy to źle, czy coś pomijam?
Możliwa (bez odpowiedzi) duplikat: czy kolinearność funkcji zakodowanych w trybie „single hot” ma znaczenie dla SVM i LogReg?
Does keeping all k values theoretically make them weaker features
. Nie (choć nie jestem w 100% pewien, co rozumiesz przez „słabszy”). using something like PCA
Zauważ, na wszelki wypadek, że PCA na zestawie manekinów reprezentujących tę samą zmienną kategorialną ma niewiele praktycznych zalet, ponieważ korelacje w zestawie manekinów odzwierciedlają jedynie relacje między częstotliwościami kategorii (więc jeśli wszystkie częstotliwości są równe, wszystkie korelacje są równe do 1 / (k-1)).
is_male
zmiennej, w przeciwieństwie do obu opcji? Może nie ma to sensu w tym kontekście i może to być problem tylko wtedy, gdy dwie różne zmienne faktycznie kodują tę samą informację (np. Wysokość w calach i wysokość w cm).
you end up with correlated features, so you should drop one of them as a "reference"
Zmienne manekina lub zmienne wskaźnikowe (są to dwie nazwy używane w statystykach, synonimiczne dla „kodowania na gorąco” w uczeniu maszynowym) i tak są skorelowane parami, niezależnie od tego, czy wszystkie są zmiennymi k lub k-1. Tak więc lepsze słowo to „statystycznie / zbędne” zamiast „skorelowane”.