回归:正则化

用 Python 练习机器学习面试题

Lisa Stuart

Data Scientist

正则化算法

  • Ridge 回归
  • Lasso 回归
  • ElasticNet 回归
用 Python 练习机器学习面试题

最小二乘法(OLS)

OLS 图

OLS 公式

1 https://en.wikipedia.org/wiki/Linear_regression#Simple_and_multiple_linear_regression
用 Python 练习机器学习面试题

Ridge 损失函数

Ridge 回归图

Ridge 回归公式

1 https://gerardnico.com/data_mining/ridge_regression#tuning_parameter_math_lambdamath
用 Python 练习机器学习面试题

Lasso 损失函数

Lasso 回归图

Lasso 回归公式

1 https://stats.stackexchange.com/questions/155192/why-discrepancy-between-lasso-and-randomforest
用 Python 练习机器学习面试题

Ridge vs Lasso

正则化 L1(Lasso) L2(Ridge)
惩罚 系数绝对值之和 系数平方和
稀疏 非稀疏
解的数量 多个 唯一
特征选择
抗离群点?
拟合复杂模式?
用 Python 练习机器学习面试题

ElasticNet

ElasticNet 公式

用 Python 练习机器学习面试题

波士顿房价数据的正则化

特征 CHAS NOX RM
系数估计 2.7 -17.8 3.8
正则化后系数 0 0 0.95
用 Python 练习机器学习面试题

正则化函数

# 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)
用 Python 练习机器学习面试题

Passons à la pratique !

用 Python 练习机器学习面试题

Preparing Video For Download...