Classificatie: feature engineering

Machine Learning-sollicitatievragen oefenen in Python

Lisa Stuart

Data Scientist

Feature engineering... waarom?

  • Haalt extra informatie uit data
  • Maakt extra relevante features
  • Een van de effectiefste manieren om voorspellende modellen te verbeteren
Machine Learning-sollicitatievragen oefenen in Python

Voordelen van feature engineering

  • Hogere voorspellende kracht van het algoritme
  • Laat je machinelearningmodellen nog beter presteren!
Machine Learning-sollicitatievragen oefenen in Python

Soorten feature engineering

  • Indicatorvariabelen
  • Interactiekenmerken
  • Feature-representatie
Machine Learning-sollicitatievragen oefenen in Python

Indicatorvariabelen

  • Drempelindicator
    • leeftijd: middelbare school vs. universiteit
  • Meerdere features
    • gebruikt als vlag
  • Speciale events
    • Black Friday
    • Kerstmis
  • Groepen klassen
    • betaalde websiteverkeer-vlag
      • Google AdWords{4}}
      • Facebook Ads
Machine Learning-sollicitatievragen oefenen in Python

Interactiekenmerken

  • Som
  • Verschil
  • Product
  • Quotiënt
  • Andere wiskundige combinaties
Machine Learning-sollicitatievragen oefenen in Python

Feature-representatie

  • Datum-/tijdstempels
    • Weekdag
    • Uur van de dag
  • Categorieniveaus groeperen als 'Overig'
  • Categorisch naar dummyvariabelen
    • (k - 1) binaire kolommen
Machine Learning-sollicitatievragen oefenen in Python

Verschillende categorieniveaus

  • Trainingsdata:
    • model getraind met [red, blue, green]
  • Testdata:

    • model getest met [red, green, yellow]
    • extra kleur niet gezien bij training
    • één kleur ontbreekt
  • Robuuste one-hot-encoding

1 https://blog.cambridgespark.com/robust-one-hot-encoding-in-python-3e29bfcec77e
Machine Learning-sollicitatievragen oefenen in Python

Schuld-inkomensratio

  • Monthly Debt
  • Annual Income/12
Machine Learning-sollicitatievragen oefenen in Python

Feature-engineeringfuncties

Functie retourneert
sklearn.linear_model.LogisticRegression logistische regressie
sklearn.model_selection.train_test_split train/test-splitfunctie
sns.countplot(x='Loan Status', data=data) staafdiagram
df.drop(['Feature 1', 'Feature 2'], axis=1) verwijdert lijst met features
df["Loan Status"].replace({'Paid': 0, 'Not Paid': 1}) Loan Status als integers
pd.get_dummies() k - 1 binaire features
sklearn.metrics.accuracy_score(y_test, predict(X_test)) modelnauwkeurigheid
Machine Learning-sollicitatievragen oefenen in Python

Een uitstekend tutorial:

Machine Learning-sollicitatievragen oefenen in Python

Laten we oefenen!

Machine Learning-sollicitatievragen oefenen in Python

Preparing Video For Download...