Klassificering: särdragskonstruktion

Öva på maskininlärningsintervjufrågor i Python

Lisa Stuart

Data Scientist

Särdragskonstruktion – varför?

  • Utvinner ytterligare information ur data
  • Skapar nya relevanta särdrag
  • Ett av de mest effektiva sätten att förbättra prediktiva modeller
Öva på maskininlärningsintervjufrågor i Python

Fördelar med särdragskonstruktion

  • Ökar inlärningsalgoritmens prediktiva förmåga
  • Får dina maskininlärningsmodeller att prestera ännu bättre!
Öva på maskininlärningsintervjufrågor i Python

Typer av särdragskonstruktion

  • Indikatorvariabler
  • Interaktionssärdrag
  • Särdragsrepresentation
Öva på maskininlärningsintervjufrågor i Python

Indikatorvariabler

  • Tröskelindikator
    • ålder: gymnasium vs. högskola
  • Flera särdrag
    • används som flagga
  • Speciella händelser
    • black Friday
    • jul
  • Grupper av klasser
    • flagga för betald webbtrafik
      • Google adwords{4}}
      • Facebook ads
Öva på maskininlärningsintervjufrågor i Python

Interaktionssärdrag

  • Summa
  • Differens
  • Produkt
  • Kvot
  • Andra matematiska kombinationer
Öva på maskininlärningsintervjufrågor i Python

Särdragsrepresentation

  • Tidsstämplar
    • Veckodag
    • Timme på dygnet
  • Gruppera kategorinivåer till "Övrigt"
  • Omvandla kategorier till dummyvariabler
    • (k - 1) binära kolumner
Öva på maskininlärningsintervjufrågor i Python

Olika kategorinivåer

  • Träningsdata:
    • modell tränad med [red, blue, green]
  • Testdata:

    • modell testad med [red, green, yellow]
    • ytterligare färg som inte finns i träningsdata
    • en färg saknas
  • Robust one-hot encoding

1 https://blog.cambridgespark.com/robust-one-hot-encoding-in-python-3e29bfcec77e
Öva på maskininlärningsintervjufrågor i Python

Skuld i förhållande till inkomst

  • Monthly Debt
  • Annual Income/12
Öva på maskininlärningsintervjufrågor i Python

Funktioner för särdragskonstruktion

Funktion returnerar
sklearn.linear_model.LogisticRegression logistisk regression
sklearn.model_selection.train_test_split funktion för tränings-/testdelning
sns.countplot(x='Loan Status', data=data) stapeldiagram
df.drop(['Feature 1', 'Feature 2'], axis=1) tar bort lista med särdrag
df["Loan Status"].replace({'Paid': 0, 'Not Paid': 1}) Loan Status som heltal
pd.get_dummies() k - 1 binära särdrag
sklearn.metrics.accuracy_score(y_test, predict(X_test)) modellens noggrannhet
Öva på maskininlärningsintervjufrågor i Python

En utmärkt handledning:

Öva på maskininlärningsintervjufrågor i Python

Nu kör vi en övning!

Öva på maskininlärningsintervjufrågor i Python

Preparing Video For Download...