收藏本站

人工智能培训机构,上海涛德,算法工程师,数据科学家高端培训机构-上海涛德

查看: 1577|回复: 0

机器学习中的正则化L1

[复制链接]

50

主题

0

好友

678

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-4-11 11:44:53 |显示全部楼层
作者:涛德顾问学院
机器学习算法中,我们往往会引入正则化 regularization 是通过对模型中的各参数加入惩罚项,避免模型的过拟合,提升模型的泛化能力。 正则化主要包括3中方法
L1 regularization ,也叫Lasso ,或者稀疏规则算子,索套回归
L2 regularization,也叫  Ridge,或者叫岭回归
L1/L2 regularization,也叫 Elastic net,或者叫弹性网络
这里我们来看一下L1正则化的作用
L1 Regularization
L1 regularization  通过在误差公式中加入 参数的绝对值的和来实现
. 114014pksibhzeouhiltzl.jpg
L1 regularization 最终会把某些参数或者权重惩罚成0,相当于设置某些特征的权重是0,因此 L1 回归也可以用于特征筛选。
我们用Kaggle的数据集  House Sales in King County, USA dataset ,预测房价的例子来学习L1,L2,L1/L2 正则化。为了更有效果,我们只用 0.5% 的数据来训练,然后对其他 99.5% 的数据做验证。这也提供一种小样本数据的模型训练方案。
我们将使用 glmnet 包来实现各种正则化,测试不同的的 lambda 值. 如下图横坐标lambda变大, 更多的因子权重归0.

可以看到特征是一个是随着lambda  越来越大逐渐被裁切掉,其中的测试误差变化如下图,可以看到在X轴中间lambda 值的位置,误差可以减小到最小,减少了过拟合,误差增大,表示模型在仅有少量特征的情况下学习能力显著下降。
您需要登录后才可以回帖 登录 | 立即注册

<点击:上海涛德Oracle OCM认证及BI商业智能课程>|人工智能培训-上海涛德 ( 沪ICP备14006824号 )|网站地图   My title page contents

GMT+8, 2018-9-26 09:57 , Processed in 0.186005 second(s), 26 queries , Gzip On.

回顶部