Samouczki dotyczące inżynierii funkcji

19

Jak wiadomo wszystkim, inżynieria cech jest niezwykle ważna w uczeniu maszynowym, jednak znalazłem niewiele materiałów związanych z tym obszarem. Brałem udział w kilku konkursach w Kaggle i wierzę, że dobre cechy mogą być nawet ważniejsze niż dobry klasyfikator w niektórych przypadkach. Czy ktoś zna tutoriale na temat inżynierii funkcji, czy jest to czyste doświadczenie?

FindBoat
źródło
1
Czy masz na myśli wstępne przetwarzanie funkcji (normalizacja i inne przekształcenia) czy wybór funkcji?
MattBagg
2
@ mb3041023 Nie, krok przed nimi, w którym konwertujesz niektóre surowe dane, takie jak teksty, obrazy lub serie, na niektóre użyteczne atrybuty.
8
Z mojego doświadczenia wynika, że ​​ogromną częścią problemu uczenia maszynowego jest dosłownie ustawienie właściwego problemu do rozwiązania / optymalizacji (tj. Cechy, reprezentacja funkcji, wybór itp.). Chciałbym zobaczyć książkę poświęconą wyłącznie doborowi funkcji empirycznych i obróbce wstępnej z wieloma ilustracjami z życia codziennego (np. Kaggle). Jeśli ktoś wie o jednym, proszę. Poczta. Istnieje kilka książek poświęconych takim zagadnieniom, jak czyszczenie danych / przypisywanie danych, ale bardzo potrzebny jest dedykowany praktyczny tekst na temat wyboru funkcji.
pat
2
Spójrz na: „Wyodrębnianie funkcji: podstawy i aplikacje”, 2006
jasonb
2
@jasonb, jak o autora, wielkości, ceny i linkiem, coś takiego: Guyon ED, Feature Extraction. Podstawy i zastosowania 2006, 778p, $ 306
Denis

Odpowiedzi:

7

Powiedziałbym, że doświadczenie - podstawowe pomysły to:

  • dopasować sposób działania klasyfikatorów; nadawanie drzewa problemu z geometrią, zbyt duży wymiar w kNN i dane przedziału do SVM nie są dobrymi pomysłami
  • usunąć jak najwięcej nieliniowości; spodziewanie się, że jakiś klasyfikator dokona w nim analizy Fouriera, jest dość naiwne (nawet jeśli zmarnuje tam wiele komplikacji)
  • uczyń funkcje ogólnymi dla wszystkich obiektów, aby niektóre próbkowanie w łańcuchu ich nie znokautowało
  • sprawdź poprzednie prace - często transformacja używana do wizualizacji lub testowania podobnych typów danych jest już dostrojona, aby odkryć interesujące aspekty
  • unikaj niestabilnych, optymalizujących transformacji, takich jak PCA, które mogą prowadzić do przeregulowania
  • dużo eksperymentować

źródło
Jak definiujesz „dane przedziałowe”? Szukałem w Google i znalazłem wiele różnych definicji.
moc
czy możesz rozwinąć kwestię punktu PCA?
Daniel Velkov,
x|x-najbliższa liczba pierwsza|<0,3
@DanielVelkov Gdy ładujesz PCA na dość hałaśliwych danych, komponenty są często niestabilne; promuje to pomysł stworzenia jednego globalnego PCA w całym dostępnym zestawie, co przecieka informacje i jest prostym sposobem na zepsucie oceny.
@mbq co jeśli PCA jest uruchamiane tylko na zestawie treningowym, tak jak powinno być?
Daniel Velkov
1

Istnieje książka O'Reilly zatytułowana „ Feature Engineering for Machine Learning ” Zheng i in.

Czytam książkę i obejmuje ona różne rodzaje danych (np. Kategorialne, tekstowe ...) i opisuje różne aspekty związanej z nią inżynierii cech. Obejmuje to między innymi normalizację danych, wybór funkcji, tf-idf w tekście.

NumSim
źródło