当前位置:   article > 正文

特征工程之特征选择_l1正则化与特征选择

l1正则化与特征选择

一、为什么要做特征选择?

如果一个模型在训练数据上的表现比在测试数据上要好很多,这就表示这个模型过拟合了。过拟合是指模型的参数对于训练数据的特定观测值拟合的非常接近,而训练数据的分布于真实数据的分布并不一致,所以模型具有较高的方差。产生过拟合的原因是因为,对于训练数据集上的模型过于复杂,通常我们可以通过以下几种方式来降低过拟合:

1、收集更多的训练数据

2、通过正则化引入罚项

3、选择一个参数相对较少的简单模型

4、降低数据的维度

特征选择除了防止模型过拟合降低模型的泛化误差之外,它还可以减少硬件资源的损耗,降低模型的开发成本,减少训练的时间。下面我们会介绍通过正则化、随机森林算法进行特征选择。

二、使用L1正则化进行特征选择

常用的正则化有L1正则化和L2正则化,L1正则化和L2正则化都是为代价函数添加罚项,不同的是L1正则化增加的罚项是使用权重绝对值的和而L2正则化增加的罚项时权重的平方和。L1正则化生成的是一个稀疏的特征向量,且大多数的权值为0。如果数据集中包含了许多不相关的特征,尤其是不相关的特征数量大于样本的数量时,通过L1正则化处理之后能降低模型的复杂度。

  1. import pandas as pd
  2. from sklearn.linear_model import LogisticRegression
  3. from sklearn.model_selection import train_test_split
  4. from sklearn.preprocessing import StandardScaler
  5. if __name__ == "__main__":
  6. data = pd.read
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/179903
推荐阅读
相关标签
  

闽ICP备14008679号