Klasyfikacja: inżynieria cech

Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Lisa Stuart

Data Scientist

Inżynieria cech... po co?

  • Wyodrębnia dodatkowe informacje z danych
  • Tworzy nowe, istotne cechy
  • Jeden z najskuteczniejszych sposobów poprawy modeli predykcyjnych
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Zalety inżynierii cech

  • Zwiększona moc predykcyjna algorytmu uczącego
  • Pozwala uzyskać lepsze wyniki modeli uczenia maszynowego!
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Rodzaje inżynierii cech

  • Zmienne wskaźnikowe
  • Cechy interakcyjne
  • Reprezentacja cech
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Zmienne wskaźnikowe

  • Wskaźnik progowy
    • wiek: szkoła średnia vs. studia
  • Wiele cech
    • użyte jako flaga
  • Zdarzenia specjalne
    • Black Friday
    • Boże Narodzenie
  • Grupy klas
    • flaga płatnego ruchu na stronie
      • Google Adwords{4}}
      • Reklamy Facebook
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Cechy interakcyjne

  • Suma
  • Różnica
  • Iloczyn
  • Iloraz
  • Inne kombinacje matematyczne
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Reprezentacja cech

  • Znaczniki czasu
    • Dzień tygodnia
    • Godzina dnia
  • Grupowanie poziomów kategorycznych jako 'Other'
  • Przekształcanie zmiennych kategorycznych na zmienne dummy
    • (k - 1) kolumn binarnych
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Różne poziomy kategoryczne

  • Dane treningowe:
    • model wytrenowany na [red, blue, green]
  • Dane testowe:

    • model testowany na [red, green, yellow]
    • dodatkowy kolor nieobecny w treningu
    • brakujący kolor
  • Odporne kodowanie one-hot

1 https://blog.cambridgespark.com/robust-one-hot-encoding-in-python-3e29bfcec77e
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Wskaźnik zadłużenia do dochodu

  • Monthly Debt
  • Annual Income/12
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Funkcje do inżynierii cech

Funkcja zwraca
sklearn.linear_model.LogisticRegression regresję logistyczną
sklearn.model_selection.train_test_split funkcję podziału treningowo-testowego
sns.countplot(x='Loan Status', data=data) wykres słupkowy
df.drop(['Feature 1', 'Feature 2'], axis=1) usuwa listę cech
df["Loan Status"].replace({'Paid': 0, 'Not Paid': 1}) Loan Status jako liczby całkowite
pd.get_dummies() k - 1 cech binarnych
sklearn.metrics.accuracy_score(y_test, predict(X_test)) dokładność modelu
Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Doskonały samouczek:

Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Czas na praktykę!

Ćwiczenie pytań rekrutacyjnych z uczenia maszynowego w Pythonie

Preparing Video For Download...