Regression: särdragsurval

Öva på maskininlärningsintervjufrågor i Python

Lisa Stuart

Data Scientist

Att välja rätt särdrag:

  • Minskar överanpassning
  • Förbättrar noggrannheten
  • Ökar tolkbarheten
  • Minskar träningstiden

Feature Selection Steps

1 https://www.analyticsindiamag.com/what-are-feature-selection-techniques-in-machine-learning/
Öva på maskininlärningsintervjufrågor i Python

Metoder för särdragsurval

  • Filter: Rangordna särdrag utifrån statistisk prestanda
  • Wrapper: Använd en ML-metod för att utvärdera prestanda
  • Inbyggd: Iterativ modellträning för att extrahera särdrag
  • Särdragsvikt: trädbaserade ML-modeller
Öva på maskininlärningsintervjufrågor i Python

Jämförelse av metoder

Metod Använder ML-modell Väljer bästa delmängd Kan överanpassa
Filter Nej Nej Nej
Wrapper Ja Ja Ibland
Inbyggd Ja Ja Ja
Särdragsvikt Ja Ja Ja
Öva på maskininlärningsintervjufrågor i Python

Statistiska test för korrelationskoefficient

Särdrag/Respons Kontinuerlig Kategorisk
Kontinuerlig Pearsons korrelation LDA
Kategorisk ANOVA Chi-kvadrat
Öva på maskininlärningsintervjufrågor i Python

Filterfunktioner

Funktion returnerar
df.corr() Pearsons korrelationsmatris
sns.heatmap(corr_object) värmekarta
abs() absolutvärde
Öva på maskininlärningsintervjufrågor i Python

Wrapper-metoder

  1. Framåtselektion (LARS – minsta vinkelregression)
    • Börjar utan särdrag, lägger till ett i taget
  2. Bakåtelimination
    • Börjar med alla särdrag, tar bort ett i taget
  3. Kombination av framåtselektion och bakåtelimination (dubbelriktad elimination)
  4. Rekursiv särdragseliminering
    • RFECV
Öva på maskininlärningsintervjufrågor i Python

Inbyggda metoder

  1. Lasso Regression
  2. Ridge Regression
  3. ElasticNet

Lasso, Ridge, and ElasticNet

Öva på maskininlärningsintervjufrågor i Python

Trädbaserade metoder för särdragsvikt

  • Random Forest --> sklearn.ensemble.RandomForestRegressor
  • Extra Trees --> sklearn.ensemble.ExtraTreesRegressor
  • Efter modellträning --> tree_mod.feature_importances_
Öva på maskininlärningsintervjufrågor i Python
Funktion returnerar
sklearn.svm.SVR stödvektorregressionsestimator
sklearn.feature_selection.RFECV rekursiv särdragseliminering med korsvalidering
rfe_mod.support_ boolesk array med valda särdrag
ref_mod.ranking_ särdragsrankning, vald=1
sklearn.linear_model.LinearRegression linjär modellestimator
sklearn.linear_model.LarsCV minsta vinkelregression med korsvalidering
LarsCV.score r-kvadratpoäng
LarsCV.alpha_ skattad regulariseringsparameter
Öva på maskininlärningsintervjufrågor i Python

Nu kör vi en övning!

Öva på maskininlärningsintervjufrågor i Python

Preparing Video For Download...