Zakładam, że masz na myśli wybór funkcji jako inżynierii funkcji . Proces, który zwykle śledzę i widzę, że niektórzy to robią
- Inżynieria funkcji
Wypróbuj kilka algorytmów, zwykle wysoce wydajnych, takich jak RandomForest, Gradient Boosted Trees, Neutral Networks lub SVM.
2.1 Wykonaj proste dostrajanie parametrów, takie jak wyszukiwanie siatki na małym zakresie parametrów
Jeśli wynik kroku 2 nie jest zadowalający, wróć do kroku 1, aby wygenerować więcej funkcji lub usuń zbędne funkcje i zachowaj najlepsze, ludzie zwykle nazywają ten wybór funkcji . Jeśli brakuje Ci pomysłów na nowe funkcje, wypróbuj więcej algorytmów.
Jeśli wynik jest w porządku lub zbliżony do tego, co chcesz, przejdź do kroku 3
- Rozbudowane dostrajanie parametrów
Powodem tego jest to, że klasyfikacja polega na inżynierii funkcji i chyba, że znasz jakiś niesamowity potężny klasyfikator, taki jak głębokie uczenie się, dostosowane do konkretnego problemu, takiego jak Computer Vision. Kluczem jest generowanie dobrych funkcji. Wybór klasyfikatora jest ważny, ale nie kluczowy. Wszystkie wyżej wymienione klasyfikatory są dość porównywalne pod względem wydajności i przez większość czasu najlepszy klasyfikator okazuje się jednym z nich.
Strojenie parametrów może w niektórych przypadkach znacznie poprawić wydajność. Ale bez dobrych funkcji tuning niewiele pomaga. Pamiętaj, że zawsze masz czas na dostrajanie parametrów. Poza tym nie ma sensu dostrajać parametrów tak szeroko, że odkryjesz nową funkcję i przerobisz wszystko.