Regrese: regularizace

Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Lisa Stuart

Data Scientist

Algoritmy regularizace

  • Ridge regrese
  • Lasso regrese
  • ElasticNet regrese
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Metoda nejmenších čtverců

Graf OLS

Vzorec OLS

1 https://en.wikipedia.org/wiki/Linear_regression#Simple_and_multiple_linear_regression
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Ztrátová funkce Ridge

Graf Ridge regrese

Vzorec Ridge regrese

1 https://gerardnico.com/data_mining/ridge_regression#tuning_parameter_math_lambdamath
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Ztrátová funkce Lasso

Graf Lasso regrese

Vzorec Lasso regrese

1 https://stats.stackexchange.com/questions/155192/why-discrepancy-between-lasso-and-randomforest
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Ridge vs. Lasso

Regularizace L1 (Lasso) L2 (Ridge)
penalizuje součet absolutních hodnot koeficientů součet čtverců koeficientů
řešení řídká hustá
počet řešení více jedno
výběr příznaků ano ne
robustnost vůči odlehlým hodnotám? ano ne
složité vzory? ne ano
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

ElasticNet

Vzorec ElasticNet

Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Regularizace s daty Boston housing

Příznaky CHAS NOX RM
Odhady koeficientů 2.7 -17.8 3.8
Regularizované odhady koeficientů 0 0 0.95
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Funkce pro regularizaci

# Lasso estimator 
sklearn.linear_model.Lasso

# Lasso estimator with cross-validation
sklearn.linear_model.LassoCV

# Ridge estimator
sklearn.linear_model.Ridge

# Ridge estimator with cross-validation
sklearn.linear_model.RidgeCV

# ElasticNet estimator
sklearn.linear_model.ElasticNet
# ElasticNet estimator with cross-validation
sklearn.linear_model.ElasticNetCV

# Train/test split
sklearn.model_selection.train_test_split

# Mean squared error
sklearn.metrics.mean_squared_error(y_test, 
                           predict(X_test))
# Best regularization parameter
mod_cv.alpha_

# Array of log values
alphas=np.logspace(-6, 6, 13)
Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Pojďme cvičit!

Procvičování otázek k pohovorům z oblasti Machine Learning v Pythonu

Preparing Video For Download...