Wybór funkcji, zwany także wyborem atrybutu lub redukcją funkcji, odnosi się do technik identyfikacji podzbioru cech zestawu danych, które są istotne dla danego problemu. Usuwając niepotrzebne i zbędne funkcje, udany wybór funkcji pozwala uniknąć przekleństw wymiarowości i poprawić wydajność, szybkość i interpretację kolejnych modeli. Wybór funkcji obejmuje metody ręczne (takie oparte na wiedzy w dziedzinie) i metody automatyczne. Metody automatyczne są często kategoryzowane według metod filtrowania, pakowania i osadzania.
Podejścia filtrujące dokonują wyboru funkcji jako osobnego kroku wstępnego przetwarzania przed algorytmem uczenia się. Podejścia filtrujące uwzględniają zatem tylko wewnętrzne właściwości danych. Metody filtrowania obejmują testy sumy rang Wilcoxona i testy oparte na korelacji. Podejście owijania wykorzystuje wydajność algorytmu uczenia się do wybierania funkcji. Algorytm wyszukiwania jest „owinięty” wokół algorytmu uczenia się, aby zapewnić odpowiednie przeszukiwanie przestrzeni podzbiorów cech. Jako takie, metody owijania mogą być postrzegane jako przeprowadzanie wyszukiwania hipotez modelu w ramach wyszukiwania podzbioru cech. Przykładami metod owijania są symulowane wyżarzanie i wyszukiwanie wiązki.
Podejścia osadzone obejmują wybór zmiennych jako część procesu szkolenia, przy czym istotność cech uzyskano analitycznie z celu modelu uczenia się. Metody osadzone można postrzegać jako wyszukiwanie w połączonej przestrzeni podzbiorów cech i hipotez. Przykładami metod osadzonych są przyspieszenie i rekurencyjna regresja kalenicy.
PYTANIA: Co to jest redukcja wymiarowości? Jaka jest różnica między wyborem funkcji a ekstrakcją?
Z Wikipedii,
redukcja wymiarów lub redukcja wymiarów to proces zmniejszania liczby rozważanych zmiennych losowych, który można podzielić na wybór cech i ekstrakcję cech.
Jaka jest różnica między wyborem funkcji a ekstrakcją funkcji? Jaki jest przykład zmniejszenia wymiarów w zadaniu przetwarzania języka naturalnego?
ODPOWIEDŹ:
Po prostu:
* wybór funkcji: wybierasz podzbiór oryginalnego zestawu funkcji; podczas
* ekstrakcja funkcji: tworzysz nowy zestaw funkcji z oryginalnego zestawu funkcji.
Przykłady ekstrakcji cech: ekstrakcja konturów na obrazach, ekstrakcja diagramów z tekstu, ekstrakcja fonemów z nagrania tekstu mówionego itp.
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.
Redukcja wymiarów polega zazwyczaj na wybraniu podstawy lub reprezentacji matematycznej, w ramach której można opisać większość, ale nie całą wariancję danych, zachowując w ten sposób odpowiednie informacje, jednocześnie zmniejszając ilość informacji niezbędnych do reprezentacji. Istnieje wiele technik wykonywania tego, w tym między innymi PCA, ICA i faktoryzacja macierzy. Wykorzystają one istniejące dane i zredukują je do najbardziej dyskryminujących elementów. Wybór funkcji to ręczne wybieranie cech, które są wysoce dyskryminujące. Ma to o wiele więcej wspólnego z inżynierią funkcji niż analizą i wymaga znacznie więcej pracy ze strony naukowca danych. Wymaga to zrozumienia, jakie aspekty zestawu danych są ważne w jakichkolwiek prognozach, a które nie. Wyodrębnianie elementów zwykle obejmuje generowanie nowych elementów, które są kompozytami istniejących elementów. Obie te techniki należą do kategorii inżynierii obiektów. Zasadniczo inżynieria funkcji jest ważna, jeśli chcesz uzyskać najlepsze wyniki, ponieważ obejmuje tworzenie informacji, które mogą nie istnieć w zbiorze danych, oraz zwiększenie stosunku sygnału do szumu.
Wybór funkcji odpowiedzi dotyczy wyboru podzbioru funkcji. Tak więc w NLP byłoby wybranie zestawu konkretnych słów (typowe w NLP jest to, że każde słowo reprezentuje cechę o wartości równej częstotliwości słowa lub innej wadze opartej na TF / IDF lub podobnej). Redukcja wymiarów polega na wprowadzeniu nowej przestrzeni elementów, w której reprezentowane są elementy oryginalne. Nowa przestrzeń ma niższy wymiar niż pierwotna przestrzeń. W przypadku tekstu przykładem może być sztuczka haszująca, w której fragment tekstu jest redukowany do wektora kilku bitów (powiedzmy 16 lub 32) lub bajtów. Niesamowite jest to, że geometria przestrzeni jest zachowana (podana wystarczająca liczba bitów), więc względne odległości między dokumentami pozostają takie same jak w oryginalnej przestrzeni, dzięki czemu można wdrożyć standardowe techniki uczenia maszynowego bez konieczności radzenia sobie z nieograniczonymi (i ogromną liczbą) z) wymiarów znalezionych w tekście.
Czy scikit-learn ma algorytm selekcji do przodu / regresji krokowej?
Pracuję nad problemem ze zbyt wieloma funkcjami, a szkolenie moich modeli trwa zdecydowanie za długo. Zaimplementowałem algorytm wybierania do przodu, aby wybrać funkcje. Zastanawiałem się jednak, czy scikit-learn ma algorytm selekcji do przodu / regresji krokowej?
Nie, sklearn nie wydaje się mieć algorytmu selekcji do przodu. Jednak zapewnia rekurencyjną eliminację cech, która jest chciwym algorytmem eliminacji cech podobnym do sekwencyjnego wybierania wstecznego.