Wyodrębnianie funkcji i wybór funkcji zasadniczo zmniejszają wymiarowość danych, ale ekstrakcja funkcji sprawia, że dane są bardziej rozdzielne, jeśli mam rację.
Która technika byłaby lepsza od drugiej i kiedy?
Myślałem, ponieważ ponieważ wybór funkcji nie modyfikuje oryginalnych danych i ich właściwości, zakładam, że użyjesz wyboru funkcji, gdy ważne jest, aby funkcje, których trenujesz, pozostały niezmienione. Ale nie mogę sobie wyobrazić, dlaczego miałbyś chcieć czegoś takiego…
Jak powiedziała Aditya, istnieją 3 terminy związane z funkcjami, które czasami są ze sobą mylone. Spróbuję udzielić podsumowania każdemu z nich:
Jeśli jedyną rzeczą, którą chcesz osiągnąć, jest zmniejszenie wymiarów w istniejącym zbiorze danych, możesz użyć metody transformacji lub wyboru funkcji. Ale jeśli musisz znać fizyczną interpretację funkcji, które określasz jako „ważne” lub próbujesz ograniczyć ilość danych, które należy zebrać do analizy (potrzebujesz całego początkowego zestawu funkcji do transformacji funkcji), wtedy tylko wybór funkcji może działać.
Więcej informacji na temat wyboru funkcji i redukcji wymiarów można znaleźć w następujących linkach:
Podsumowanie metod redukcji wymiarów
Klasyfikacja i wybór funkcji: przegląd
Odpowiednie pytania i odpowiedzi w przepełnieniu stosu
źródło
Myślę, że są to 2 różne rzeczy,
Zacznijmy od wyboru funkcji :
Technika ta służy do wybierania funkcji, które wyjaśniają najwięcej zmiennej docelowej (ma korelację ze zmienną docelową). Ten test jest przeprowadzany tuż przed zastosowaniem modelu do danych.
Aby to lepiej wyjaśnić, przejdźmy do przykładu: istnieje 10 cech i 1 zmienna docelowa, 9 cech wyjaśnia 90% zmiennej docelowej, a 10 cech razem wyjaśnia 91% zmiennej docelowej. Tak więc zmienna 1 nie robi dużej różnicy, więc starasz się ją usunąć przed modelowaniem (jest to również subiektywne dla biznesu). Mogę być również nazywany jako Znaczenie predyktora.
Teraz porozmawiajmy o wyodrębnianiu funkcji ,
Który jest wykorzystywany w uczeniu bez nadzoru, wydobywanie konturów na obrazach, wydobywanie bi-gramów z tekstu, wydobywanie fonemów z nagrywania mówionego tekstu. Jeśli nic nie wiesz o danych, np. Brak słownika danych, zbyt wiele funkcji, co oznacza, że dane nie są w zrozumiałym formacie. Następnie spróbuj zastosować tę technikę, aby uzyskać funkcje, które wyjaśniają większość danych. Wyodrębnianie cech obejmuje przekształcenie cech, które często nie jest odwracalne, ponieważ niektóre informacje są tracone w procesie zmniejszania wymiarów.
Możesz zastosować Wyodrębnianie cech dla danych danych, aby wyodrębnić cechy, a następnie zastosować Wybieranie cech w odniesieniu do zmiennej docelowej, aby wybrać podzbiór, który może pomóc w stworzeniu dobrego modelu z dobrymi wynikami.
możesz przejść przez te Link-1 , Link-2 dla lepszego zrozumienia.
możemy je zaimplementować w R, Python, SPSS.
daj mi znać, jeśli potrzebujesz dodatkowych wyjaśnień.
źródło
Oba są bardzo różne: Wybór operacji rzeczywiście zmniejsza wymiary, ale ekstrakcja operacji dodaje wymiary obliczane na podstawie innych operacji.
W przypadku danych z paneli lub szeregów czasowych zwykle ma się zmienną datetime i nie chce się trenować zmiennej zależnej w samej dacie, ponieważ nie pojawią się one w przyszłości. Więc powinieneś wyeliminować datetime: eliminację funkcji.
Z drugiej strony dzień tygodnia / weekend może być bardzo istotny, dlatego musimy obliczyć status dnia tygodnia na podstawie daty / godziny: wyodrębnienie funkcji.
źródło
Cytując: „Praktyczne uczenie się maszyn dzięki SciKit-Learn, Keras & Tensorflow - Aurelien Geron”
źródło